AI
人工智能相关文章
Ollama本地部署:开源大模型的私有化运行指南
一、Ollama概述
1.1 什么是Ollama
Ollama是一个简化本地大模型运行的工具,支持:
- 一键部署开源大模型
- 丰富的模型库
- GPU加速支持
- OpenAI兼容API
1.2 支持的模型
Llama 3 (8B, 70B)
Mistral (7B)
Qwen (7B, 14B)
CodeLlama
Phi-3
Gemma
二、安装配置
2.1 macOS/Linux安装
# 安装Ollama curl -fsSL https://ollama.com/install.sh | sh # 验证安装 ollama --version
2.2 Windows安装
从 https://ollama.com/download 下载安装包
2.3 GPU支持
# NVIDIA GPU ollama serve # 查看GPU使用 nvidia-smi
三、模型管理
3.1 下载模型
# 下载Llama 3 ollama pull llama3 # 下载Mistral ollama pull mistral # 下载Qwen ollama pull qwen # 查看已下载模型 ollama list
3.2 自定义模型
# 从Modelfile创建 ollama create my-model -f Modelfile # Modelfile示例 FROM mistral PARAMETER temperature 0.7 PARAMETER top_p 0.9 SYSTEM "你是一个专业的技术顾问"
四、API使用
4.1 命令行交互
# 交互式对话 ollama run llama3 # 单次请求 ollama generate --model llama3 "解释什么是量子计算"
4.2 REST API
# 聊天接口
curl http://localhost:11434/api/chat -d '{
"model": "llama3",
"messages": [
{"role": "user", "content": "你好"}
]
}'
# 生成接口
curl http://localhost:11434/api/generate -d '{
"model": "llama3",
"prompt": "写一个Python快速排序"
}'4.3 Python SDK
import ollama
# 聊天
response = ollama.chat(model='llama3', messages=[
{'role': 'user', 'content': '你好'}
])
print(response['message']['content'])
# 生成
response = ollama.generate(model='llama3', prompt='解释REST API')
print(response['response'])五、性能优化
5.1 模型量化
# 量化级别 # q2_K: 2bit量化,占用小 # q4_0: 4bit量化,推荐 # q5_K_M: 5bit量化,质量较好 ollama pull llama3:70b-q4_0
5.2 GPU配置
# 查看GPU信息 ollama ps # 设置GPU层数 OLLAMA_NUM_GPU=50 ollama run llama3
六、Ollama作为OpenAI替代
from openai import OpenAI
client = OpenAI(
base_url="http://localhost:11434/v1",
api_key="ollama" # 不需要真实key
)
response = client.chat.completions.create(
model="llama3",
messages=[{"role": "user", "content": "你好"}]
)
print(response.choices[0].message.content)七、总结
Ollama让本地大模型运行变得简单:
1. 一键部署:不需要复杂的配置
2. 模型丰富:支持主流开源模型
3. API兼容:可直接替换OpenAI
4. GPU加速:充分利用显卡