はじめに
BerriAI/litellmは、OpenAI形式で100以上のLLM(Large Language Model)APIを呼び出すことができるPython SDKとProxy Server(LLM Gateway)です。このツールは、Azure、OpenAI、VertexAI、Cohere、Anthropic、Sagemaker、HuggingFace、Replicate、Groqなどの多くのLLMプロバイダーをサポートしています。
コア機能
- 入力の翻訳:入力をプロバイダーのコンプリーション、エンベディング、イメージ生成エンドポイントに適切に変換します。
- 一貫した出力:テキスト応答は常に['choices'][0]['message']['content']で利用可能です。
- リトライとフォールバック:複数のデプロイメント(例:Azure/OpenAI)に対してリトライとフォールバックのロジックを備えています。
- 予算とレート制限:各プロジェクト、APIキー、モデルごとに予算とレート制限を設定できます。
基本的な使用方法
- インストール:
pip install litellm
でインストールできます。 - 環境変数の設定:
os.environ["OPENAI_API_KEY"] = "your-openai-key"
などのように、各プロバイダーのAPIキーを環境変数に設定します。 - モデルの呼び出し:
completion(model="gpt-3.5-turbo", messages=messages)
のようにモデルを呼び出して応答を取得できます。また、非同期処理、ストリーミング、ロギングなどの機能もサポートしています。
プロキシサーバー
プロキシサーバーは認証、ロギング、コスト追跡、レート制限などの機能を提供します。litellm --model huggingface/bigcode/starcoder
でプロキシを起動し、openai.OpenAI(api_key="anything",base_url="http://0.0.0.0:4000")
のようにクライアントを設定してリクエストを送信できます。
BerriAI/litellmは、LLMの利用をより簡単かつ効率的にするための強力なツールです。