andrewyng/aisuite
Simple, unified interface to multiple Generative AI providers
解決する課題
aisuite は、複数の異なるプロバイダーの SDK を扱う手間を省くことで、大規模言語モデル (LLM) を用いた開発を簡素化するために設計された軽量な Python ライブラリです。さまざまな AI モデルとやり取りするための統一されたインターフェースと、ツールを使用できるエージェントを作成するための高レベルなフレームワークを提供します。
仕組み
このライブラリは、主に2つのレイヤーで構成されています。
- Chat Completions API: モデル文字列(例:
openai:gpt-4oからanthropic:claude-3-5-sonnet)を変更するだけで、プロバイダー(OpenAI、Anthropic、Google、Mistral、Ollama など)を切り替えられる、OpenAI スタイルの統一されたインターフェースです。これにより、異なるサービス間でのリクエストおよびレスポンスの構造が標準化されます。 - Agents API: チャット API の上に構築された、エージェント作成を可能にするレイヤーです。開発者はプレーンな Python 関数をツールとして渡すことができ、ライブラリが自動的にスキーマに変換して実行します。
max_turnsパラメータによるマルチターンループをサポートしており、ファイル、git、シェル用のプリセットツールキットも含まれています。
さらに、ボイラープレートコードなしで外部ツールを統合するための Model Context Protocol (MCP) もサポートしています。
対象者
ベンダーロックインを避け、統合コードを書き直すことなく、さまざまな LLM プロバイダーを簡単に試したい、AI アプリケーションやエージェントを構築する Python 開発者。
ハイライト
- 統一された API: OpenAI、Anthropic、Google、Mistral、Hugging Face、AWS、Cohere、Ollama、OpenRouter を含む幅広いプロバイダーに対応した単一のインターフェース。
- 自動ツール呼び出し: Python 関数を直接ツールに変換し、実行ループを自動的に管理します。
- エージェント・フレームワーク: 構造化された作業のための
Runner、セキュリティのためのツールポリシー(例:承認ポリシー)、会話を永続化するためのステートストアが含まれています。 - MCP サポート: ツール拡張を容易にするための Model Context Protocol とのネイティブ統合。
- 拡張性: シンプルなアダプターパターンを通じて、新しいプロバイダーを追加できます。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト