チャット、Responses、ストリーミング、バッチなどに対応した、OpenAI APIおよび多数のLLMプロバイダー向け非同期Scalaクライアント。
jeremychone/rust-genai
各プロバイダーのネイティブプロトコルを使い、多数のAIプロバイダーと共通のAPIでチャットできるRustライブラリ。
- スター
- 936
- フォーク
- 197
- 未解決の Issue
- 42
- 最終コミット
- 3 日前
これは何?
genaiは、生成AIモデル向けのRustクライアントライブラリです。OpenAI、Anthropic、Gemini、Ollama(ローカルモデル向け)、Groq、xAI、DeepSeek、Cohere、Mistralなど、多数のプロバイダーで使える共通のチャットAPIを提供します。モデル名のプレフィックスからアダプターが選ばれますが、`groq::`や`ollama_cloud::`のような名前空間で指定することもできます。
プロバイダーのネイティブプロトコルがある場合はそれを使うため、推論の制御、思考予算、ストリーミングのメタデータ、マルチモーダル入力など、プロバイダー固有の機能も扱えます。主にOpenAI互換APIを提供するプロバイダーでは、genaiはそのAPIを利用します。独自のOpenAI互換エンドポイントは、環境変数またはServiceTargetResolverを使って設定でき、認証やエンドポイントをカスタマイズできます。
主な対象はテキストチャット、ビジョン、関数呼び出しです。すべてのプロバイダーSDKの機能を網羅するのではなく、使いやすい共通APIを重視して設計されています。TLSバックエンドはCargo featuresで選択できます。
主な機能
- 01ローカルのOllamaモデルを含む、多数のAIプロバイダーに対応した統一チャットAPI
- 02モデル名からアダプターを自動選択。名前空間による指定も可能
- 03利用可能な場合はネイティブプロトコルをサポートし、OpenAI互換APIにもフォールバック
- 04環境変数またはターゲットリゾルバーを使った独自エンドポイントと認証の設定
- 05画像入力と関数呼び出しに対応
- 06TLSバックエンドを選択可能(デフォルトはrustls、またはnative-tls)
ユースケース
- 呼び出しを書き換えずにOpenAI、Anthropic、Geminiの各モデルを切り替えられるRustアプリケーションの構築
- クラウドプロバイダーと同じAPIを使い、Ollama経由でローカルモデルを実行
- セルフホストのOpenAI互換推論サーバーにRustサービスを接続
- Rustバックエンドにビジョン機能やツール呼び出し機能を追加
クイックスタート
- 1
Cargo.tomlにcrateを追加します
cargo add genai - 2
クライアントを作成し、モデル名を指定してexec_chatを呼び出します
使う前に知っておきたいこと
- 1.0未満のリリース(0.7.x)のため、マイナーバージョン間で破壊的変更が発生する場合があります。
収録されている特集
トピック
よくある質問
- rust-genai とは?
- 各プロバイダーのネイティブプロトコルを使い、多数のAIプロバイダーと共通のAPIでチャットできるRustライブラリ。 genaiは、生成AIモデル向けのRustクライアントライブラリです。OpenAI、Anthropic、Gemini、Ollama(ローカルモデル向け)、Groq、xAI、DeepSeek、Cohere、Mistralなど、多数のプロバイダーで使える共通のチャットAPIを提供します。モデル名のプレフィックスからアダプターが選ばれますが、`groq::`や`ollama_cloud::`のような名前空間で指定することもできます。
- rust-genai は無料で使えますか?ライセンスは?
- rust-genai は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- rust-genai は今もメンテナンスされていますか?
- 活発にメンテナンス中。rust-genai の最終コミットは 2026年11月4日 です。
- rust-genai は何に使えますか?
- 呼び出しを書き換えずにOpenAI、Anthropic、Geminiの各モデルを切り替えられるRustアプリケーションの構築 クラウドプロバイダーと同じAPIを使い、Ollama経由でローカルモデルを実行 セルフホストのOpenAI互換推論サーバーにRustサービスを接続 Rustバックエンドにビジョン機能やツール呼び出し機能を追加
- rust-genai のインストール方法は?
- Cargo.tomlにcrateを追加します: cargo add genai クライアントを作成し、モデル名を指定してexec_chatを呼び出します
- rust-genai はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/jeremychone/rust-genai
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
OpenAI、Anthropic、Google、Mistral、DeepSeekなど複数のAIプロバイダーに対応する、チャット・音声・埋め込み生成向けの統一Ruby API。
React、Next.js、Svelte、Vue、Node.jsでAIアプリケーションやエージェントを構築するための、プロバイダーに依存しないTypeScriptツールキット。
複数のプロバイダーのAPIキーやサブスクリプションアカウントを単一のエンドポイントに集約し、スケジューリング、フェイルオーバー、利用ログを提供するセルフホスト型AIゲートウェイ。
主要なLLMプロバイダーやUIフレームワークに対応した、ストリーミングチャット、ツール呼び出し、エージェント、マルチモーダルアプリ向けの型安全でプロバイダー非依存なTypeScript SDK。
テキスト生成、構造化データ、会話に対応する、複数のAIプロバイダーAPIを統一されたシンプルなインターフェースで利用できるPythonクライアントライブラリ。