Ollama — 本地 LLM 部署
简介
Ollama 是最简单的本地 LLM 运行工具,一条命令即可运行 Llama、Qwen、ChatGLM 等开源模型,提供 OpenAI 兼容 API。
安装与启动
bash
# Windows/Mac/Linux 安装
# 访问 https://ollama.com 下载安装包
# 拉取模型
ollama pull qwen2:7b # 千问2 7B
ollama pull qwen2.5:7b # 千问2.5 7B
ollama pull llama3.1:8b # Llama 3.1 8B
ollama pull deepseek-r1:7b # DeepSeek R1 7B
# 运行
ollama run qwen2:7b
# 查看已安装模型
ollama listAPI 调用
python
from openai import OpenAI
# Ollama 兼容 OpenAI 接口
client = OpenAI(
api_key="ollama", # 任意字符串
base_url="http://localhost:11434/v1"
)
response = client.chat.completions.create(
model="qwen2:7b",
messages=[
{"role": "system", "content": "你是金融助手"},
{"role": "user", "content": "解释什么是 P/E 比率"}
]
)
print(response.choices[0].message.content)
# 流式输出
stream = client.chat.completions.create(
model="qwen2:7b",
messages=[{"role": "user", "content": "分析银行股投资价值"}],
stream=True
)
for chunk in stream:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)自定义模型(Modelfile)
dockerfile
# Modelfile
FROM qwen2:7b
# 设置系统提示词
SYSTEM """
你是专业的金融 AI 助手,专注于:
- 银行信贷风险分析
- 金融产品咨询
- 财务报表解读
回答要专业、准确,涉及投资建议时添加风险提示。
"""
# 调整参数
PARAMETER temperature 0.7
PARAMETER top_p 0.9
PARAMETER num_ctx 8192bash
# 创建自定义模型
ollama create finance-assistant -f Modelfile
ollama run finance-assistantDocker 部署
yaml
# docker-compose.yml
services:
ollama:
image: ollama/ollama
ports:
- "11434:11434"
volumes:
- ollama_data:/root/.ollama
# GPU 支持
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities: [gpu]
volumes:
ollama_data:与 LangChain 集成
python
from langchain_community.llms import Ollama
from langchain_community.chat_models import ChatOllama
# 聊天模型
llm = ChatOllama(model="qwen2:7b", temperature=0.7)
# 直接使用
response = llm.invoke("解释什么是资本充足率")
print(response.content)模型选择建议
| 场景 | 推荐模型 | 显存需求 |
|---|---|---|
| 快速问答 | qwen2:1.5b | 2GB |
| 通用对话 | qwen2:7b | 8GB |
| 代码生成 | deepseek-coder:6.7b | 8GB |
| 高质量推理 | qwen2:72b | 48GB |