Skip to content

本地 LLM (Ollama)

KaaS 兼容任何 OpenAI 兼容的 API,包括 Ollama — 完全本地化的私有 LLM 推理服务。本指南介绍如何将 Ollama 配置为 KaaS 的 LLM 后端。

前置条件

  • 至少 8 GB 内存的机器(大模型建议 16 GB+)
  • 已通过 Docker 或 CLI 安装 KaaS

第 1 步:安装 Ollama

macOS:

bash
brew install ollama

Linux:

bash
curl -fsSL https://ollama.ai/install.sh | sh

验证安装:

bash
ollama --version

第 2 步:启动 Ollama

bash
ollama serve

默认情况下,Ollama 监听 http://localhost:11434。保持后台运行(Linux 上可用 systemctl enable ollama 设置自启动)。

第 3 步:拉取模型

选择并下载模型。对于知识编译任务,建议使用 8B+ 参数的模型:

bash
# 推荐:质量与速度的平衡
ollama pull llama3

# 其他选择
ollama pull mistral
ollama pull qwen2
ollama pull gemma2

验证模型已就绪:

bash
ollama list

第 4 步:配置 KaaS

通过环境变量将 KaaS 指向 Ollama 端点:

Docker:

bash
docker run -d --name kaas \
  -p 8080:8080 \
  -v ./data:/app/data \
  -e LLM_BASE_URL=http://host.docker.internal:11434/v1 \
  -e LLM_MODEL=llama3 \
  -e LLM_API_KEY=ollama \
  kaas

CLI:

bash
export LLM_BASE_URL="http://localhost:11434/v1"
export LLM_MODEL="llama3"
export LLM_API_KEY="ollama"    # Ollama 会忽略此值,但 KaaS 需要非空值
kaas serve

或在 etc/kaas.toml 中配置:

toml
[llm]
api_key = "ollama"
base_url = "http://localhost:11434/v1"
model = "llama3"

WARNING

在 Docker 中运行 KaaS 时,使用 host.docker.internal(macOS/Windows)或 172.17.0.1(Linux)代替 localhost 来访问宿主机上的 Ollama。

第 5 步:验证连接

启动 KaaS 后,检查是否能连通 Ollama:

bash
# 快速测试 — 直接调用 Ollama 的 OpenAI 兼容端点
curl http://localhost:11434/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{"model": "llama3", "messages": [{"role": "user", "content": "hello"}]}'

如果收到流式响应,说明 Ollama 已就绪。打开 http://localhost:8080 并提交内容,验证端到端的编译流程是否正常。

性能考量

模型大小内存需求编译速度质量
7-8B8 GB适合大多数场景
13-14B16 GB中等更好的提取精度
70B+48 GB+最佳质量,需要 GPU

建议:

  • 最低可用llama3(8B)— 速度与质量的良好平衡。
  • 更高质量llama3:70bqwen2:72b — 没有 GPU 时显著更慢。
  • GPU 加速:Ollama 在检测到 GPU 时自动使用(NVIDIA、Apple Silicon),无需额外配置。
  • 摘要模型:对于大型语料库,可以为摘要任务设置更小/更快的模型:
bash
export LLM_SUMMARIZE_MODEL="llama3"   # 用较小模型处理摘要
export LLM_MODEL="qwen2:72b"          # 用较大模型处理主编译

故障排查

现象原因解决方法
连接被拒绝Ollama 未运行执行 ollama serve
模型未找到模型未拉取执行 ollama pull <model>
响应极慢模型超出内存容量使用更小的模型或添加 GPU
Docker 无法访问 Ollama主机名错误使用 host.docker.internal172.17.0.1