Python+ChatGPT制作了一个AI百宝箱,太实用了!!

ChatGPT最近在互联网掀起了一阵热潮,其高度智能化的功能能够给我们现实生活带来诸多的便利,可以帮助你写文章、写报告、写周报、做表格、做策划甚至还会写代码。只要与文字相关的工作,它几乎都能给出一份满意的答卷。

小编趁着有空上去玩了一下,也发现了其中的强大

5aa0e053249a33c7e9e2daf49997daaa.jpeg

那么本篇文章小编就通过streamlit框架来搭建一个AI百宝箱的网页,其中里面集成了一系列功能包括智能聊天机器儿、智能绘画师,大家有兴趣还可以另外添加例如配音等功能,核心逻辑的话就是调用第三方的接口,然后做一层封装和优化。

注册OpenAI

首先需要注册OpenAI,这样就可以使用ChatGPT,以及获取API的秘钥

1cdc89a25675f8377d98459b33af78a3.png

网上就很多注册教程,这里小编就不加以赘述了,注册教程:

https://sms-activate.org/cn/info/ChatGPT

搭建网站及其框架

那么这里我们需要用到这几个库,用pip命令来下载

# 安装streamlit和openai
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple streamlit
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple streamlit_option_menu
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple openai

那么首先网页的左侧有一个工具栏,其中罗列了一系列的功能,我们这里简单的囊括了几个,包括了“简介”、“AI聊天”、“AI绘画”,大家感兴趣的后期可以继续往里面添加,例如“AI配音”,代码如下

with st.sidebar:choose = option_menu("工具栏", ["简介","AI聊天", "AI绘画"],icons=['house', 'person lines fill', 'app-indicator'],menu_icon="list", default_index=0,styles={"container": {"padding": "5!important", "background-color": "#fafafa"},"icon": {"color": "orange", "font-size": "25px"},"nav-link": {"font-size": "16px", "text-align": "left", "margin": "0px","--hover-color": "#eee"},"nav-link-selected": {"background-color": "#24A608"},})

那么在“简介”这一栏当中,顾名思义就是对该网页简单的介绍,我们简单的写一些介绍,代码如下

if choose == "简介":col1, col2 = st.columns([0.8, 0.2])with col1:  # To display the header text using css stylest.markdown(""" <style> .font {font-size:35px ; font-family: 'Cooper Black'; color: #FF9633;} </style> """, unsafe_allow_html=True)st.markdown('<p class="font">About the Creator</p>', unsafe_allow_html=True)with col2:  # To display brand loglogo = Image.open("wechat_logo.jpg")st.image(logo, width=130)st.markdown('**AI百宝箱,里面集成了各种工具,欢迎使用**')

展示出来的效果如下

85d2263c30a52a14367ffa941534a4b9.png

AI聊天机器人

那么首先我们需要在个人设置里面去获取一个秘钥,

然后选择一个模型,这里我们选择text-davinci-003模型,相比其他而言,性能更好,然后我们调用OpenAI里面的方法来生成回答

def ChatGPT(user_query):completion = openai.Completion.create(engine=model_engine,prompt=user_query,max_tokens=1024,n=1,temperature=0.5,)response = completion.choices[0].textreturn response

然后我们调用该函数结合streamlit当中的输入框,代码如下

elif choose == "AI聊天":st.title("AI聊天机器人")# 设置密匙model_engine = "text-davinci-003"def ChatGPT(user_query):completion = openai.Completion.create(engine=model_engine,prompt=user_query,max_tokens=1024,n=1,temperature=0.5,)response = completion.choices[0].textreturn responseuser_query = st.text_input("在这里输入问题,回车查询", "Python是什么?")if user_query != ":q" or user_query != "":# 将问题提交给ChatGPT, 返回结果response = ChatGPT(user_query)st.write(f"{response}")

AI绘画机器人

而在“AI绘画”的模块中,代码逻辑也是相类似的,这边需要调用与绘画相关的API,代码如下

def image_generate(user_demand):completion = openai.Image.create(prompt=user_demand,n=2,size="1024x1024")response = completion.get("data")return response[0].get("url")

由于返回给我们的是一个URL,因此还需要保存到本地,然后再通过Image模块打开,代码如下

image_url = image_generate(user_query)
response = requests.get(image_url, stream=True)
try:with open("./image/01.png", 'wb') as f:for chunk in response:f.write(chunk)f.close()print("Download done!!")
except Exception as e:print(e)img1 = Image.open(r'./image/01.png')
st.image(img1, width=500, caption='Image by OpenAI')

最后就可以在终端运行下面的代码了,

streamlit run example.py

我们在浏览器中打开页面,例如我们点击进入“AI聊天”这个模块,我们可以看到右上角处于RUNNING的状态,表示正在运行中,等会儿之后就能看到结果

