当前位置:首页>python>手把手教你!部署本地模型+Python 自制专属自己的 AI 聊天搭子

手把手教你!部署本地模型+Python 自制专属自己的 AI 聊天搭子

  • 2026-09-10 06:34:05
手把手教你!部署本地模型+Python 自制专属自己的 AI 聊天搭子
前面我们已经介绍了关于AI开发相关环境搭建:
保姆级 AI 开发环境搭建|Python+PyCharm+ModelScope 模型部署
使用Python环境结合免费的开源魔搭社区下载模型到本地。今天我们来使用下载好的模型搭建一个属于自己的聊天“Chat”,后续再扩展功能加入RAG,让你的智能聊天搭子更懂你的哦。

一、CustomTkinter 现代化 Python GUI 开发库

CustomTkinter(简称CTk)是基于 Python 标准 GUI 库Tkinter的现代化扩展库,由 Tom Schimansky 开发,提供美观、可定制、跨平台的 UI 组件,让开发者轻松创建符合当代设计风格的桌面应用。

# 安装

pip install customtkinter

示例代码:
def __init__(self):super().__init__()# 窗口基础设置self.title("本地Qwen1.5流式对话工具")self.geometry("800x600")self.grid_columnconfigure(1, weight=1)self.grid_rowconfigure(1, weight=1)# 模型变量(全局复用,只加载一次)self.model = Noneself.tokenizer = None# 流式输出消息队列,用于主线程更新UIself.stream_queue = queue.Queue()self.is_generating = False# 1. 对话展示框self.chat_text = ctk.CTkTextbox(self, wrap="word")self.chat_text.grid(row=1, column=0, columnspan=2, padx=10, pady=10, sticky="nsew")self.chat_text.configure(state="disabled")# 2. 输入框self.input_box = ctk.CTkEntry(self, width=600, placeholder_text="输入你的问题...")self.input_box.grid(row=2, column=0, padx=10, pady=(0,10), sticky="ew")self.input_box.bind("<Return>", self.send_msg)# 3. 发送按钮self.send_btn = ctk.CTkButton(self, text="发送", command=self.send_msg)self.send_btn.grid(row=2, column=1, padx=(0,10), pady=(0,10))# 加载模型(单独方法,只运行一次)self.load_model()# 启动主线程UI刷新循环,处理流式输出self.update_stream_ui()

二、Torch 简介      

torch 是 PyTorch 的核心模块,是 Facebook 开源的深度学习框架,专门用于机器学习、神经网络、AI 模型训练(大模型、图像、语音、LLM 都靠它)。
Local 大模型(Qwen、Llama):全部基于 torch 运行;ModelScope/Ollama 本地部署:底层依赖 torch 做推理;

# 导入包

import torch

PyCharm会自动识别需要安装torch:
点击安装即可,需等待几分钟下载安装完成。
安装过程比较长,耐心等待。。。

三、AutoModelForCausalLM, AutoTokenizer      

导入阿里 ModelScope(魔搭)平台大语言模型标准语句,专门用来加载 Qwen、Llama、Baichuan 等文本生成大模型。

# 加载包

from modelscope import AutoModelForCausalLM, AutoTokenizer

  • AutoTokenizer:自动加载对应模型的分词器,负责文本编码、解码
  • AutoModelForCausalLM:自动加载自回归生成模型(对话 / 续写大模型专用)
示例代码:
# ========== 独立模型加载方法 ==========def load_model(self):"""单独加载本地模型与分词器,仅初始化时执行一次"""try:self.append_text("系统:正在加载本地模型,请稍候...")self.model = AutoModelForCausalLM.from_pretrained(            model_path,torch_dtype="auto",# device_map="auto",trust_remote_code=True)self.tokenizer = AutoTokenizer.from_pretrained(model_path)self.append_text("系统:模型加载完成,可以开始对话!\n")except Exception as e:self.append_text(f"系统:模型加载失败!错误信息:{str(e)}\n")

✅完整效果展示:

已关注
关注
重播 分享 赞
输入问题后,本地模型会实时流式生成 AI 回答。到这里,你的第一个本地 AI 桌面应用就开发完成了。完整源码可前往我的 GitHub 仓库获取:

https://github.com/tongtongge/Python-AI

往期回顾

#CustomTkinter  #torch #AutoModelForCausalLM 

点点关注,点点爱心

最新文章

随机文章