Python+Ollama搭建聊天机器人(可一键启动)

目录

一、任务和电脑环境要求

任务要求

环境要求 

二、程序编写

Ollama启动脚本

开启终端新窗口脚本:

 主程序(聊天窗口的实现)

三、脚本运行

四、运行结果


代码已经上传gitcode:

https://gitcode.com/m0_50313048/Ollama_bot/tree/main

一、任务和电脑环境要求

任务要求

  1. 设计并实现一个用户友好的Python GUI,允许用户通过图形界面轻松操作和管理聊天机器人。
  2. 集成Ollama聊天机器人服务,确保用户可以通过该GUI快速启动聊天机器人,并进行实时对话。
  3. 简化用户体验,让用户只需点击一个按钮即可完成聊天机器人的开启和对话过程,无需了解背后的技术细节。
  4. 确保系统的稳定性和可靠性,包括处理网络异常、服务器响应失败等情况,保证用户能有一个流畅的使用体验。

环境要求 

本程序要求电脑上已经配置好python3和Ollama,并用Ollama下载好一个模型。

Ollama下载和配置:Ollama下载安装教程-CSDN博客

二、程序编写

wx是Python的GUI库,可以用来创建图形用户界面(GUI)程序。安装代码如下:

pip install wxPython

Ollama启动脚本

首先,我们需要编写Ollama启动的脚本,这里我采用打开终端的方式来启动Ollama服务。

这里我用到了subprocess模块。

subprocess是 Python 标准库中的一个模块,它允许你生成新的进程、连接到它们的输入/输出/错误管道,并获得它们的返回码。这个模块旨在替代旧的os.system(), os.spawn*(), os.popen*()等等,提供更加灵活和强大的接口来启动和与外部命令或程序进行交互。

ollama_server_start.py:

# _*_ coding: utf-8 _*_
'''
author:小龙ssss
date: 2025/02/06
'''
import subprocess
def start_ollama_service():
    """
    启动Ollama服务。

    假设Ollama服务可通过运行一个名为ollama_server的可执行文件启动。
    根据实际情况修改executable_path变量中的路径。
    """
    executable_path = "ollama"  # 修改为实际的可执行文件路径

    try:
        # 使用subprocess.Popen来启动服务,shell=True允许在shell中执行命令
        process = subprocess.Popen([executable_path, "serve"], shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)

        # 打印启动成功的消息
        print("Ollama服务正在启动...")

        # 可选:打印服务的标准输出和错误信息
        stdout, stderr = process.communicate()
        if stdout:
            print(f"标准输出:\n{stdout

你可能感兴趣的:(python,开发语言,语言模型)