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

电子商务网站建设公网页设计个人总结

电子商务网站建设公,网页设计个人总结,小说网站怎么建设的,作文网小学一、背景 如果你是做LLM应用开发的#xff0c;特别是做后端开发#xff0c;你一定会遇到怎么快速写一个聊天UI界面来调试prompt或agent的问题。这时候的你可能在苦恼中#xff0c;毕竟react.js, next.js, css, html也不是每个人都那么熟练#xff0c;对吧#xff1f;即使…一、背景 如果你是做LLM应用开发的特别是做后端开发你一定会遇到怎么快速写一个聊天UI界面来调试prompt或agent的问题。这时候的你可能在苦恼中毕竟react.js, next.js, css, html也不是每个人都那么熟练对吧即使你是做前端开发的你也可以尝试一下Gradio哪天有人给你提了一个调试界面的需求原本要半天的工作现在只需要十分钟了多余的时机用来学习或享受生活多美或者你让后端自己用Gradio搞一个嘿嘿。 类似于Gradio这种低代码快速搭建web ui的方案中比较成熟还有 Streamlit、Chainlit和dash 等。这些方案都可以快速实现 ChatGPT/Claude 类似的聊天机器人或者文档机器人感兴趣的可以看看找适合自己的。我个人喜欢简单直接所以选择了Gradio。 二、Gradio介绍 我认为Gradio 是现有几个低代码web UI框架当中最简单和容易上手的一个。无论是从安装部署还是学习使用对新人都非常友好。Gradio 自己的价值宣传也是强调易用性旨在让非技术用户也能与复杂模型进行交互。是的它可不是只适用于LLM的其他方面感兴趣的大家可以进一步去研究我这里只聊创建用于测试和验证 LLM 应用的聊天界面。 Gradio安装起来非常简单只需要执行 pip install gradio 我们可以看看官网给出的hello world 例子 import gradio as gr def greet(name):return Hello name ! demo gr.Interface(fngreet, inputstext, outputstext) demo.launch() 把上边代码保存到 gradio_hello.py 文件中然后执行以下命令 python gradio_hello.py 如果一切正常没有报错的话你打开 http://localhost:7860 可以看到以下界面 如果你在输入框输入“前行的七哥”你会看到输出框的输出如下 代码中greet(name)函数的输入参数name会捕获到输入框的输入greet(name)函数的输出会填充到输出框就是这么简单。 三、使用Gradio搭建聊天界面 只需要以下34行代码就可以实现聊天界面别看下边挺多行的都是注释。 import random import gradio as gr用户输入后的回调函数 random_response 参数 message: 用户此次输入的消息 history: 历史聊天记录比如 [[use input 1, assistant output 1],[user input 2, assistant output 2]] ​ 返回值输出的内容def random_response(message, history):return random.choice([Yes, No])gr.ChatInterface(random_response).launch() 生成出来的界面如下 当然你也可以自己通过基础组件自定义聊天界面比如 import gradio as gr import random import time ​ with gr.Blocks() as demo:chatbot gr.Chatbot() # 对话框msg gr.Textbox() # 输入文本框clear gr.ClearButton([msg, chatbot]) # 清除按钮 ​用户输入后的回调函数 respond参数message: 用户此次输入的消息history: 历史聊天记录比如 [[use input 1, assistant output 1],[user input 2, assistant output 2]]返回值第一个设置输入框的值输入后需要重新清空所以返回空字符串第二个最新的聊天记录def respond(message, chat_history):bot_message random.choice([How are you?, I love you, Im very hungry])chat_history.append((message, bot_message))time.sleep(2)return , chat_history ​# 绑定输入框内的回车键的响应函数msg.submit(respond, [msg, chatbot], [msg, chatbot]) ​ demo.launch() 生成的界面如下 四、挂载到fastapi实现的后端 如果你的后端是基于fastapi实现的你希望把Gradio接入到你的项目中那也非常方便核心代码如下 app FastAPI() chat_ui gr.ChatInterface(agent_framework_run) app gr.mount_gradio_app(app, chat_ui, path/gradio_chat) 加入以上代码后你跟之前一样启动你的fastapi后端然后访问 http://you.domain.name/gradio_chat 你就可以看到一个聊天机器人界面。 如果你需要多个不同的聊天界面调试不同的功能你只需要再增加一个ui和响应函数就行比如 app FastAPI() chat_ui gr.ChatInterface(agent_framework_run) app gr.mount_gradio_app(app, chat_ui, path/gradio_chat) ​ tool_ui gr.ChatInterface(agent_recommend_tool) app gr.mount_gradio_app(app, io, path/gradio_tool) 访问 http://you.domain.name/gradio_tool 就可以看到新增的工具界面 tool_ui。 五、总结 Gradio是我认为这么多低代码web UI 中最简单的一个上手非常容易用来展示和验证应用远远足够了。我目前也是用Gradio验证智能客服机器人的一些功能。学新东西建议都从最简单的入手不满足再去研究更复杂的。循序渐进地学习更容易持续也会更有成就感。 Gradio 官网的文档和教程都非常清晰和易懂还有一个在线的编辑器给你快速体验效果。如果有需要强烈建议尝试一下。 Gradio官网地址https://www.gradio.app/ 我目前正在开发一款基于自研的LLM agent framework 的智能客服产品它具有私有知识问答意图引导、信息收集、情绪安抚、内部系统融合、LUI与GUI 融合、数据孤岛打通、人工接管、数据分析与洞察、异常监控等功能。 欢迎对prompt编写、LLM应用开发与落地、智能客服产品等等感兴趣的朋友加我微信一起交流共同前行。 下边是我最近写的用来调 agent framework 的界面代码供大家参考 from fastapi import FastAPI, Request import uvicorn from datetime import datetime, time, date import gradio as gr from agent import agent_framework, agent_main CUSTOM_PATH /agent_bot ​ app FastAPI() ​ with gr.Blocks() as chat_ui:chatbot gr.Chatbot(show_labelFalse, height600, avatar_images[https://hong.greatdk.com/_next/image?url%2Fself.jpgw1920q75, https://hong.greatdk.com/_next/image?url%2Fnpc.jpgw1920q75])with gr.Row() as input_row:msg_textbox gr.Textbox(show_labelFalse, scale15)submit_btn gr.Button(value发送, scale1) ​clear_btn gr.ClearButton([msg_textbox, chatbot],value清除会话) ​def respond(message, chat_history):print(fmessage:{message}, strpped:{message.strip()})print(fhistory:{chat_history})if len(message.strip()) 0 :print(fmessage is empty, ignore the message)return , chat_historyinit_agent agent_main.AgentMain()af agent_framework.AgentFramework(init_agentinit_agent)bot_message af.run(message.strip(), chat_history)chat_history.append((message.strip(), bot_message))return , chat_history ​msg_textbox.submit(respond, [msg_textbox, chatbot], [msg_textbox, chatbot]) # 在输入框按回车也进行发送submit_btn.click(respond, [msg_textbox, chatbot], [msg_textbox, chatbot]) # 绑定按钮点击函数app gr.mount_gradio_app(app, chat_ui, pathCUSTOM_PATH) ​ app.get(/) def root():return {message: hello world!!!} ​
http://www.dnsts.com.cn/news/216630.html

