DeepSeek Harness (dsh)
DeepSeek Harness を 1 つのカスタムプロバイダー設定で HopBase に接続し、モデルファミリーごとに適切なプロトコルを選びます。
DeepSeek Harness(dsh)は DeepSeek のオープンソース Agent ランタイムです。カスタムプロバイダー(base URL、プロトコル、モデル ID)を通じて任意のゲートウェイに接続でき、ハードコードされた値はありません。関数呼び出しとストリーミングの使用量取得は、HopBase に対してエンドツーエンドで検証済みです。
モデルファミリーに応じてプロトコルを選ぶ
dsh はどの通信プロトコルを使うかを知る必要があります。これは dsh ではなく、モデルファミリーによって決まります。
| モデルファミリー | api | baseURL |
|---|---|---|
| DeepSeek、GPT / Codex、GLM、Kimi、Grok、Qwen | openai-completions | https://api.hop-base.com/v1 |
| Claude | anthropic-messages | https://api.hop-base.com(/v1 なし) |
1 つのキーで使えるのは 1 つのモデルファミリーのみです
HopBase のキーは 1 つのプランに紐づいており、1 つのプランは 1 つのモデルファミリーのみを提供します。同じ dsh のインストールで DeepSeek と Claude の両方を使いたい場合は、2 つのキーで 2 つのプロバイダーを追加してください。プランを間違えたキーを使うと 404 model_not_found が返ります。
設定ファイルで構成する
プロバイダーを追加する
$DSH_HOME/settings.yaml を開き、providers の下にエントリを追加します:
providers:
hopbase:
api: openai-completions
baseURL: https://api.hop-base.com/v1
apiKeyEnv: HOPBASE_API_KEY
models:
- id: deepseek-v4-pro-202606
- id: deepseek-v4-flash-202605
- id: glm-5.3自分のキーで実際に呼び出せるモデルだけを列挙してください。この例をそのままコピーせず、そのキーで GET /v1/models を呼んで正確な ID を確認してください。
キーをエクスポートする
export HOPBASE_API_KEY=sk-your-keyapiKeyEnv には環境変数名を指定します。dsh は起動時にこの変数からキーを読み込みます。キー自体を settings.yaml に直接書かないでください。
モデル一覧を確認する
curl https://api.hop-base.com/v1/models \
-H "Authorization: Bearer sk-your-key"models に列挙したすべての ID が、このレスポンスに含まれている必要があります。含まれていない ID があれば、そのキーのプランでは提供されていません。
最初のリクエストを送信する
dsh を起動してプロバイダーを選択し、一言だけの返信を依頼します。往復が成功すれば、base URL、キー、プロトコル、モデル ID がすべて正しく対応していることが確認できます。
Web UI で構成する
Settings → Models → Add a custom provider で、プロトコル、base URL、キーの環境変数名、モデル ID の同じ 4 つの値を入力します。上記のプロトコル表はここでも同様に適用されます。
2 つ目のモデルファミリーを追加する
DeepSeek に加えて Claude も使いたい場合は、最初のプロバイダーを編集するのではなく、2 つ目のプロバイダーを追加してください。プロトコルと base URL のどちらも異なります:
providers:
hopbase:
api: openai-completions
baseURL: https://api.hop-base.com/v1
apiKeyEnv: HOPBASE_API_KEY
models:
- id: deepseek-v4-pro-202606
hopbase-claude:
api: anthropic-messages
baseURL: https://api.hop-base.com
apiKeyEnv: HOPBASE_CLAUDE_API_KEY
models:
- id: claude-sonnet-5トラブルシューティング
| 症状 | 原因 |
|---|---|
すべてのリクエストで 401 になる | dsh を起動したシェルで apiKeyEnv に指定した環境変数が設定されていない |
404 model_not_found | そのモデルがこのキーのプランで提供されていない、または ID が省略されている。GET /v1/models を再度確認する |
Claude だけ 404 になる | baseURL に /v1 が付いている。Anthropic プロトコルはホストのみを使用する |
| リクエストが別のモデルに届く | 2 つのプロバイダーが同じ apiKeyEnv を共有している。モデルファミリーごとに専用の変数を用意する |
関連ページ
DeepSeek V4 は本ページの背景にあるモデル契約です。エンドポイント、推論出力、キャッシュ、想定されるリクエストの書き換えについて解説しています。