1. 環境と前提
- OpenClawの仕組み:Docker(ゲートウェイコンテナ)
- 大型モデルプラットフォーム:火山アーク(Ark / Doubao)
- アクセス方法:OpenAIチャットコンピューズ対応インターフェース
- 通信チャネル:Telegram Bot(プライベートチャット)
2. 問題の背景と根本原因の概要
1️初期問題現象
- Telegram Botはメッセージを受け取ることができますが、エラーを返します:
404 The model or endpoint ... does not exist or you do not have access to it - このコールはモデルIDを
doubao-lite-4k-240328すると直接失敗します
2️^ 根本原因(2つの重要なポイント)
(1) 推論入口を呼び出せるビーンバッグ モデルID ≠
/modelsdoubao-lite-4k-240328はEqual Model IDを返しました- 実際の推論ではエンドポイントID(ep-xxxx)を使用しなければなりません。
- エンドポイント→作成されていない/使用されていないと、常に404です
(2) OpenClaw APIタイプが誤って設定されている
- 初期の利用例:
"api": "openai-completions" - しかしビーンバッグはチャットモデルであり、これは消さなければなりません:
POST /chat/completions
3. 正しい検証経路(キー)
1️そして エンドポイントIDによるダイレクトカール認証(成功)
curl -sS https://ark.cn-beijing.volces.com/api/v3/chat/completions \
-H "Authorization: Bearer <ARK_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"model":"ep-20251031171004-t2qcf",
"messages":[{"role":"user","content":"ping"}]
}'
エンドポイント+地域+キー⇒ 返される通常のコンテンツは正しいです。
4. OpenClawの設定変更(コア)
ファイルパス(ホスト:
~/.openclaw/openclaw.json
変更 すべき場所は合計3か所あり、それらは一貫していなければなりません
(1) models.providers.doubao.models[].id
モデルIDからエンドポイントID→
"models": [
{
"id": "ep-20251031171004-t2qcf",
"name": "Doubao",
"reasoning": false,
"input": ["text"],
"contextWindow": 128000,
"maxTokens": 8192
}
]
そして確認してください:
"api": "openai-completions"
(2) agents.defaults.model.primary(agents.defaults.model.primary)
"primary": "doubao/ep-20251031171004-t2qcf"
(3) agents.defaults.models の鍵
"models": {
"doubao/ep-20251031171004-t2qcf": {
"alias": "Doubao"
}
}
✅ 修正フルロジック
- OpenClaw内部統一参照:
doubao/ep-20251031171004-t2qcf - 実際のリクエスト経路:
/chat/completions - Arkバックエンド:エンドポイント→基盤モデル(例:
doubao-seed-1-6-lite-251015)
5. Telegramボットの設定手順(有効性確認済み)
"channels": {
"telegram": {
"enabled": true,
"botToken": "<YOUR_BOT_TOKEN>",
"dmPolicy": "pairing",
"allowFrom": [8434826952],
"groupPolicy": "disabled",
"streamMode": "partial"
}
}
主なフィールド記述
enabled: true: は明示的にオンにしなければなりませんdmPolicy: pairing:プライベートチャットはペアリング(安全)が必要ですallowFrom: 許可されたユーザーID(ホワイトリスト)groupPolicy: disabled: 誤ってトリガーされるのを防ぐためにグループを無効化してくださいstreamMode: partial: ストリーミング出力(推奨)
6. 容器と効果的な方法
1️^ JSONを検証する
jq . ~/.openclaw/openclaw.json
2️そしてゲートウェイを再起動する
docker restart openclaw-openclaw-gateway-1
3️^ Telegramプライベートチャットボットテスト
- 普通に返信できます⇒リンク全体が発効します
7. 重要な経験の要約(ピット回避)
- ビーンバッグはエンドポイント(ep-xxxx)を使用し、モデルIDを直接使うことはできません
- OpenClawは必ず使用しなければなりません
openai-chat-completions /models≠推測できます- 地域は一貫性がある必要があります(エンドポイントは北京、
ark.cn-beijingをご利用ください) agents.defaults.model.primarymodels.providersと は一貫性を保つ必要があり、そうでなければ暗黙の404
8. 現状
- ✅ 大規模モデルの推論は正常です
- ✅ Telegram Botの会話は問題なく動作しています
- ✅ OpenClaw構成は安定していて再利用可能です