openhands的代码生成能力依赖llm配置,需在config.toml中设置[llm]或自定义模型区块(如[llm.ernie]),填入model、api_key及base_url(若为兼容接口),启动时通过--llm-model指定模型,否则默认使用[llm]配置。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

OpenClaw并不是OpenHands的官方组件或子项目,当前所有权威文档、GitHub仓库及技术资料中均未出现“OpenClaw”这一名称——你很可能将项目名记混了,实际想配置的是OpenHands的代码生成模型(即LLM)。
确认项目名称与来源
打开终端,执行以下命令检查本地是否真有 OpenClaw:
which openclaw || ls -d */openclaw* 2>/dev/null
若无任何输出,说明系统中不存在该工具。OpenHands 官方 GitHub(https://github.com/All-Hands-AI/OpenHands)及其文档(https://docs.all-hands.dev)中从未使用过 “OpenClaw” 这一术语。常见混淆来源是误听 “OpenHands” 发音,或把某篇非官方教程的笔误当真。
配置 OpenHands 的写代码模型(LLM)
OpenHands 的代码生成能力完全依赖 LLM 配置,核心操作在 config.toml 文件中完成。必须先确保已正确初始化配置文件:
复制模板:cp config.template.toml config.toml
该文件默认启用 [llm] 模块,但 api_key 为空时模型调用必然失败,且不会报明确错误,只会卡在“thinking…”状态。
填写模型服务商参数
方法一:使用 OpenAI 兼容接口(含 Azure、Ollama、AnythingLLM 等)
编辑 config.toml,定位到 [llm] 区块,填入以下三项(缺一不可):
model = "gpt-4o"
api_key = "sk-xxx"
base_url = "https://api.openai.com/v1"(若用本地 Ollama,改为 "http://localhost:11434/v1")
注意:Ollama 模型名必须与 ollama list 输出完全一致,例如 model = "codellama:7b",写成 "codellama" 或 "codellama:7b-instruct" 均会报 404。
方法二:接入百度文心一言(国内首选)
在 config.toml 中新增独立模型区块(不覆盖原 [llm]):
[llm.ernie]
model = "ernie-bot-4"
base_url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/completions"
api_key = "your_baidu_api_key"
然后启动时显式指定该模型:openhands --llm-model ernie。不加 --llm-model 参数则默认使用 [llm] 下的配置。
验证模型是否生效
第一步:启动 OpenHands CLI 并强制指定模型
openhands --llm-model ernie --workspace-base ./test_ws
第二步:输入任务指令,例如:“新建一个 Python 脚本,打印斐波那契数列前10项”
第三步:观察日志首行是否出现类似 Using LLM model: ernie-bot-4 的提示
第四步:等待 Agent 执行 write → run → read 流程;若卡在 think 超过 90 秒,大概率是 api_key 格式错误或 base_url 网络不通,此时需检查 curl 测试:
curl -X POST "$BASE_URL" -H "Content-Type: application/json" -H "Authorization: Bearer $API_KEY" -d '{"model":"ernie-bot-4","messages":[{"role":"user","content":"hi"}]}'