7348793ab485a686df7f7e0e91856408.png

而点击进入“AI绘画”这个模块,例如想要绘制可爱的猫咪,我们也能看到如下的结果

e51754dd5051fc46b76d08007e8b417e.png

本篇教程只是针对OpenAI里面各种接口的调用,大家可以在此基础上在进行进一步的优化和补充。

NO.1

往期推荐

Historical articles

强烈推荐一个Python可视化模块,简单又好用!!

盘点了Jupyter Notebook的高效使用技巧,建议收藏!!

NumPy、Pandas中若干高效函数!

厉害了,用Python在Excel表格当中绘制可视化大屏!!

分享、收藏、点赞、在看安排一下?

0ecdeaab404b45b6639b32d1c418aed3.gif

f6294ad28f5e0e91fec4b2e6d8ae6a5e.gif

cae46bb7d206f81c5d926047fe788c7f.gif

4ae182f3bbff3905bdeb69d7586b1bda.gif

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/22332.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

独家 | ChatGPT工作原理:机器人背后的模型

作者&#xff1a;Molly Ruby 翻译&#xff1a;张睿毅 校对&#xff1a;闫晓雨本文约3000字&#xff0c;建议阅读5分钟简要介绍让你耳朵听到起茧的聊天机器人背后的直觉和方法论。 这篇对赋能ChatGPT的机器学习模型的简要介绍&#xff0c;将从大型语言模型(LLM)开始&#xff0c;…

chatgpt赋能python:Python如何更换版本

Python如何更换版本 介绍 Python是一种广为使用的编程语言&#xff0c;它经常被用于开发各种软件、网站和应用程序。由于不同版本的Python可能会导致代码不兼容&#xff0c;因此在开发过程中更换Python版本是很常见的需求。本文将介绍如何更换Python版本。 检查当前版本 在…

【数据分析之道】数据分析导读

文章目录 专栏导读1、什么是数据分析&#xff1f;2、数据分析的应用3、数据分析的重要性4、数据分析基本流程总结 专栏导读 ✍ 作者简介&#xff1a;i阿极&#xff0c;CSDN Python领域新星创作者&#xff0c;专注于分享python领域知识。 ✍ 本文录入于《数据分析之道》&#xf…

对话丨周伯文:通用大模型如何突破垂直行业场景?

AGI大潮之下&#xff0c;通用大模型会给垂直行业领域带来哪些新的变化&#xff1f; 来源&#xff1a;AI科技评论 作者&#xff1a;王永昂 编辑&#xff1a;董子博 从京东离开后&#xff0c;周伯文已经很久没有这么兴奋了。 ChatGPT横空出世搅动乾坤&#xff0c;如同一声春雷惊醒…

AI编程时代,开发者路在何方?|开放原子开发者工作坊

AI 正颠覆人们的想象&#xff0c;重塑各行各业。AI 技术改变编程范式&#xff0c;有效提升开发者效率&#xff0c;可能人人有机会成为“10倍程序员”。在此发展趋势下&#xff0c;开发者不禁担心未来会不会被AI取代&#xff1f;随着 AI 编程时代来临&#xff0c;开发者需要掌握…

chatGPT和文言一心,我的看法

最近&#xff0c;ChatGPT-4和百度的文心一言&#xff0c;确实很火啊&#xff0c;尤其是下面的这个图&#xff0c;简直火遍了全网。 先说下&#xff0c;这类模型的一些看法。 1. 技术优势&#xff1a;这两个模型都采用了最先进的自然语言处理技术&#xff0c;如深度学习、神经网…

计算机笔试/面试常见逻辑题/智力题汇总

说明&#xff1a;按种类汇总&#xff0c;难度不分先后&#xff0c;做了分级罗列&#xff0c;方便后续扩充&#xff0c;大家有比较有意思的题目可以在讨论区讨论。 下面有的题题解相对复杂的直接参考了网上的一些解答&#xff0c;而有的题解我认为并不好的也做了补充&#xff0c…

CoT及ReAct解密与实战(三)

第8章 CoT及ReAct解密与实战 8.5 ReAct及计划和执行案例实战 我们来看一下LangChain的官方文档,首先它很简单的说了一下,计划和执行代理(Plan and execute agents)首先计划要做什么,然后执行子任务来实现目标,言外之意ReAct不是这样的,我们在ReAct中看见的内容是,有一步…

拿着ChatGPT给的攻略去看上海车展

选择合适的购车时机「如今人们买车已经渐趋理性&#xff0c;虽然会有很多人等到 『 五一 』 『 金九银十 l 买车&#xff0c;但也有很多人选择在车市的不同优葱时段购车&#xff0c;以获得更大的优惠&#xff0c;如大型车展期间、 6、 8 月的车市传统淡季等这些有较大优惠出现的…

