本文档说明如何让 Secbot 使用本地 Ollama 作为推理后端。
- 打开 https://ollama.ai/download
- 下载并安装 Windows 版本
- 安装后通常会自动拉起本地服务
curl -fsSL https://ollama.ai/install.sh | sh当前代码默认使用:
ollama pull gemma3:1b如果你希望更强的本地模型,也可以改成自己常用的模型名,并同步更新 .env 里的 OLLAMA_MODEL。
ollama pull nomic-embed-textollama list
ollama run gemma3:1b "你好"如果 ollama list 能返回模型列表,说明本地服务基本可用。
在项目根目录或发布包目录创建 .env:
LLM_PROVIDER=ollama
OLLAMA_BASE_URL=http://localhost:11434
OLLAMA_MODEL=gemma3:1b
OLLAMA_EMBEDDING_MODEL=nomic-embed-text说明:
- 当前仓库没有根目录
env.example/.env.example - 请直接手动创建
.env
python main.py
# 或
uv run secbotuv run secbot --backend
# 或
python -m router.main当前项目的多个前端都会调用:
GET /api/system/ollama-models
这个接口会:
- 检测
OLLAMA_BASE_URL是否可连通 - 返回本地可用模型列表
- 若默认模型缺失,尝试后台拉取并返回
pulling_model
因此当你在 /model、移动端或桌面端看到 Ollama 模型列表时,数据来源就是这里。
请检查:
- Ollama 应用或
ollama serve是否已启动 .env中的OLLAMA_BASE_URL是否正确- 11434 端口是否被防火墙或代理影响
ollama list
ollama pull gemma3:1b如果你把 OLLAMA_MODEL 改成了别的名字,也要先手动 pull 对应模型。
可尝试:
- 换更小的模型
- 降低上下文大小
- 使用有 GPU 支持的环境
先直接访问:
curl http://127.0.0.1:8000/api/system/ollama-models如果接口返回了 error 字段,说明是 Ollama 服务或地址问题,而不是前端渲染问题。