チャット、Responses、ストリーミング、バッチなどに対応した、OpenAI APIおよび多数のLLMプロバイダー向け非同期Scalaクライアント。
kennethreitz/simplemind
テキスト生成、構造化データ、会話に対応する、複数のAIプロバイダーAPIを統一されたシンプルなインターフェースで利用できるPythonクライアントライブラリ。
- スター
- 538
- フォーク
- 33
- 未解決の Issue
- 8
- 最終コミット
- 7 日前
これは何?
Simplemindは、大規模言語モデルのAPIを呼び出すためのPythonライブラリです。generate_text、generate_data、create_conversationなどの一貫した関数を備えており、Anthropic、OpenAI、Google Gemini、xAI、Groq、DeepSeek、Ollama、Amazon Bedrock、MiniMaxといったプロバイダーで同じように利用できます。llm_providerとllm_modelの引数を変更するだけで、モデルを切り替えられます。
通常のテキスト生成に加え、選択したモデルが構造化出力に対応していれば、Pydanticモデルとしてレスポンスを返せます。また、ストリーミングにも対応しています。会話ではメッセージ履歴が保持され、送信の前にフックを実行するプラグインで機能を拡張できます。ツールを使うと、モデルから通常のPython関数を呼び出せます。また、デコレーターを使えば、LLMでツールスキーマを自動生成できます。
このプロジェクトは、一般的な用途向けにLangChainやLangGraphなどのフレームワークより軽量な選択肢を目指しています。Sessionオブジェクトを使えば、プロバイダーとモデルのデフォルト設定を一度指定し、呼び出しごとに上書きできます。
主な機能
- 01Anthropic、OpenAI、Gemini、xAI、Groq、DeepSeek、Ollama、Bedrock、MiniMaxを統一されたAPIで利用
- 02generate_dataによるPydanticモデルへの構造化出力
- 03テキスト生成のストリーミング
- 04メッセージ履歴とプラグインフックに対応した複数ターンの会話
- 05Python関数を使った関数呼び出しと、デコレーターによるLLM生成のツールスキーマ
ユースケース
- 複数のLLMプロバイダーを比較・切り替える必要があるアプリのプロトタイピング
- テキストから構造化データを抽出し、型付きのPythonオブジェクトに変換
- 独自のPython関数をツールとして呼び出すチャットボットやアシスタントの構築
- シンプルなLLM呼び出しで、より重厚なLangChainベースの構成を置き換える
クイックスタート
- 1
すべての extras を含めてライブラリをインストールします
pip install 'simplemind[full]' - 2
プロバイダーの API キーを環境変数として設定します
export OPENAI_API_KEY="sk-..." - 3
Simplemind をインポートして使い始めます
使う前に知っておきたいこと
- ほとんどのプロバイダーでは API キーが必要で、多くは有料サービスです。
収録されている特集
トピック
よくある質問
- simplemind とは?
- テキスト生成、構造化データ、会話に対応する、複数のAIプロバイダーAPIを統一されたシンプルなインターフェースで利用できるPythonクライアントライブラリ。 Simplemindは、大規模言語モデルのAPIを呼び出すためのPythonライブラリです。generate_text、generate_data、create_conversationなどの一貫した関数を備えており、Anthropic、OpenAI、Google Gemini、xAI、Groq、DeepSeek、Ollama、Amazon Bedrock、MiniMaxといったプロバイダーで同じように利用できます。llm_providerとllm_modelの引数を変更するだけで、モデルを切り替えられます。
- simplemind は無料で使えますか?ライセンスは?
- simplemind は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- simplemind は今もメンテナンスされていますか?
- 活発にメンテナンス中。simplemind の最終コミットは 2026年10月30日 です。
- simplemind は何に使えますか?
- 複数のLLMプロバイダーを比較・切り替える必要があるアプリのプロトタイピング テキストから構造化データを抽出し、型付きのPythonオブジェクトに変換 独自のPython関数をツールとして呼び出すチャットボットやアシスタントの構築 シンプルなLLM呼び出しで、より重厚なLangChainベースの構成を置き換える
- simplemind のインストール方法は?
- すべての extras を含めてライブラリをインストールします: pip install 'simplemind[full]' プロバイダーの API キーを環境変数として設定します: export OPENAI_API_KEY="sk-..." Simplemind をインポートして使い始めます
- simplemind はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/kennethreitz/simplemind
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
エージェント、フロー、オプティマイザーを備えた、型付きの構造化LLMプログラムを構築するTypeScriptファーストのDSPy風フレームワーク。Python、Java、C++、Go、Rustにもコンパイル可能。
主要なLLMプロバイダーやUIフレームワークに対応した、ストリーミングチャット、ツール呼び出し、エージェント、マルチモーダルアプリ向けの型安全でプロバイダー非依存なTypeScript SDK。
永続メモリ、トレーシング、Webダッシュボードを備えたLLM搭載AIエージェントを構築・拡張・デプロイするLaravelパッケージ(開発終了、最終版はv0.0.48)。