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

Gradio导入AIGC大模型创建web端智能体聊天机器人,python(2)

Gradio导入AIGC大模型创建web端智能体聊天机器人,python(2)

选用这个大模型:

https://huggingface.co/HuggingFaceTB/SmolLM-1.7B-Instructicon-default.png?t=O83Ahttps://huggingface.co/HuggingFaceTB/SmolLM-1.7B-Instruct原因是该模型相对比较小(3~4GB),不必下载太多太大的模型文件(效果好些的大模型动辄几十GB甚至上百GB,参数多嘛),仅作跑通Gradio结合大模型制作聊天机器人示例。

import gradio as gr
from transformers import AutoModelForCausalLM, AutoTokenizercheckpoint = "HuggingFaceTB/SmolLM-1.7B-Instruct"
device = "cpu"  # "cpu" for CPU usage, "gpu" for GPU usage
tokenizer = AutoTokenizer.from_pretrained(checkpoint)
model = AutoModelForCausalLM.from_pretrained(checkpoint).to(device)def my_response(message, history):msgs = [{"role": "user", "content": message}]input_text = tokenizer.apply_chat_template(msgs, tokenize=False)print(input_text)inputs = tokenizer.encode(input_text, return_tensors="pt").to(device)outputs = model.generate(inputs, max_new_tokens=50, temperature=0.2, top_p=0.9, do_sample=True)result = tokenizer.decode(outputs[0])print(result)return resultdef mychat():gr.ChatInterface(my_response).launch()if __name__ == '__main__':mychat()

运行后,输出: Running on local URL:  http://127.0.0.1:7860

直接打开  http://127.0.0.1:7860

提问:

AIGC大模型回答:

Gradio快速部署构建AIGC的web应用 ,python-CSDN博客文章浏览阅读873次,点赞23次,收藏9次。webui-user.bat启动stable-diffusion-webui报错:RuntimeError: Torch is not able to use GPU,AIGC,Python。webui-user.bat启动stable-diffusion-webui报错:RuntimeError: Torch is not able to use GPU,AIGC,Python-CSDN博客。2、设置 - 系统 - 可选功能 - 更多Windows功能 - 启用或关闭Windows功能。https://blog.csdn.net/zhangphil/article/details/141999273

相关文章:

Gradio导入AIGC大模型创建web端智能体聊天机器人,python(2)

Gradio导入AIGC大模型创建web端智能体聊天机器人,python(2) 选用这个大模型: https://huggingface.co/HuggingFaceTB/SmolLM-1.7B-Instructhttps://huggingface.co/HuggingFaceTB/SmolLM-1.7B-Instruct原因是该模型相对比较小&am…...

PEM 格式

文章目录 1.简介2.格式和内容3.常见用途4.标准化5.示例参考文献 1.简介 .pem 文件扩展名代表“Privacy Enhanced Mail”,但它被用于比电子邮件更广泛的上下文中,主要关联于加密、SSL/TLS 和证书管理。PEM 格式是一种用于存储和发送加密信息的标准&#…...

Android前台服务如何在后台启动activity?

本来最近在开发一个app保活另外一个app的功能,方案介绍如下: 应用A 启动一个前台服务保活自己应用A 用grpc连接应用B(服务端)是否存活如果发现B不存活,则在服务中拉起B 这次没有做好调研,直接开始了开发工作,等grpc都…...

c#visionpro开发 方法统计

toolblock开发 vpp第二种简单加载方式 public Cognex.VisionPro.ToolBlock.CogToolBlock ToolBlock1;//初始化后实例化一个方法 //窗口运行程序内部 ToolBlock1 (CogToolBlock)CogSerializer.LoadObjectFromFile(“tjjc.vpp”); MessageBox.Show(“算法加载成功”);//复制一个…...

dedecms——四种webshell姿势

姿势一:通过文件管理器上传WebShell 步骤一:访问目标靶场其思路为 dedecms 后台可以直接上传任意文件,可以通过文件管理器上传php文件获取webshell 步骤二:登陆到后台点击【核心】--》 【文件式管理器】--》 【文件上传】将准备好…...

GO GIN 推荐的库

