graniet/llm

A powerful Rust library and CLI tool to unify and orchestrate multiple LLM, Agent and voice backends (OpenAI, Claude, Gemini, Ollama, ElevenLabs...) with a single, extensible API. Build, chain, evaluate, and serve complex multi-step AI workflows — including speech-to-text, text-to-speech, completions, vision, and reasoning.

What it solves

複数の LLM プロバイダー(OpenAI、Anthropic、Google、Ollama など)とやり取りするための統一された Rust ライブラリを提供し、プロバイダーごとのコードを書く必要がなくなります。モデル間の切り替えや、異なるバックエンドを単一のワークフローに統合するプロセスを簡素化します。

How it works

このライブラリはビルダーパターンと統一されたトレイト(ChatProviderCompletionProvider)を使用して、さまざまな AI バックエンドへのリクエスト送信方法を標準化します。単一の API でモデル、temperature、トークン数を設定できます。また、各ステップで異なるバックエンドを使用できるマルチステップチェーンの作成をサポートし、これらのチェーンを OpenAI 標準形式の REST API として提供できます。

Who it’s for

クリーンでプロバイダー非依存のコードベースを保ちつつ、アプリケーションに複数の AI モデルを統合したい Rust 開発者向けです。

Highlights

  • Multi-backend support:OpenAI、Anthropic、Ollama、DeepSeek、xAI、Phind、Groq、Google、Cohere、Mistral、Hugging Face、ElevenLabs をサポート。
  • Advanced Orchestration:マルチステップチェーン、共有メモリを持つリアクティブエージェント、複数プロバイダーの並列評価による最適応答選択をサポート。
  • Rich Feature Set:ビジョン、推論、構造化 JSON 出力、音声認識/音声合成の組み込みサポート。
  • Developer Tooling:モデルとの迅速な対話のためのコマンドラインインターフェース(CLI)と、指数バックオフやジッターなどのレジリエンス機能を提供。