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

カスタムエンドポイント

カスタムエンドポイント機能を使うと、ローカルにデプロイした LLM 推論サービス(Ollama や LM Studio など)や、企業のプライベートデプロイ API を Elftia に接続できます。ほとんどのローカル推論フレームワークは OpenAI 互換 API を提供しているため、設定は簡単です。

使用する場面

  • オープンソースモデル(Llama、Qwen、Mistral など)をローカルで実行し、完全にオフラインで使用したい
  • 会社が社内ネットワークにプライベート LLM サービスをデプロイしている
  • 公式 OpenAI API ではなく Azure OpenAI Service を使用している
  • セルフホストの推論クラスター(vLLM や TGI など)に接続する必要がある
  • LM Studio のグラフィカルなローカル推論環境を使用したい

Ollama

Ollama は最も人気のあるローカルモデルランナーで、さまざまなオープンソースモデルのワンクリックダウンロードと実行をサポートしています。

前提条件

  • Ollama がインストール済み(download
  • 少なくとも 1 つのモデルをダウンロード済み(例: ollama pull llama3.1

手順

  1. Ollama が実行中であることを確認します
    • Windows/macOS: インストール後、Ollama はデフォルトでバックグラウンドサービスとして実行されます
    • Linux: ollama serve を実行してサービスを開始します
    • デフォルトの待受アドレス: http://localhost:11434
  1. Elftia で SettingsProvider Management を開きます

  2. デフォルトの Ollama プロバイダーを探します(存在しない場合は、Add Provider をクリック → Ollama プリセットを選択)

  3. 設定を確認します。

フィールド
API Formatopenai
Base URLhttp://localhost:11434/v1
API Key(空のまま。Ollama はデフォルトで認証を必要としません)
  1. ダウンロード済みのモデルを追加します。
    • Add Model をクリックします
    • Ollama に表示されるモデル名を入力します(ollama list の出力と一致させます)
    • 例: llama3.1qwen2.5:14bcodellama:34b
  1. Enabled トグルをオンにして保存します

  2. これで Ollama モデルがチャット UI のモデル選択に表示されます

一般的な Ollama モデル

モデル名パラメーター用途ダウンロードコマンド
llama3.18B汎用チャットollama pull llama3.1
llama3.1:70b70B高品質チャットollama pull llama3.1:70b
qwen2.5:14b14B中国語/英語チャットollama pull qwen2.5:14b
codellama:34b34Bコード生成ollama pull codellama:34b
deepseek-coder-v216Bコード支援ollama pull deepseek-coder-v2
mistral7B軽量チャットollama pull mistral
llava7Bビジョン理解ollama pull llava

リモート Ollama

Ollama がローカルネットワーク上の別のマシンで実行されている場合:

  1. Ollama を実行しているマシンで、環境変数 OLLAMA_HOST=0.0.0.0:11434 を設定します
  2. Ollama サービスを再起動します
  3. Elftia で Base URL を http://<remote-IP>:11434/v1 に変更します

LM Studio

LM Studio は、ローカルモデルの管理と推論のためのグラフィカルインターフェイスを提供し、組み込みの OpenAI 互換 API サーバーを備えています。

前提条件

  • LM Studio がインストール済み(download
  • 少なくとも 1 つのモデルをダウンロードして読み込み済み

手順

  1. LM Studio でローカルサーバーを開始します。
    • LM Studio を開きます
    • Local Server タブに切り替えます
    • モデルを読み込みます
    • Start Server をクリックします
    • サーバーアドレスをメモします(デフォルト http://localhost:1234
  1. Elftia で SettingsProvider Management を開きます

  2. Add Provider をクリック → Custom Provider を選択します

  3. 設定を入力します。

フィールド
NameLM Studio
API Formatopenai
Base URLhttp://localhost:1234/v1/chat/completions
API Keylm-studio(LM Studio はキーを検証しませんが、フィールドが必須の場合は任意の値を入力します)
  1. モデルを追加します。

    • LM Studio で読み込まれているモデル名を入力します
    • モデル名は LM Studio に表示されるモデル識別子と一致している必要があります
  2. 接続をテストし、有効化して保存します

vLLM / Text Generation Inference

vLLMTGI は、本番環境のデプロイで広く使われている高性能 LLM 推論エンジンです。どちらも OpenAI 互換 API を提供しています。

vLLM 設定

  1. vLLM サービスを開始します(例):

    python -m vllm.entrypoints.openai.api_server \
    --model meta-llama/Llama-3.1-8B-Instruct \
    --port 8000
  2. Elftia でカスタムプロバイダーを追加します。

フィールド
NamevLLM Local
API Formatopenai
Base URLhttp://localhost:8000/v1/chat/completions
API Key(空のまま、または vLLM の --api-key 値を入力)
  1. モデルを追加します。vLLM 起動時に指定した --model 名を使用します

TGI 設定

  1. TGI サービスを起動した後、その OpenAI 互換エンドポイントを使用します

  2. Elftia でカスタムプロバイダーを追加します。

フィールド
NameTGI
API Formatopenai
Base URLhttp://localhost:8080/v1/chat/completions
API Key(空のまま、または対応する値を入力)

Azure OpenAI

Azure OpenAI Service は OpenAI と同じモデルを使用しますが、それらを Azure プラットフォーム上でホストし、エンタープライズグレードの SLA とデータコンプライアンス保証を提供します。

前提条件

  • Azure サブスクリプションと Azure OpenAI Service へのアクセス権
  • Azure Portal で作成済みの Azure OpenAI リソース
  • 少なくとも 1 つのモデルをデプロイ済み(デプロイ名付き)

手順

  1. Azure Portal から次の情報を取得します。
    • Endpoint: https://<resource-name>.openai.azure.com 形式
    • API Key: 「Keys and Endpoint」ページで確認可能
    • Deployment name: 「Model Deployments」ページで確認可能
    • API Version: 2024-08-01-preview を推奨
  1. Elftia で SettingsProvider Management を開きます

  2. Add Provider をクリック → Azure OpenAI プリセットを選択します

  3. 設定を入力します。

フィールド
API Formatazure-openai--
Base URLAzure エンドポイントhttps://my-resource.openai.azure.com
API KeyAzure API keyxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
API VersionAPI バージョン番号2024-08-01-preview
  1. モデルを追加します。

    • モデル ID として Azure の deployment name を使用します(モデル名ではありません)
    • たとえば gpt-4omy-gpt4o としてデプロイした場合は、モデル ID として my-gpt4o を入力します
  2. 接続をテストし、有効化して保存します

Azure と標準 OpenAI の違い

機能OpenAIAzure OpenAI
Base URLhttps://api.openai.com/v1/...https://<resource>.openai.azure.com
認証Authorization: Bearer sk-...api-key: ...
モデル指定モデル名を使用(例: gpt-4oデプロイ名を使用
API バージョン不要必須(URL パラメーター)
API Formatopenaiazure-openai

設定リファレンス

次の設定項目はカスタムエンドポイントのシナリオに適用されます。

設定デフォルト説明
NameString--カスタム表示名
API FormatEnumopenaiローカルサービスは通常 openai を使用し、Azure は azure-openai を使用します
Base URLURL--推論サービスの API アドレス
API KeyString(空)ローカルサービスでは通常不要です。Azure では必須です
API VersionString(空)Azure OpenAI のみ必須です。例: 2024-08-01-preview
Model listArray(空)サービスで利用可能なモデル名を手動で入力します
TransformerArray(空)カスタムエンドポイントでは通常、追加のトランスフォーマーは不要です

動作上の注意

ローカルサービスに関する特別な考慮事項

  • API キー検証なし: ほとんどのローカルサービス(Ollama、LM Studio)は API キーを必要としません。Elftia の API キーフィールドが必須の場合は、任意のプレースホルダー値を入力してください
  • ホットモデル読み込み: 一部のサービスは動的なモデル読み込みをサポートしています。サービスに新しいモデルを追加した後、Elftia で対応するモデル名を追加するだけです
  • 同時実行制限: ローカルサービスは通常、一度に 1 件のリクエストしか処理しません。同時実行制限を 1 に設定してください
  • 初回応答レイテンシ: ローカルモデルは GPU メモリに読み込むまで数秒必要な場合があります。最初のリクエストでは目立つ遅延が発生します

プロキシとネットワーク

  • ローカルサービス(localhost / 127.0.0.1)はグローバルプロキシを経由しません
  • LAN サービスは、プロキシ設定によってはプロキシ除外リストに追加する必要があります

モデル機能

ローカルモデルの機能フラグ(ビジョン、関数呼び出しなど)は、Elftia で手動設定する必要があります。モデルがビジョンに対応していてもフラグが設定されていない場合、Elftia はそのモデルに画像を送信しません。

トラブルシューティング

問題考えられる原因解決策
Connection refusedローカルサービスが実行されていないOllama/LM Studio/vLLM が実行中であることを確認します
Connection timeoutポートが間違っている、またはファイアウォールがブロックしているポート番号を確認し、ファイアウォールが接続を許可していることを確認します
Model not foundモデル名がサーバーと一致していないollama list またはサーバーのモデル一覧で名前を確認します
Ollama remote connection failsOllama はデフォルトで localhost のみを待ち受けますOLLAMA_HOST=0.0.0.0:11434 を設定して再起動します
LM Studio returns empty responseモデルがメモリに読み込まれていないモデルが読み込まれており、LM Studio で「Ready」と表示されていることを確認します
Azure returns 404デプロイ名が正しくないモデル ID としてモデル名ではなくデプロイ名を使用していることを確認します
Azure returns 401API バージョンまたはキーが正しくないAPI Version フィールドと API Key を確認します
Garbled characters in responseモデルがその言語をサポートしていない対象言語をサポートするモデル(例: Qwen、ChatGLM)に切り替えます
Insufficient GPU memoryモデルが大きすぎるより小さい量子化バージョン(例: llama3.1:8b-q4_0)を選択します
Request hangs with no responseローカルサービスがモデルを読み込み中モデルの読み込み完了を待ちます。最初のリクエストには 10-30 秒かかる場合があります

関連ページ