在使用 Go 和 Gin 框架进行 Web 开发时,有许多第三方库可以增强功能和提高开发效率。以下是一些常用的、与 Gin 搭配使用的库: 1. 数据处理与验证 go-playground/validator 用于结构体字段的验证,Gin 默认已经集成了它。它提供了丰富的验证…...

YOLOv9改进策略【卷积层】| GnConv:一种通过门控卷积和递归设计来实现高效、可扩展、平移等变的高阶空间交互操作

一、本文介绍 本文记录的是利用GnConv优化YOLOv9的目标检测方法研究。YOLOv9在进行目标检测时,需要对不同层次的特征进行融合。GnConv可以考虑更高阶的空间交互,能够更好地捕捉特征之间的复杂关系,从而增强特征融合的效果,提高模…...

如何在Linux下升级R版本和RStudio

一、升级R版本 在Linux上,R的安装通常通过包管理器完成。不同的Linux发行版(如Ubuntu、Debian、Fedora等)可能略有不同。下面以Ubuntu为例,介绍如何升级R版本。如果你使用其他发行版,步骤可能类似。 二.更新步骤 2.…...

npm安装时候报错certificate has expired

打开了一个很久没用的电脑,npm和node都装好了,安装包的时候一直报错 request to https://registry.npm.taobao.org/create-react-app failed, reason: certificate has expired而且先报错rollbackFailedOptional 然而npm没什么问题,是ssl过…...

CSP-J_S第一轮复习资料1·计算机硬件

下一章...

oracle 表的外键

表的外键 3.5.1表之间的三种关系 在数据库设计中,工作中经常会分析商业逻辑中的表的设计。在设计表的关系之前,需要先了解关系型数据库特点。关系数据库有如下特点: 关系型数据库采用了关系模型来组织数据的数据库。 关系型数据库的最大特点…...

加密与安全_优雅存储二要素(AES-256-GCM )

文章目录 什么是二要素如何保护二要素(姓名和身份证)加密算法分类场景选择算法选择AES - ECB 模式 (不推荐)AES - CBC 模式 (推荐)GCM(Galois/Counter Mode)AES-256-GCM简介AES-256-GCM工作原理安全优势 应用场景其他模式 和 敏感…...

【C++高阶】解锁C++的深层魅力——探索特殊类的奥秘

📝个人主页🌹:Eternity._ ⏩收录专栏⏪:C “ 登神长阶 ” 🤡往期回顾🤡:C 类型转换 🌹🌹期待您的关注 🌹🌹 ❀C特殊类 📒1. 不能被拷贝…...

Vue学习记录之三(ref全家桶)

ref、reactive是在 setup() 声明组件内部状态用的&#xff0c; 这些变量通常都要 return 出去&#xff0c;除了供 < template > 或渲染函数渲染视图&#xff0c;也可以作为 props 或 emit 参数 在组件间传递。它们的值变更可触发页面渲染。 ref &#xff1a;是一个函数&…...

第二十六篇——九地篇:九种形势的应对之道

目录 一、背景介绍二、思路&方案三、过程1.思维导图2.文章中经典的句子理解3.学习之后对于投资市场的理解4.通过这篇文章结合我知道的东西我能想到什么&#xff1f; 四、总结五、升华 一、背景介绍 地势的维度重新阐述了懂得人心的重要性&#xff0c;道久其归一为为别人。…...

学习记录:js算法(三十七): 搜索二维矩阵

文章目录 搜索二维矩阵我的思路网上思路 总结 搜索二维矩阵 给你一个满足下述两条属性的 m x n 整数矩阵&#xff1a; ● 每行中的整数从左到右按非严格递增顺序排列。 ● 每行的第一个整数大于前一行的最后一个整数。 给你一个整数 target &#xff0c;如果 target 在矩阵中&a…...

拥控算法BBR入门1

拥塞控制算法只与本地有关 一个TCP会话使用的拥塞控制算法只与本地有关。 两个TCP系统可以在TCP会话的两端使用不同的拥塞控制算法 Bottleneck Bandwidth and Round-trip time Bottleneck 瓶颈 BBR models the network to send as fast as the available bandwidth and is 2…...

[Python数据可视化]Plotly Express: 地图数据可视化的魅力

