Python实战:用Ollama API打造你的本地AI聊天机器人(附完整代码)
在当今AI技术飞速发展的时代,拥有一个本地运行的AI聊天机器人不仅能保护隐私,还能提供更灵活的定制化服务。本文将带你从零开始,利用Ollama的Python API构建一个功能完善的本地AI聊天系统,涵盖多轮对话管理、异步调用优化和流式输出等核心功能。
1. 环境准备与基础配置
在开始之前,确保你的开发环境满足以下要求:
- Python 3.8或更高版本
- 已安装并运行Ollama服务(默认运行在http://localhost:11434)
- 基础Python开发环境(推荐使用virtualenv或conda)
首先安装Ollama的Python客户端库:
pip install ollama
验证安装是否成功:
import ollama
print(ollama.list()) # 列出本地可用模型
如果没有模型,可以通过命令行拉取一个基础模型:
ollama pull llama2
提示:根据硬件配置选择合适的模型,较小显存的设备建议使用7B参数以下的模型版本。
2. 构建基础聊天功能
让我们从最简单的聊天交互开始。以下代码实现了一个基本的问答功能:
from ollama import chat
def simple_chat(model_name: str = "llama2"):
messages = [
{"role": "system", "content": "你是一个乐于助人的AI助手"},
{"role": "user", "content": "你好!"}
]
response = chat(model=model_name, messages=messages)
print("AI:", response["message"]["content"])
while True:
user_input = input("你: ")
if user_input.lower() in ["退出", "exit"]:
break
messages.append({"role": "user", "content": user_input})
response = chat(model=model_name, messages=messages)
ai_response = response["message"]["content"]
print("AI:", ai_response)
messages.append({"role": "assistant", "content": ai_response})
if __name__ == "__main__":
simple_chat()
这个基础实现有几个关键点需要注意:
- 消息结构:Ollama的chat API遵循类似OpenAI的消息格式,包含system、user和assistant三种角色
- 上下文维护:每次交互都将历史对话记录在messages列表中
- 退出机制<

&spm=1001.2101.3001.5002&articleId=154969086&d=1&t=3&u=64bb7a57ab054063b76b0deea6090e89)

被折叠的 条评论
为什么被折叠?



