618ZXW

Andrew Ngが参加し、最新のPythonパッケージをオープンソース化

データホエール

Datawhaleのヒント

最新情報: Andrew Ng、出典: Machine Heart

アプリケーションを構築するときに複数のプロバイダーと統合するのは面倒ですが、aisuite はその問題を解決します。

OpenAI、Anthropic、Google などがリリースした大規模モデルを同じコードで呼び出すことで、モデルの切り替えや比較テストも簡単に行えます。

ちょうど今、著名な AI 研究者でありスタンフォード大学の教授でもあるアンドリュー・ン氏が、最新のオープンソース プロジェクトの完了を発表しました。

Andrew Ng 氏はツイートで、新しい Python パッケージ aisuite をオープンソース化するという朗報を発表しました。

このツールを使用すると、開発者は複数のプロバイダーの大規模な言語モデルを簡単に使用できるようになります。

Andrew Ng 氏は、このプロジェクトを構築した理由について、アプリケーションの構築時に複数のプロバイダーとの統合が非常に面倒であると述べました。この問題を解決するために作成された aisuite により、ユーザーは単一の文字列 (openai:gpt-4o、anthropic:claude-3-5-sonnet-20241022、ollama:llama3.1:8b など) を変更するだけで、さまざまなプロバイダーからモデルを選択できるようになりました。

プロジェクトアドレス: https://github.com/andrewyng/...

プロジェクトが稼働すると、誰もが「これは開発者にとって非常に役立つ」と言いました。

「とても便利です!簡素化された統合は常に有益です。素晴らしい研究です!」

複数の AI プロバイダーのモデルをサポートする、統一されたインターフェース設計。

aisuite は、開発者が標準化されたインターフェースを通じて複数の LLM を簡単に利用できるようにします。OpenAI のインターフェースと同様に、aisuite は最も人気のある LLM と簡単に連携し、結果を比較できます。

aisuite は Python クライアント ライブラリ上に構築された軽量ラッパーであり、ユーザーはコードを変更することなく、さまざまな LLM プロバイダーからの応答を簡単に切り替えてテストできます。

現在、aisuite でサポートされているプロバイダーは次のとおりです。

  • オープンAI
  • 人類学的
  • アズール
  • グーグル
  • AWS
  • グロク
  • ミストラル
  • ハグフェイス
  • オラマ

安定性を確保するために、aisuite は HTTP エンドポイントまたは SDK を使用してプロバイダーを呼び出します。

インストール

インストールプロセスにはいくつかのオプションがあります。

以下では、ベンダーの SDK をインストールせずに基本パッケージのみをインストールする方法について説明します。

pip install aisuite

Anthropicサポートによるインストール方法

pip install 'aisuite [anthropic]'

以下は、プロバイダー固有のライブラリをすべてインストールします。

pip install 'aisuite [all]'

設定

ご利用開始にあたっては、ご利用予定のプロバイダーのAPIキーを取得する必要があります。APIキーは環境変数として設定できます。使用方法の詳細については、aisuiteのexamplesフォルダをご覧ください。

まだよく理解できない場合は、以下の短い例を参照してください。この例では、aisuite を使用して GPT-4o と Claude-3-5-Sonnet からチャット補完応答を生成する方法を示しています。

まず、API キーを設定します。

export OPENAI_API_KEY="your-openai-api-key" `ANTHROPIC_API_KEY="anthropic-api-key" をエクスポートします `

Python クライアントの使用:

import aisuite as ai `client = ai.Client()`
models = ["openai:gpt-4o", "anthropic:claude-3-5-sonnet-20240620"]
messages = [ {"role": "system", "content": "Respond in Pirate English."}, {"role": "user", "content": "Tell me a joke."}, `]`
for model in models: response = client.chat.completions.create ( model=model, messages=messages, temperature=0.75 ) print (response.choices [0].message.content)

試してみたい読者は、元のプロジェクトの構成をそのまま参照してください。今日は大規模モデルの時代です。開発者にとって、統一されたインターフェースを使用して様々な大規模モデルを呼び出すことで、多くの時間を節約できます。

このような実用的なオープンソースプロジェクトが今後ますます増えていくことを期待しています。何か良いプロジェクトがあれば、ぜひ下のコメント欄にご記入ください。

いい(3件のいいね!)↓