使用Ollama在本地安装、编写Python代码和建立对话
在本地使用Ollama进行AI模型的开发和测试是一个强大且灵活的解决方案。以下是详细的步骤指南,帮助你从安装到实际操作:
C:\pythoncode\new\ollamaclient.py
全部代码
import wx
import json
import requestsclass OllamaFrame(wx.Frame):def __init__(self):super().__init__(parent=None, title='Ollama Chat', size=(800, 600))# 创建主面板panel = wx.Panel(self)# 创建垂直布局vbox = wx.BoxSizer(wx.VERTICAL)# 创建输入框和发送按钮的水平布局hbox = wx.BoxSizer(wx.HORIZONTAL)# 创建多行文本框用于显示对话历史self.chat_history = wx.TextCtrl(panel, style=wx.TE_MULTILINE | wx.TE_READONLY | wx.HSCROLL,size=(-1, 400))# 创建输入框self.input_text = wx.TextCtrl(panel,style=wx.TE_MULTILINE,size=(-1, 100))# 创建发送按钮self.send_button = wx.Button(panel, label='发送')self.send_button.Bind(wx.EVT_BUTTON, self.on_send)# 将输入框和按钮添加到水平布局hbox.Add(self.input_text, proportion=1, flag=wx.EXPAND | wx.RIGHT, border=5)hbox.Add(self.send_button, flag=wx.EXPAND)# 将聊天历史和输入区域添加到垂直布局vbox.Add(self.chat_history, proportion=1, flag=wx.EXPAND | wx.ALL, border=5)vbox.Add(hbox, flag=wx.EXPAND | wx.LEFT | wx.RIGHT | wx.BOTTOM, border=5)# 设置面板的布局panel.SetSizer(vbox)# 初始化Ollama API的URLself.api_url = 'http://localhost:11434/api/generate'# 设置默认模型self.model = 'llama3.1' # 可以根据需要修改默认模型def on_send(self, event):# 获取输入文本prompt = self.input_text.GetValue()if not prompt.strip():return# 清空输入框self.input_text.SetValue('')# 在聊天历史中添加用户输入self.chat_history.AppendText(f'You: {prompt}\n')try:# 准备请求数据data = {'model': self.model,'prompt': prompt,'stream': False # 设置为False以获取完整响应}# 发送POST请求到Ollama服务器response = requests.post(self.api_url, json=data)if response.status_code == 200:# 解析响应result = response.json()answer = result.get('response', 'No response received')# 在聊天历史中添加AI的回复self.chat_history.AppendText(f'AI: {answer}\n\n')else:self.chat_history.AppendText(f'Error: Failed to get response (Status code: {response.status_code})\n\n')except Exception as e:self.chat_history.AppendText(f'Error: {str(e)}\n\n')# 滚动到最底部self.chat_history.ShowPosition(self.chat_history.GetLastPosition())def main():app = wx.App()frame = OllamaFrame()frame.Show()app.MainLoop()if __name__ == '__main__':main()
一、安装Ollama
1. 下载和安装
首先,从Ollama的官方网站或GitHub页面下载最新的安装文件。具体链接如下:
- Ollama官方页面
- Ollama GitHub页面
下载完成后,按照提示进行安装。
2. 启动Ollama服务
安装完成后,在终端中运行以下命令以启动Ollama服务:
ollama serve
此命令将启动Ollama服务,并在默认端口11434上运行。
二、下载和运行模型
1. 下载模型
在Ollama服务启动后,你可以下载所需的AI模型。例如,下载名为llama3.1
的模型:
ollama pull llama3.1
2. 运行模型
下载模型后,运行以下命令以启动模型:
ollama run llama3.1
三、编写Python代码与服务端连接
1. 安装依赖
确保你已经安装了requests
库,用于与Ollama API进行通信。如果没有安装,可以通过以下命令安装:
pip install requests
2. 编写Python代码
以下是一个简单的Python示例代码,用于与Ollama服务端进行交互:
import requests# 定义API的URL
url = "http://localhost:11434/api/v1/generate"# 定义请求的数据
data = {"model": "llama3.1","prompt": "告诉我关于量子计算的基本原理。"
}# 发送POST请求
response = requests.post(url, json=data)# 处理响应
if response.status_code == 200:print(response.json()["text"])
else:print(f"Error: {response.status_code}")
这个代码示例发送一个POST请求给Ollama服务端,并输出模型的响应。
四、客户端与服务端的连接
1. 确保服务端运行
在使用客户端之前,确保Ollama服务端正在运行。你可以在终端中运行ollama serve
命令以启动服务。
2. 设置客户端
在客户端中设置API的URL和端口,以确保可以正确连接到服务端。
3. 建立对话
通过发送请求和处理响应,可以建立与模型的对话。每次发送新的提示并获取响应,形成一个完整的对话流。
运行结果
希望这篇博客能帮助你顺利使用Ollama进行本地安装、编写Python代码以及建立对话。如果你有其他问题或需要进一步的帮助,请随时告诉我。祝你使用愉快!😊