在数据分析和可视化的世界中&#xff0c;地图数据可视化是一个强大而直观的工具&#xff0c;它可以帮助我们更好地理解和解释地理数据。Python 的 Plotly Express 库提供了一个简单而强大的方式来创建各种地图。本文将通过一个简单的示例&#xff0c;展示如何使用 Plotly Expre…...

windows C++ 并行编程-PPL 中的取消操作(四)

并行模式库 (PPL) 中取消操作的角色、如何取消并行工作以及如何确定取消并行工作的时间。 运行时使用异常处理实现取消操作。 请勿在代码中捕捉或处理这些异常。 此外&#xff0c;还建议你在任务的函数体中编写异常安全的代码。 例如&#xff0c;可以使用获取资源即初始化 (RA…...

【数据结构】字符串与JSON字符串、JSON字符串及相应数据结构(如对象与数组)之间的相互转换

前言&#xff1a; 下面打印日志用的是FastJSON依赖库中的 Log4j2。依赖&#xff1a; <!-- Alibaba Fastjson --> <dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.80</version> …...

Linux链表操作全解析

Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表&#xff1f;1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...

利用ngx_stream_return_module构建简易 TCP/UDP 响应网关

一、模块概述 ngx_stream_return_module 提供了一个极简的指令&#xff1a; return <value>;在收到客户端连接后&#xff0c;立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量&#xff08;如 $time_iso8601、$remote_addr 等&#xff09;&a…...

Leetcode 3576. Transform Array to All Equal Elements

Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接&#xff1a;3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到&#xf…...

2025年能源电力系统与流体力学国际会议 (EPSFD 2025)

2025年能源电力系统与流体力学国际会议&#xff08;EPSFD 2025&#xff09;将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会&#xff0c;EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...

Java入门学习详细版(一)

大家好&#xff0c;Java 学习是一个系统学习的过程&#xff0c;核心原则就是“理论 实践 坚持”&#xff0c;并且需循序渐进&#xff0c;不可过于着急&#xff0c;本篇文章推出的这份详细入门学习资料将带大家从零基础开始&#xff0c;逐步掌握 Java 的核心概念和编程技能。 …...

网络编程(UDP编程)

思维导图 UDP基础编程&#xff08;单播&#xff09; 1.流程图 服务器&#xff1a;短信的接收方 创建套接字 (socket)-----------------------------------------》有手机指定网络信息-----------------------------------------------》有号码绑定套接字 (bind)--------------…...

C/C++ 中附加包含目录、附加库目录与附加依赖项详解

在 C/C 编程的编译和链接过程中&#xff0c;附加包含目录、附加库目录和附加依赖项是三个至关重要的设置&#xff0c;它们相互配合&#xff0c;确保程序能够正确引用外部资源并顺利构建。虽然在学习过程中&#xff0c;这些概念容易让人混淆&#xff0c;但深入理解它们的作用和联…...

MFC 抛体运动模拟:常见问题解决与界面美化

在 MFC 中开发抛体运动模拟程序时,我们常遇到 轨迹残留、无效刷新、视觉单调、物理逻辑瑕疵 等问题。本文将针对这些痛点,详细解析原因并提供解决方案,同时兼顾界面美化,让模拟效果更专业、更高效。 问题一:历史轨迹与小球残影残留 现象 小球运动后,历史位置的 “残影”…...

【实施指南】Android客户端HTTPS双向认证实施指南

&#x1f510; 一、所需准备材料 证书文件&#xff08;6类核心文件&#xff09; 类型 格式 作用 Android端要求 CA根证书 .crt/.pem 验证服务器/客户端证书合法性 需预置到Android信任库 服务器证书 .crt 服务器身份证明 客户端需持有以验证服务器 客户端证书 .crt 客户端身份…...

归并排序:分治思想的高效排序

目录 基本原理 流程图解 实现方法 递归实现 非递归实现 演示过程 时间复杂度 基本原理 归并排序(Merge Sort)是一种基于分治思想的排序算法&#xff0c;由约翰冯诺伊曼在1945年提出。其核心思想包括&#xff1a; 分割(Divide)&#xff1a;将待排序数组递归地分成两个子…...