クライアント/DeepSeek Harness
DeepSeek Harness で Wokey API を使う
Wokey の API キーを取得し、DeepSeek Harness の Base URL を Wokey に向けてから、curl リクエスト 1 回で接続を確認します。
更新日
このページの内容expand_more
API キーと Base URL を用意するlink
どのクライアントも、同じ Wokey API キーと同じ Base URL を使います。
Wokey の Base URL を使う
クライアントの Base URL にはゲートウェイのドメインを設定します。/v1 を付けるかどうかは以下の設定を参照してください。
クライアントを設定するlink
DeepSeek Harness(dsh)はカスタムゲートウェイに対応しているため、1 つの Wokey キーで DeepSeek、GPT、GLM、Claude のモデルを使えます。deepseek-v4.1-flash は Chat Completions、Responses、Anthropic Messages に対応しています。以下の設定では、Claude Opus 5.5 と DeepSeek-V4.1-Flash を 1 つの Anthropic Messages プロバイダーにまとめ、両方に画像入力を宣言しています。
- 1
0.2.1 のプレリリースをインストールする
npm の latest タグはまだ 0.2.0 です。DeepSeek は V4.1-Flash-1017 には v0.2.1-rc.1 以降を推奨しているため、@next をインストールしてください。
- 2
API キーの変数を設定する
設定には apiKeyEnv の名前を書くだけなので、キーがファイルに残ることはありません。Web UI の Settings → Models でキーを保存することもできます。
- 3
プロバイダーを追加する
~/.dsh/profiles/web/cordis.patch.yml を編集します(dsh headless の場合は profiles/headless)。この例では両方のモデルで Anthropic Messages を使い、Base URL は https://api.wokey.ai です。代わりに OpenAI Chat Completions を選ぶ場合は、別のプロバイダーを作成して https://api.wokey.ai/v1 を使ってください。
- 4
画像入力を宣言する
DeepSeek Harness は宣言のないカスタムモデルをテキスト専用として扱うため、Wokey のモデルがビジョンに対応していても、リクエストが Wokey に届く前に画像を拒否することがあります。Opus 5.5、Haiku 5.5 などのビジョンモデルでは、そのモデルの下に input: [text, image] を追加してください。UI では Settings → Models → プロバイダーを編集 → Customized settings → モデルの行を展開 → Input types → Image を選びます。保存してから新しいセッションを開始してください。
- 5
既存のプロバイダーを残す
このオーバーライドは llm-pi-ai エントリの設定全体を置き換えるため、UI で既にプロバイダーを追加している場合は、それらも providers の下に記載してください。インデントはすべてスペースで行い、YAML にタブを混ぜないでください。保存後は新しいセッションを開始してください。
# 1. 0.2.1 をインストールまたは更新
npm install -g @deepseek-ai/dsh@next
export WOKEY_API_KEY="YOUR_API_KEY"
# 2. ~/.dsh/profiles/web/cordis.patch.yml
- id: llm-pi-ai
config:
providers:
wokey:
displayName: Wokey
apiKeyEnv: WOKEY_API_KEY
api: anthropic-messages
baseURL: https://api.wokey.ai
models:
- id: claude-opus-5-5
name: Claude Opus 5.5
contextWindow: 1000000
input: [text, image]
- id: deepseek-v4.1-flash
name: DeepSeek-V4.1-Flash
contextWindow: 1000000
maxTokens: 393216
input: [text, image]
- id: agent-default-model
config:
provider: wokey
model: claude-opus-5-5
# 3. 起動
dsh webAPI 形式と Base URLlink
同じクライアントでも API 形式を切り替えると、Base URL の末尾に /v1 を付けるかどうかが変わることがあります。
| 形式 | Base URL | 用途 |
|---|---|---|
| OpenAI Chat Completions | https://api.wokey.ai/v1 | DeepSeek、GLM、Kimi などのモデル |
| Anthropic Messages | https://api.wokey.ai | Claude モデル |
設定場所: ~/.dsh/profiles/web/cordis.patch.yml
Search / Fetch の料金と Wokey の対応範囲link
Wokey が提供するのはこのページに掲載したモデル推論インターフェースで、単体の /v1/tools/search や /v1/tools/fetch エンドポイントは提供していません。ツール呼び出しに対応していても、upstream の組み込みウェブツールすべてに対応するわけではありません。モデルリクエスト内のサーバー側検索は実際の供給ルートに依存し、現時点では Wokey の検証済み・一律対応の機能としては掲載していません。このページでは Search/Fetch の呼び出し単位の Wokey 料金も公開していません。ドキュメント化された単体の検索・取得が必要な場合は、DeepSeek の API キーで api.deepseek.com を利用し、Wokey のモデル呼び出しとは別に設定・課金してください。
公式料金、11 月 1 日の変更点、サポート情報よくあるトラブルと対処link
- 「The current model does not support images」:これは Harness のローカルな機能チェックによるもので、Wokey や Opus 5.5 がビジョンに対応していないという意味ではありません。そのモデルで Image を有効にするか、YAML のエントリに input: [text, image] を追加してください。
- 保存後も画像が拒否される:新しいセッションを開始し、モデルを選び直してください。既存のセッションは記録済みのモデル機能と添付ファイルを保持します。
- 画像リクエストが 400 を返す:プロトコルと Base URL を合わせてください。Anthropic Messages は /v1 なしの https://api.wokey.ai、OpenAI Chat Completions は https://api.wokey.ai/v1 を使います。deepseek-v4.1-flash は両方の形式に対応していますが、クライアントは選んだプロトコルの形式でリクエストを送る必要があります。
- アプリが起動しない、または YAML の行番号が表示される:input が目的のモデルの下にネストされているか、各モデルのダッシュが揃っているか、ファイルにタブが含まれていないかを確認してください。バックアップから復元し、スペースだけを使って保存し直してください。
- アプリが「Select a model」の状態で起動する:agent-default-model が存在するプロバイダーとモデルを指しているか確認してください。プロバイダーを削除または名前変更した後は、これも更新してください。
- 検出後にモデルは表示されるが画像機能がない:Fetch available models は主に ID と容量のフィールドを埋めるだけです。すべてのモデルをビジョン対応にするのではなく、カスタムのビジョンモデルごとに input: [text, image] を明示的に宣言してください。
- 保存後にほかのプロバイダーが消えた:cordis.patch.yml のオーバーライドは llm-pi-ai エントリ全体を置き換えるため、既存のプロバイダーはすべて providers の下に残してください。
curl で確認するlink
クライアントがエラーを出す場合は、まず curl で API キーと Base URL の問題ではないことを確認します。
DeepSeek Harness はデフォルトで OpenAI Chat Completions 形式を使います。このリクエストで 200 が返れば、API キーと Base URL は正しく設定されています。送信前に YOUR_API_KEY をご自身のキーに置き換えてください。
curl https://api.wokey.ai/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-v4.1-flash",
"messages": [
{ "role": "user", "content": "Hello" }
]
}'エラーとトラブルシューティングlink
まず認証、残高、レート制限、モデルの利用可否、アップストリームのタイムアウトのどれかを切り分けます。
invalid api key
キーがない、入力ミスがある、削除されている、または Authorization と x-api-key ヘッダーの内容が食い違っています。
insufficient balance
アカウントの残高が不足しています。リクエストを続ける前にチャージしてください。
model_denylisted / account_restricted
違反が繰り返されたため、そのモデル、またはアカウントのすべてのモデルへの呼び出しが停止されています。「違反処理手数料と制限」を参照してください。
request_blocked
このリクエストはアップストリームに届く前にブロックされ、課金されていません。たとえば、モデルが直前に拒否したリクエストを変更せずに再送した場合や、停止中のエンドユーザー(X-End-User-Id)の場合です。エラーメッセージに何がブロックされたかが示されるので、その内容に沿ってリクエストを変更するか、時間をおいて再試行してください。ほかのリクエストには影響しません。
rate limited
リクエストの頻度が高すぎます。時間をおいて再試行するか、同時実行数を減らしてください。特定のモデル、または特定のエンドユーザー(X-End-User-Id)だけが 429 を返し続ける場合は、違反後の一時的な制限の可能性があります。
client disconnected
レスポンスの完了前にクライアントが接続を閉じました(コード downstream_aborted)。デフォルトでは無料です。過去 24 時間にアカウントのクライアント切断が 50 回以上あり、それがリクエストの 10% 以上を占めると、以降の切断されたリクエストはアップストリームが報告した使用量で課金されます。対象は、キャッシュの読み書きを含む処理済みの入力と、アップストリームが計上した場合に限り出力です。アップストリームが使用量を報告する前に切断された場合は無料のままです。課金が始まるとアカウントに通知され、切断率が通常に戻ると 1 時間以内に課金は自動的に停止します。よくある原因は、クライアントやプロキシのタイムアウトが短すぎることや、プログラムが完了前にリクエストをキャンセルしていることです。
upstream unavailable
アップストリームのモデルサービスが一時的に利用できません。モデルを切り替えるか、時間をおいて再試行してください。
upstream timeout
アップストリームのレスポンスがタイムアウトしました。コンテキストを短くするか、max_tokens を減らすか、再試行してください。
upstream overloaded
アップストリームのモデルが一時的に過負荷になっており、Wokey はほかの経路での再試行を済ませています(コード upstream_overloaded)。残高とは関係ありません。少し待ってから再試行するか、モデルを切り替えてください。
よくある質問link
- DeepSeek Harness の baseURL に /v1 は必要ですか?
- provider の api フィールドによります。anthropic-messages の場合は /v1 なしの https://api.wokey.ai を指定します。OpenAI Chat Completions には https://api.wokey.ai/v1 を指定した別の provider が必要です。
- 「現在のモデルは画像に対応していません」と表示されるのはなぜですか?
- これは Harness のローカルな機能チェックです。カスタムモデルはデフォルトでテキスト入力のみを宣言します。モデルエントリに input: [text, image] を追加して保存し、新しいセッションで再度お試しください。
- 保存後にほかの provider が消えたのはなぜですか?
- cordis.patch.yml 内の llm-pi-ai の上書き設定はエントリ全体を置き換えます。既存の provider も Wokey と一緒に providers に書き込んでください。