🖥️ 一、命令行交互(CLI)
✅ 基础语法
ollama run <模型名>
系统会自动启动模型并进入对话模式:
$ ollama run llama2
>>> 你好,请问你是谁?
← 我是由 Meta 提供的大语言模型 LLaMA2,我可以回答你的问题。
🔄 退出交互
- 使用快捷键:
Ctrl + C
🎯 支持多轮对话(上下文保留)
在单次 run
会话中,Ollama 会自动保持上下文:
>>> 今天的天气怎么样?
>>> 可以推荐一些旅游的地方吗?
🌐 二、本地 REST API 交互
Ollama 内置 HTTP 服务,启动服务:
ollama serve
📡 使用 CURL 示例:
curl http://localhost:11434/api/generate \
-d '{
"model": "llama2",
"prompt": "介绍一下长城的历史",
"stream": false
}'
返回结构(JSON):
{
"model": "llama2",
"created_at": "2025-04-17T12:00:00Z",
"response": "长城是中国古代最伟大的建筑工程之一...",
"done": true
}
💡 参数详解:
参数名 | 类型 | 说明 |
---|---|---|
model | 字符串 | 使用的模型名(必须已下载) |
prompt | 字符串 | 提示词或提问内容 |
stream | 布尔 | 是否逐词输出(适合前端渐显效果) |
options | 字典对象 | 可选,传入 temperature , top_p 等 |
🧠 三、自定义角色交互(Modelfile)
你可以通过 Modelfile
设定角色与背景:
示例:
FROM gemma
SYSTEM "你是一个资深程序员,请用简洁专业的术语回答问题。"
构建并交互:
ollama create coder-bot -f Modelfile
ollama run coder-bot
模型将以系统提示为“人格”,持久存在。
🧩 四、前端 WebUI 交互方式(推荐)
1. Open WebUI (最推荐)
- 地址:https://github.com/open-webui/open-webui
- 安装简单,一键对接 Ollama
- 界面美观,可保存对话历史
2. LM Studio
- 地址:https://lmstudio.ai
- 图形化本地模型管理与对话工具
- 支持连接 Ollama(需设置路径)
3. GPT UI / AnyGPT / ChatUI
- 轻量前端页面,对接 REST API 即可使用
🔧 五、交互增强技巧(高级)
✅ 自定义上下文预置(使用 prompt 模板)
通过 Modelfile
的 template
字段:
FROM llama2
TEMPLATE """You are a helpful AI.
User: {{ .Prompt }}
AI:"""
✅ 多轮上下文管理(手动传递)
{
"model": "qwen",
"prompt": "你叫什么名字?",
"context": [ ... ]
}
你可以自己缓存对话历史上下文,并不断追加到新请求中实现多轮对话(RAG、Agent 场景适用)。
🧠 六、Ollama 与插件交互(实验性)
可使用 Ollama 与:
- 🧭 LangChain(提示管理、工具链调用)
- 📚 LlamaIndex(知识库问答)
- 🗂️ AutoGen(多智能体协作)
- 🧾 文档对话(如 PDF 阅读助手)
✅ 推荐使用方式对比
方式 | 是否推荐 | 特点 |
---|---|---|
CLI 命令行 | ✅ 常用 | 快速测试、开发调试 |
REST API | ✅ 推荐 | 易集成前端/后端、可构建应用 |
Modelfile 定义角色 | ✅ 强烈推荐 | 自定义人格与上下文提示,适用于生产部署 |
Web UI 工具 | ✅ 推荐 | 用户体验好,适合非开发用户 |
发表回复