推荐几个清北计算机系学霸的 IT 公众号!

学习如逆水行舟&#xff0c;不进则退&#xff1b;只有坚持不断的学习,才能保持进步。今天给大家精心挑选的这几个优质的公众号&#xff0c;在行业深耕已久&#xff0c;相信大家一定会有所收获&#xff0c;感兴趣的可以关注一下。 机器学习算法与自然语言处理 国内最大的机器学习…

211高校教授公然在聊天群中为其女基金项目“打招呼”!评论区炸了...

本文转载自&#xff1a;募格学术 | 参考资料&#xff1a;知乎、百度百科等 近日&#xff0c;一大学教授在聊天群中公开为其女儿基金项目“打招呼”的行为在网上引起热议&#xff0c;并迅速登上知乎热搜&#xff01; 在400人的大群里直接点名“打招呼”&#xff0c;这算是学阀当…

ChatGPT可以写文章吗?来看看他对卷积神经网络的解释是否准确

文章目录 提问chatGPT的回答第一次回答第二次回答 结果 提问 chatGPT的回答 在回答时候由于字数限制它不能一口气输出全部结果&#xff0c;此时可以采用两种方法让它继续输出&#xff1a; 复制它的上一步回答给它&#xff0c;它会接着回复直接发送继续&#xff0c;它也会接着…

M1安装服务一条龙Mysql (解决PID的不存在的方法)

遇到的各种奇葩离谱问题 dev.mysql.com/downloads/mysql/&#xff0c;登入下载就行&#xff0c;下载这块最简单&#xff0c;就不详细说明了 首先注意一个点M1可以下载ARM&#xff0c;也可以X86&#xff0c;目前暂时不用考虑效率能用就行&#xff0c;5.7也可以用哈 然后下载完&…

GPT系列模型技术路径演进

目录 前言TransformerGPT-1BERTGPT-2GPT-3InstructGPT/ChatGPTGPT-4类ChatGPT产品Google Bard&#xff08;诗人&#xff09;facebook LLaMA(羊驼)复旦 MOSS清华 ChatGLM-6B/130B百度 文心一言 总结参考&#xff1a; 前言 人工智能发展的历程如上图所示&#xff0c;从基于规则统…

如何利用 GPT4创建引人注目的流程图

如何利用 GPT4创建引人注目的流程图 流程图是可视化复杂思想和过程的首选工具。然而&#xff0c;创建一个好的流程图可能需要很多时间。 在本文中&#xff0c;我将向你展示如何在不到一分钟的时间内使用ChatGPT&#xff08;最好是GPT-4&#xff09;创建令人惊叹的流程图。 生…

CSS3---选择器分类,最全版

目录 标签选择器(元素选择器) 类选择器 id选择器 通配符选择器 伪类选择器 链接伪类选择器 结构伪类选择器 目标伪类选择器 标签选择器(元素选择器) 标签选择器&#xff0c;是指用HTML标签名称作为选择器&#xff0c;按照标签名称分类&#xff0c;为某一类标签指定统一的…

ChatGPT已过时?Auto-GPT迅速走红,无需人类插手自主解决复杂任务,GitHub标星5万

来源: AI前线 微信号&#xff1a;ai-front 作者 | Luke Larsen ChatGPT 之所以能风靡全球&#xff0c;很大程度上要归功于其简单的功能框架。作为一款 AI 聊天机器人&#xff0c;它唯一的作用就是生成令人信服的自然语言文本、顺畅回应用户的提问。 但 AI 聊天机器人的使用体…

ChatGPT已过时?Auto-GPT迅速走红,无需人类插手自主解决复杂任务,GitHub标星5万...

来源&#xff1a;AI前线 作者&#xff1a;Luke Larsen 译者&#xff1a;核子可乐 策划&#xff1a;冬梅 ChatGPT 之所以能风靡全球&#xff0c;很大程度上要归功于其简单的功能框架。作为一款 AI 聊天机器人&#xff0c;它唯一的作用就是生成令人信服的自然语言文本、顺畅回应用…

telegram纯协议电报群发,自动加群,引流自动化解放双手*

全自动协议批量发送&#xff0c;一键简便操作&#xff0c;极大节省时间和精力。遇到问题时&#xff0c;日志自动诊断&#xff0c;整个过程无需人工干预。目前市场上功能最全面的国内外营销软件&#xff0c;吸引流量效果卓越&#xff01;

智能黑白图像自动上色——C++实现

前言 《Colorful Image Colorization》是加里福利亚大学Richard Zhang发表在ECCV 2016上的文章&#xff0c;论文主要解决的问题是给灰度图的自动着色&#xff0c;算法并不是为恢复灰度图的真实颜色&#xff0c;而是用灰度图中物体的纹理、语义等信息作为线索&#xff0c;来预测…