Ollama本地部署LLM的使用与配置
请解释Ollama本地部署LLM的架构和使用方式。Ollama如何管理模型?Modelfile的配置选项有哪些?Ollama的REST API支持哪些接口?与llama.cpp和vLLM相比分别有什么不同?
回答
我是大山
Ollama是基于llama.cpp的轻量LLM部署工具。
模型管理:
ollama pull qwen2.5:7b # 下载模型
ollama list # 查看本地模型
ollama rm qwen2.5:7b # 删除模型
Modelfile(配置模板):
FROM qwen2.5:7b
# 系统提示
SYSTEM """你是一个AI助手。"""
# 参数设置
PARAMETER temperature 0.7
PARAMETER top_p 0.9
PARAMETER num_ctx 32768 # 上下文长度
# 模板
TEMPLATE """{{ .System }}
User: {{ .Prompt }}
Assistant: """
REST API:
- POST /api/generate (流式/非流式)
- POST /api/chat (对话)
- POST /api/embeddings
- POST /api/pull (下载模型)
对比: | 特性 | Ollama | llama.cpp | vLLM | |------|--------|-----------|------| | 安装使用 | 极简(一键) | 需编译 | 需pip安装 | | 多GPU | 有限 | 手动 | 原生支持 | | 推理速度 | 中 | 中 | 快(连续批处理) | | 适用 | 个人开发测试 | 嵌入式 | 生产服务 |