相关文章:

  • 网页制作创建站点建站之星网站
  • 网站社区的建设旅游网站系统功能
  • 团购营销型网站制作做网站超链接
  • 为一个网站设计一个推广方案wordpress插件 破解
  • 云南手机网站制作动画设计师资格证
  • 中国建设教育网官网是什么网站建站教程新手怎么做网站php
  • 西安阎良区建设局网站丰城网站建设公司
  • 网页型网站短链接生成方法
  • 基于jsp的电商网站开发商城分销怎么做
  • 腾讯服务器做网站googl浏览器做桌面版网站
  • 广州市花都区建设局网站杭州vi设计策划
  • 网站开发后台数据库怎么搞建设网站需要做的工作
  • 网页封装网站怎么做的接口用struts2框架做的网站
  • 大学《网站开发与应用》试题wordpress 媒体库 插件
  • 做网站有现成的程序wordpress 汉化模版
  • 北京上云网站建设公司新网站推广方案
  • 如何建设网站 知乎沈阳有什么服务网站
  • 企业建站都有什么网站需要多少钱呢?
  • vs2012网站开发环境网络营销是营销的网络化吗
  • 广州地区网站建设榆中建设投资有限公司网站
  • 河南推广网站中国室内设计师排名
  • 网站建设公司的成本有哪些内容设计师培训方案
  • 做技术网站赚钱人工智能的网站
  • 热门关键词排名查询seo综合查询接口
  • 电商网站建设的目标东莞全域取消住房限购政策
  • 杭州绿城乐居建设管理有限公司网站网站正能量视频不懂我意思吧
  • 网上做调查赚钱的网站重庆网站房地产
  • 网站组成元素做新媒体文的网站
  • 现在市场网站建设怎么样百度站长工具seo
  • 网站如何做实名验证杭州设计公司logo