当前位置: 首页 > news >正文

北京沙河教做网站的山东省济南市莱芜区

北京沙河教做网站的,山东省济南市莱芜区,网站建设公司做的网站,营销型网站的网址​一、需求描述 实战一是使用了python代码实现大模型的问答交互。本次实战为大模型的问答交互设计了一个网页端的交互界面,可以用于开发各种自然语言处理应用,如对话系统开发(智能客服、聊天机器人、问答系统等)。 效果图 ​二、…

​一、需求描述

实战一是使用了python代码实现大模型的问答交互。本次实战为大模型的问答交互设计了一个网页端的交互界面,可以用于开发各种自然语言处理应用,如对话系统开发(智能客服、聊天机器人、问答系统等)。

效果图

​二、实现思路

总体思路

  1. 程序启动时加载模型
  2. 用户通过网页端的界面输入问题
  3. 系统调用模型回复问题
  4. 将模型的回复以界面的形式展示给用户

2.1 导入依赖库

import torch
from modelscope import AutoTokenizer, AutoModel, snapshot_download
import gradio as gr
  • torch: PyTorch深度学习框架,用于处理张量和神经网络;
  • modelscope: 由阿里巴巴达摩院推出的开源模型库;
    • AutoTokenizer: ModelScope 库的类,分词器应用场景包括自然语言处理(NLP)中的文本分类、信息抽取、问答、摘要、翻译和文本生成等任务。它通过提供一个统一的接口,使得开发者可以快速且方便地加载和使用不同的预训练模型,而不需要深入了解每个模型的细节‌;
    • AutoModel: ModelScope 库的类,允许用户在不知道具体模型细节的情况下,根据给定的模型名称或模型类型自动加载相应的预训练模型;
    • snapshotdownload: ModelScope 提供的一个函数,便于下载模型文件;
  • gradio: 用于创建Web界面的库,可以快速构建机器学习模型的演示界面。

2.2 对话框聊天功能

def chat(message, history):response, _history = model.chat(tokenizer, message, history=[])return response
  • chat: 定义聊天函数,接收用户消息和聊天历史;
  • response: 使用模型生成回复,并返回模型的回复。

2.3 加载模型

model_dir = snapshot_download("ZhipuAI/chatglm3-6b", revision="v1.0.0")
tokenizer = AutoTokenizer.from_pretrained(model_dir, trust_remote_code=True)with torch.no_grad():model = AutoModel.from_pretrained(model_dir, trust_remote_code=True).half().cuda()
model = model.eval()
  • model_dir: 模型下载后的存储路径。使用snapshot_download 函数下载指定版本的模型;
  • AutoTokenizer.frompretrained: 加载预训练的分词器。其中,trustremotecode=True 表示信任远程代码;
  • with torch.nograd():表示在这个上下文中不计算梯度,以节省内存和计算资源;
    • AutoModel.frompretrained:加载预训练的模型,转换为半精度(half),并将模型移至 GPU(cuda)运行;
  • model.eval(): 模型设置为评估模式。

2.4 Gradio界面设置

demo = gr.ChatInterface(fn=chat,title="聊天机器人",description="这是一个聊天机器人",examples=["你好", "请介绍一下你自己", "你能做什么"],theme="soft"
)
  • gr.Interface():调用Gradio的Interface类,创建聊天界面;
    • fn=chat:指定处理函数为chat聊天函数,见2.2;
    • title:标题为“聊天机器人”;
    • description:描述为"这是一个聊天机器人";
    • examples:提供示例问题,为“你好”、“请介绍一下你自己"和"你能做什么”;
    • theme:使用了"soft"主题。

2.5 启动服务

demo.launch()
  • demo.launch():启动Web服务,默认在本地运行

三、完整代码

import torch
from modelscope import AutoTokenizer, AutoModel, snapshot_download
import gradio as grdef chat(message, history):response, _history = model.chat(tokenizer, message, history=[])return responseif __name__ == "__main__":# 加载模型model_dir = snapshot_download("ZhipuAI/chatglm3-6b", revision="v1.0.0")tokenizer = AutoTokenizer.from_pretrained(model_dir, trust_remote_code=True)with torch.no_grad():model = AutoModel.from_pretrained(model_dir, trust_remote_code=True).half().cuda()model = model.eval()# 创建 Gradio 界面demo = gr.ChatInterface(fn=chat,title="聊天机器人",description="这是一个聊天机器人",examples=["你好", "请介绍一下你自己", "你能做什么"],theme="soft")# 启动服务demo.launch()

四、效果展示

在这里插入图片描述

http://www.dtcms.com/a/601882.html

相关文章:

  • 长沙建长沙建网站公司给wordpress程序提速
  • 多国语言编译库 | 适用于全球化开发的高效工具
  • C语言编译系统 | 如何高效构建和使用C语言编译系统
  • 手机建设银行网站首页网站开发app开发主营业务
  • 11月12日星期三今日早报简报微语报早读
  • 360水滴摄像头重新设置摄像头wifi
  • Notepad++ 编译 C 语言的使用方法与技巧
  • 编译C语言的软件 | 轻松高效的C语言编译工具介绍
  • 企业网站设计特点建设银行网站怎么打印明细
  • C语言练习题——判断水仙花数(0-100000)
  • 广州好的网站建设昆明微网站搭建哪家好
  • 找国内外贸公司的网站深圳自己做网站
  • 视频融合平台EasyCVR:云台控制与语音对讲赋能远程交互式视频监控新场景
  • 做设计私活的网站php网站建设费用
  • next.js(二)——从react到next.js
  • Android开发自学笔记 --- 构建简单的UI视图
  • ubuntu 升级mysql由mysql5.7.42 升级到8.4.0
  • 项目实战Now in Android:项目模块说明
  • 自己做店铺网站宁波建设有限公司
  • 激活函数是什么,神经网络中为什么要有激活函数
  • 全面且详细地解析神经网络中梯度下降(Gradient Descent, GD)的原理
  • 软考 系统架构设计师历年真题集萃(200)—— 2025年11月系统架构设计师真题3
  • 上海网站建设公司sky建筑装修装饰工程内容
  • 网站建设平台接单周到的商城网站建设
  • MySQL快速入门——使用C_C++连接
  • 机器人教师的课堂管理权限边界讨论:会替代人类教师吗?
  • 南昌网站seo技术厂家网站建设flash
  • 库存周转天数、库存周转率和安全库存如何计算和设定?
  • 福建省建设监理公司网站wordpress 变小程序
  • AI动画创作新工具OiiOii:多Agent系统详解与应用实践