メインコンテンツまでスキップ

OpenAI Compatible Chat(OpenAI互換チャット)

Ollama や vLLM などのセルフホストモデルを含め、OpenAI互換の chat API を公開している任意の LLM に AI agent を接続します。

概要

OpenAI Compatible connector を使用すると、OpenAI Chat Completions API 形式を実装している任意の LLM provider を利用できます。これには、OllamavLLM のようなセルフホスト型ソリューションに加え、OpenAI互換エンドポイントを提供するクラウドサービスも含まれます。

この connector は以下をサポートします:

  • streaming を伴う chat completions
  • Function calling(tool use)

connector のセットアップ

OpenAI Compatible connector を追加するには、次の手順を完了してください:

  1. Squid Console に移動し、アプリケーションを選択します。
  2. Connectors タブをクリックします。
  3. Available Connectors をクリックし、OpenAI Compatible Chat connector を見つけます。次に Add Connector をクリックします。
  4. 次の詳細を入力します:
  • Connector ID: 任意の一意な ID(例: my-ollama)。これはコード内で参照する integrationId です。
  • Base URL: 公開アクセス可能な OpenAI互換 API の URL。Squid backend がこの URL に到達できる必要があるため、ローカル開発している場合を除き localhost アドレスは使用できません。
  • API Key(optional): 認証用の API key。一部の provider(ローカルの Ollama インスタンスなど)では API key は不要です。
  • Models: この connector を通じて利用可能なモデルを定義する JSON 配列。各モデルには次のフィールドが必要です:
FieldTypeDescription
modelNamestringAPI 呼び出しで使用されるモデル識別子
displayNamestringモデルの人間向け表示名
maxOutputTokensnumberモデルがレスポンスで生成できる最大 token 数
contextWindowTokensnumbertoken での総 context window サイズ

例:

[
{
"modelName": "llama3",
"displayName": "Llama 3",
"maxOutputTokens": 4096,
"contextWindowTokens": 8192
}
]
  1. Add Connector をクリックします。

connector の使用

設定が完了したら、connector ID と model name を指定して AI agent と一緒に connector を使用します:

Client code
await squid.ai().agent('my-agent').updateModel({
integrationId: 'my-ollama',
model: 'llama3',
});

リクエストごとに model を上書きすることもできます:

Client code
const response = await squid
.ai()
.agent('my-agent')
.ask('Hello!', {
model: {
integrationId: 'my-ollama',
model: 'llama3',
},
});

一般的な構成

Ollama

Ollama はオープンソースモデルをローカルで実行します。

  • Base URL: Ollama インスタンスの公開アクセス可能な URL(例: https://ollama.your-domain.com
  • API Key: 不要
  • Models: ローカルに pull 済みのモデルに依存(例: llama3mistralcodellama

vLLM

vLLM は OpenAI互換サーバーを備えた高スループットの推論エンジンです。

  • Base URL: vLLM サーバーの公開アクセス可能な URL(例: https://vllm.your-domain.com
  • API Key: vLLM の設定に依存
  • Models: vLLM を起動したときに指定した model(複数可)