ドキュメント

ドキュメント

LobeChat

セルフホスト版LobeChatからKunavoに接続するには、キー、プロキシURL、モデル選択欄に表示するモデルID一覧の3つの環境変数が必要です。

OPENAI_API_KEYにお使いのsk-kn-…キー、OPENAI_PROXY_URLにhttps://api.kunavo.com/v1を設定し、OPENAI_MODEL_LISTに利用するIDを指定します。これにより、ClaudeとGPTを1つのモデル選択欄と残高で利用できます。

.env
OPENAI_API_KEY=sk-kn-...
OPENAI_PROXY_URL=https://api.kunavo.com/v1

# LobeChat only shows models it knows about, so name the ones you want.
OPENAI_MODEL_LIST=claude-sonnet-5,claude-haiku-4-5,claude-opus-5,gpt-5-6-terra
/v1サフィックスはOPENAI_PROXY_URLに含めます。LobeChatはOpenAIのパスを再構成せず、指定されたURLに転送します。そのため、LobeChatの.env.exampleの既定値は、サフィックスを含むhttps://api.openai.com/v1と記載されています。

手順

  1. /app/keys でキーを作成してコピーします。キーは一度だけ表示されます。
  2. 3つの変数をデプロイ環境に追加します。ベアインストールでは.envファイル、Dockerではenvironmentブロックを使います。
  3. コンテナを再起動して、新しい環境変数を読み込みます。
  4. LobeChatを開いてセッションを開始し、OPENAI_MODEL_LISTに指定したIDのいずれかを選びます。
docker-compose.yml
services:
  lobe-chat:
    image: lobehub/lobe-chat
    ports:
      - "3210:3210"
    environment:
      OPENAI_API_KEY: sk-kn-...
      OPENAI_PROXY_URL: https://api.kunavo.com/v1
      OPENAI_MODEL_LIST: claude-sonnet-5,claude-haiku-4-5,gpt-5-6-terra

これらの変数については、LobeChatの公式リファレンスであるモデルプロバイダーの環境変数ページを参照してください。

コンテナのデバッグを始める前に確認する

1 回のリクエストで、失敗の原因がエンドポイント、キー、LobeChat のモデル一覧のどれなのかを切り分けられます。モデル ID の JSON リストが返れば、同じ URL とキーは機能しています。その後もモデル選択欄が空なら、原因はOPENAI_MODEL_LISTであり、エンドポイントではありません。

# Settles whether a failure is the endpoint, the key, or LobeChat.
curl -sS https://api.kunavo.com/v1/models \
  -H "Authorization: Bearer sk-kn-..."

一覧に含める ID

Kunavo のすべてのテキストモデルをOPENAI_MODEL_LISTに指定できます。全モデル一覧はモデルページにあり、GET /v1/modelsからリアルタイムで取得されます。料金は 100 万トークンあたりの米ドル建てで、入力/出力の順です。

モデル IDKunavo 入力 / 出力用途
claude-haiku-4-5$0.70 / $3.50最安の Claude — 1 ターンあたりのコストが重要な長時間のチャットセッション向け
claude-sonnet-5$1.40 / $7.00品質と価格の標準的なバランス
claude-opus-5$3.50 / $17.50最高品質の Claude ティア
gpt-5-6-terra$0.70 / $4.20同じキーで別のファミリーを利用 — 2 つ目のプロバイダー設定は不要
チャットクライアントはターンごとに会話全体を再送信するため、LobeChat でのトークン使用量はメッセージごとに一定ではなく、セッションの長さに応じて増えていきます。この形式で最も重要な対策はプロンプトキャッシュです。料金は前払い残高からトークン単位で差し引かれ、月額料金はないため、利用しない月の費用はかかりません。詳しくは請求をご覧ください。

よくある質問

LobeChatをカスタムOpenAI互換エンドポイントに接続するには?

デプロイ環境の環境変数で、OPENAI_PROXY_URLにエンドポイントのベースURL、OPENAI_API_KEYに自分のキーを設定します。Kunavoの場合、ベースURLは https://api.kunavo.com/v1 です。LobeChatの.env.exampleでは、この変数の例としてhttps://api.openai.com/v1が使われています。これは、/v1サフィックスが自動的に付加されるのではなく、設定値に含める必要があることを示しています。

カスタムモデルがLobeChatのモデル一覧に表示されないのはなぜですか?

LobeChatには、エンドポイントが提供できるモデルすべてではなく、登録されたモデルが表示されます。そのため、エンドポイントが応答するモデルIDでも、一覧にない場合は表示されません。OPENAI_MODEL_LISTに、IDをカンマ区切りで指定してください。LobeChatのドキュメントでは、この変数で使えるプレフィックス構文も定義されています。先頭の+はモデルの追加、先頭の-は非表示、model_name=display_nameはモデル選択欄での名前変更を意味します。

LobeChatはOpenAIプロバイダー経由でClaudeモデルを利用できますか?

OpenAI互換エンドポイント経由で提供される場合は利用できます。LobeChatのOpenAIプロバイダーは、OPENAI_PROXY_URLで指定されたエンドポイントにモデルIDを送信するため、ClaudeのIDはLobeChat内ではなくゲートウェイで解決されます。Anthropicの認証情報は必要ありません。KunavoではClaudeとGPTのIDを1つのキーで利用できるため、モデル系統を追加するにはOPENAI_MODEL_LISTにIDを追加してください。

カスタムエンドポイント経由でLobeChatの画像生成を利用できますか?

これはLobeChatではなく、エンドポイントがどのルートを実装しているかによります。チャットプロバイダーが必要とするのは /v1/chat/completions で、画像生成は別のルートを使います。Kunavoでは画像および動画生成に独自のエンドポイントを実装しており、imagesおよびvideoのドキュメントで説明しています。そのため、チャットにはLobeChatを使い、メディア生成エンドポイントは直接呼び出す方法が確実です。1つのプロバイダー設定で両方を利用できると想定しないでください。