名称: ollama-local
描述: 管理与使用本地 Ollama 模型。适用于模型管理(列出/拉取/删除)、对话/补全、嵌入以及本地大语言模型的工具调用。涵盖 OpenClaw 子代理集成与模型选择指南。
使用本地 Ollama 模型进行推理、嵌入和工具调用。
设置你的 Ollama 主机地址(默认为 http://localhost:11434):
export OLLAMA_HOST="http://localhost:11434"
# 或者,对于远程服务器:
export OLLAMA_HOST="http://192.168.1.100:11434"
# 列出模型
python3 scripts/ollama.py list
# 拉取模型
python3 scripts/ollama.py pull llama3.1:8b
# 删除模型
python3 scripts/ollama.py rm modelname
# 查看模型详情
python3 scripts/ollama.py show qwen3:4b
# 与模型对话
python3 scripts/ollama.py chat qwen3:4b "法国的首都是哪里?"
# 使用系统提示进行对话
python3 scripts/ollama.py chat llama3.1:8b "审查这段代码" -s "你是一名代码审查员"
# 生成补全(非对话)
python3 scripts/ollama.py generate qwen3:4b "从前"
# 获取嵌入向量
python3 scripts/ollama.py embed bge-m3 "需要嵌入的文本"
完整模型列表及选择指南请参阅 references/models.md。
快速推荐:
- 快速回答:qwen3:4b
- 代码编程:qwen2.5-coder:7b
- 通用任务:llama3.1:8b
- 逻辑推理:deepseek-r1:8b
部分本地模型支持函数调用。使用 ollama_tools.py:
# 单次请求(带工具)
python3 scripts/ollama_tools.py single qwen2.5-coder:7b "阿姆斯特丹的天气如何?"
# 完整工具循环(模型调用工具、获取结果、响应)
python3 scripts/ollama_tools.py loop qwen3:4b "搜索 Python 教程并总结"
# 显示可用的示例工具
python3 scripts/ollama_tools.py tools
支持工具调用的模型: qwen2.5-coder, qwen3, llama3.1, mistral
使用 sessions_spawn 创建本地模型子代理:
# 示例:创建一个代码审查代理
sessions_spawn(
task="审查这段 Python 代码中的错误",
model="ollama/qwen2.5-coder:7b",
label="code-review"
)
模型路径格式:ollama/<模型名称>
创建多个本地代理以协作完成任务:
agents = [
{"label": "架构师", "model": "ollama/gemma3:12b", "task": "设计系统架构"},
{"label": "程序员", "model": "ollama/qwen2.5-coder:7b", "task": "实现核心逻辑"},
{"label": "审查员", "model": "ollama/llama3.1:8b", "task": "审查错误并提出改进建议"},
]
for a in agents:
sessions_spawn(task=a["task"], model=a["model"], label=a["label"])
如需自定义集成,可直接使用 Ollama API:
# 对话
curl $OLLAMA_HOST/api/chat -d '{
"model": "qwen3:4b",
"messages": [{"role": "user", "content": "你好"}],
"stream": false
}'
# 生成
curl $OLLAMA_HOST/api/generate -d '{
"model": "qwen3:4b",
"prompt": "天空为什么是蓝色的?",
"stream": false
}'
# 列出模型
curl $OLLAMA_HOST/api/tags
# 拉取模型
curl $OLLAMA_HOST/api/pull -d '{"name": "phi3:mini"}'
连接被拒绝?
- 检查 Ollama 是否正在运行:ollama serve
- 确认 OLLAMA_HOST 设置正确
- 对于远程服务器,确保防火墙允许端口 11434
模型无法加载?
- 检查显存(VRAM):较大的模型可能需要卸载到 CPU 运行
- 先尝试较小的模型
响应缓慢?
- 模型可能在 CPU 上运行
- 使用更小的量化版本(例如 :7b 而非 :30b)
OpenClaw 子代理回退到默认模型?
- 确保 OpenClaw 配置中存在 ollama:default 认证配置
- 检查模型路径格式:ollama/模型名:标签