返回顶部
首页 > 资讯 > 后端开发 > Python >Python+ChatGPT制作一个AI实用百宝箱
  • 141
分享到

Python+ChatGPT制作一个AI实用百宝箱

PythonChatGPT制作AI百宝箱PythonChatGPTAI百宝箱PythonChatGPTAI 2023-02-23 11:02:36 141人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

目录注册Openai搭建网站及其框架AI聊天机器人AI绘画机器人ChatGPT最近在互联网掀起了一阵热潮,其高度智能化的功能能够给我们现实生活带来诸多的便利,可以帮助你写文章、写报告

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

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

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

注册OpenAI

首先需要注册OpenAI,这样就可以使用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 style
        st.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 log
        loGo = Image.open("wechat_logo.jpg")
        st.image(logo, width=130)

    st.markdown('**AI百宝箱,里面集成了各种工具,欢迎使用**')

展示出来的效果如下

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].text
    return 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].text
        return response

    user_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的状态,表示正在运行中,等会儿之后就能看到结果

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

到此这篇关于Python+ChatGPT制作一个AI实用百宝箱的文章就介绍到这了,更多相关Python ChatGPT制作AI百宝箱内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python+ChatGPT制作一个AI实用百宝箱

本文链接: https://lsjlt.com/news/197317.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python+ChatGPT制作一个AI实用百宝箱
    目录注册OpenAI搭建网站及其框架AI聊天机器人AI绘画机器人ChatGPT最近在互联网掀起了一阵热潮,其高度智能化的功能能够给我们现实生活带来诸多的便利,可以帮助你写文章、写报告...
    99+
    2023-02-23
    Python ChatGPT制作AI百宝箱 Python ChatGPT AI百宝箱 Python ChatGPT AI
  • 怎么使用Python和ChatGPT制作一个AI实用工具
    本篇内容介绍了“怎么使用Python和ChatGPT制作一个AI实用工具”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!注册OpenAI首先需...
    99+
    2023-07-05
  • 使用C/C++怎么制作一个推箱子小游戏
    使用C/C++怎么制作一个推箱子小游戏?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。运行示例:以下为完整代码:#include <stdio.h>#inc...
    99+
    2023-06-15
  • 用Python制作一个文件加密器
    目录前言下载地址效果预览加密算法总结前言 因为一些懂得都懂的原因,我的父母对于我电脑上的文件内容特别感兴趣。为了防止信息泄露,我连夜用Python做了一个文件加密器,防止我的重要信息...
    99+
    2024-04-02
  • python利用不到一百行代码实现一个小siri
    前言 如果想要容易理解核心的特征计算的话建议先去看看我之前的听歌识曲的文章,传送门:http://www.lsjlt.com/article/97305.htm 本文主要是实现了一个简单的命令词识别程序,算...
    99+
    2022-06-04
    代码 python 一百行
  • 用Python制作一个动态爱心效果!
    大家好,我是小F~ 最近「点燃我,温暖你」这部剧非常火,讲述的是程序员的爱情故事。 其中陈飞宇饰演的男主李峋,在剧中用程序做出的爱心跳动效果,非常炫。 网上各个大佬也是纷纷给出看法,综合就是不太可能用C语言来实现的。 大概率...
    99+
    2023-09-10
    python 开发语言
  • 一文教你利用Python制作一个生日提醒
    目录1. 实战1-1  安装依赖1-2  创建数据表1-3  查询数据1-4  遍历,获取距离今天的天...
    99+
    2022-12-27
    Python生日提醒 Python生日 Python 提醒
  • 利用Python+Excel制作一个视频下载器
    说起Excel,那绝对是数据处理领域王者般的存在。 而作为网红语言Python,在数据领域也是被广泛使用。 其中Python的第三方库-xlwings,一个Python和Excel的...
    99+
    2024-04-02
  • 怎样用Python制作一个贪吃蛇游戏
    一,首先我们可以使用Python的tkinter函数库来生成一个窗口 代码如下: import tkinter as tk //导入tkinter函数库win = tk.Tk() //创建一个窗口win.title("Python Snak...
    99+
    2023-09-25
    游戏 python
  • 如何用Python制作一个C盘清理器
    今天小编给大家分享一下如何用Python制作一个C盘清理器的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。关于python的文...
    99+
    2023-07-05
  • 怎么使用Python制作一个数据大屏
    本篇内容主要讲解“怎么使用Python制作一个数据大屏”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用Python制作一个数据大屏”吧!PywebIO介绍Python当中的PywebIO模...
    99+
    2023-07-06
  • Python烟花代码,用Python制作一个烟花特效
    Python实现浪漫的烟花特效 现在很多地方都不能放烟花了,既然看不到, 那作为程序猿的我们还不能自己用代码做一个吗? 今天就带大家用代码做一个烟花特效吧。 pygame介绍 关于Pygam...
    99+
    2023-09-25
    python pygame 开发语言
  • 如何使用Python制作一个多进制转换工具
    小编给大家分享一下如何使用Python制作一个多进制转换工具,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!前言学习资料下载链接 提取码:tha8&nbs...
    99+
    2023-06-29
  • Python制作一个随机抽奖小工具的实现
    目录1. 核心功能设计2. GUI设计与实现3. 功能实现3.1 读取人员名单3.2. 随机抽奖3.3. 保存中奖名单3.4. GUI交互逻辑最近在工作中面向社群玩家组织了一场活动,需要进行随机抽奖,参考之前小明大佬...
    99+
    2022-06-02
    Python 随机抽奖小工具 Python 随机抽奖
  • 利用Python制作一个MOOC公开课下载器
    目录导语开发工具环境搭建先睹为快原理简介导语 记得很久以前写过一些中国大学MOOC上的视频下载器,不过好像都已经年久失修了。正好最近有需要,所以重新写了一个,顺便上来分享一波,寒假大...
    99+
    2024-04-02
  • 利用Python为女神制作一个专属网站
    目录数据准备网站搭建服务部署先来看一下效果吧,只要有足够的照片素材,捕获女神的心就指日可待 怎么样,看起来还可以吧 下面就一起来完成吧 数据准备 首先是测试图片的获取,毕竟萝卜哥...
    99+
    2024-04-02
  • 使用python怎么制作一个猜数字游戏
    本篇文章给大家分享的是有关使用python怎么制作一个猜数字游戏,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。python可以做什么Python是一种编程语言,内置了许多有效的...
    99+
    2023-06-14
  • 使用python怎么制作一个云打卡系统
    这期内容当中小编将会给大家带来有关使用python怎么制作一个云打卡系统,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。python的数据类型有哪些python的数据类型:1. 数字类型,包括int(整型)...
    99+
    2023-06-14
  • 如何用Python制作一个动态爱心效果
    目录 ① Python跳动爱心 ② Python爱心泡泡 ③ JavaScript 最近「点燃我,温暖你」这部剧非常火,讲述的是程序员的爱情故事。 其中陈飞宇饰演的男主李峋,在剧中用程序做出的爱心跳动效果,非常炫。 网上各个大佬也是纷...
    99+
    2023-10-05
    python 开发语言
  • 使用Python制作一个简易的远控终端
    目录远控终端的本质python制作简易的远控1、环境2、新建项目3、编写程序4、将python文件打包成exe文件制作远控终端的意义附完整代码远控终端的本质 1、服务端(攻击者)传输...
    99+
    2023-05-14
    Python实现远控终端 Python远控终端
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作