OpenClaw
透過自訂模型供應商,讓 OpenClaw 個人 AI 助理使用 cheapaimodel 的模型。
OpenClaw 在 ~/.openclaw/openclaw.json 的 models.providers 下把 OpenAI 相容的服務加為自訂供應商。之後代理以 cheapaimodel/<model-id> 指稱這些模型。
| OpenClaw 設定 | 值 | |
|---|---|---|
| Base URL | models.providers.cheapaimodel.baseUrl | https://api.cheapaimodel.ai/v1 |
| API Key | models.providers.cheapaimodel.apiKey | ${CHEAPAIMODEL_API_KEY},其值為在控制台的 API Key 頁面建立的 Key |
| 模型 ID | models.providers.cheapaimodel.models[].id | glm-5.3,或目錄中的任一模型 ID |
設定
存放 Key
把 Key 放進 OpenClaw 的全域環境變數檔案;即使 Gateway 以背景服務執行,也會讀取這個檔案:
CHEAPAIMODEL_API_KEY=sk-...若 Gateway 已在執行,請以 openclaw gateway restart 重新啟動,讓它讀取這個檔案。
加入供應商
把以下內容合併到你的設定中:
{
agents: {
defaults: {
model: { primary: "cheapaimodel/glm-5.3" },
},
},
models: {
mode: "merge",
providers: {
cheapaimodel: {
baseUrl: "https://api.cheapaimodel.ai/v1",
apiKey: "${CHEAPAIMODEL_API_KEY}",
api: "openai-completions",
models: [
{
id: "glm-5.3",
name: "GLM-5.3",
compat: { supportsUsageInStreaming: true },
},
],
},
},
},
}api: "openai-completions"會把請求送往/v1/chat/completions。- 每個模型 ID 在
models中加一筆。id是目錄中的模型 ID;name是顯示名稱,OpenClaw 要求必填。 - 依模型頁面在每一筆加上
contextWindow與maxTokens,例如 glm-5.3 的頁面。沒有填時,OpenClaw 會以自己的預設值估算上下文,輸出上限則交給伺服器決定。 compat.supportsUsageInStreaming讓 OpenClaw 在串流中要求 token 用量,cheapaimodel 會回傳(見串流)。沒有這一項時,OpenClaw 只能估算上下文用量,並在日誌中記下returned no token usage。
Gateway 會監看這個檔案,變更不需重新啟動即可生效。
確認
openclaw models list清單中應該會出現 cheapaimodel/glm-5.3。日後要更換預設模型,請執行 openclaw models set cheapaimodel/<model-id>。
OpenClaw 的代理仰賴模型的工具呼叫能力。若某個模型處理工具的效果不好,請改試目錄中的其他模型。
常見錯誤
- OpenClaw 警告找不到
CHEAPAIMODEL_API_KEY。 Gateway 處理程序沒有這個變數,${CHEAPAIMODEL_API_KEY}因此無法解析。請把它放進~/.openclaw/.env並重新啟動 Gateway。 401。 Key 錯誤、已到期或預算已用盡。請在控制台檢查。- 設定被拒,訊息為
custom model providers must declare models。 自訂供應商必須有models陣列,每一筆都要同時有id與name。 404。 主體為fault filter abort時,是baseUrl漏了/v1;主體帶有Invalid URL (POST /v1/chat/completions/chat/completions)時,是baseUrl含有端點路徑。請設定https://api.cheapaimodel.ai/v1。503且model_not_found。id必須是目錄中的模型 ID,拼寫完全一致。cheapaimodel/前綴只是 OpenClaw 的模型參照,不會送出。