jeremychone/rust-genai
Rust multiprovider generative AI client (Ollama, OpenAi, Anthropic, Gemini, DeepSeek, xAI/Grok, Groq,Cohere, ...)
何を解決するか
genai は、各サービスの公式 SDK を必要とせずに、複数の AI プロバイダー(OpenAI、Anthropic、Gemini、Ollama など)にアクセスするための、単一で人間工学に基づいた API を提供する Rust ライブラリです。各プロバイダー間でチャット補完、ビジョン、および関数呼び出しを標準化しつつ、開発者がより優れた機能サポートのためにネイティブプロトコルを使用できるようにします。
仕組み
このライブラリは、アダプターベースのアーキテクチャを使用して、共通の Rust API をさまざまな AI プロバイダーの特定のプロトコルにマッピングします。モデル名(例:OpenAI の gpt-、Anthropic の claude-)に基づいて使用するプロバイダーを自動的に解決するか、名前空間構文(例:groq::model-name)を使用して開発者が特定のアダプターを強制的に使用できるようにします。利用可能な場合はネイティブプロトコルをサポートし、それ以外の場合は OpenAI 互換 API にフォールバックします。
対象者
複数の異なる SDK を管理したり、単一のプロバイダーの API にロックインされたりすることなく、アプリケーションに複数の LLM プロバイダーを統合したい Rust 開発者。
ハイライト
- 広範なプロバイダーサポート: Ollama を介したローカル実行を含む、26 以上のプロバイダーをすぐに利用可能。
- ネイティブプロトコルの実装: 推論コントロールやストリーミングメタデータなどの機能をより良くサポートするために、SDK の代わりにネイティブプロトコルを使用。
- 柔軟なモデル解決: 自動的なモデルからアダプターへのマッピング、および特定のエンドポイントや認証のためのカスタムターゲットリゾルバーをサポート。
- マルチモーダル機能: OpenAI、Gemini、Anthropic などのプロバイダー向けの画像分析をサポート。
- 高度なコントロール: OpenAI および Anthropic 用のプロバイダー中立的なツール選択ヒントとプロンプトキャッシュコントロールを提供。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト