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

这篇具有很好参考价值的文章主要介绍了Python+ChatGPT制作了一个AI百宝箱,太实用了!!。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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

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

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

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

注册OpenAI

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

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

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

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 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百宝箱,里面集成了各种工具,欢迎使用**')

展示出来的效果如下

Python+ChatGPT制作了一个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的状态,表示正在运行中,等会儿之后就能看到结果

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

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

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

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

NO.1

往期推荐

Historical articles

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

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

NumPy、Pandas中若干高效函数!

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

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

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

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

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

Python+ChatGPT制作了一个AI百宝箱,太实用了!!文章来源地址https://www.toymoban.com/news/detail-416804.html

到了这里,关于Python+ChatGPT制作了一个AI百宝箱,太实用了!!的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Python百宝箱】边缘计算Python库大揭秘:构建高效、智能的IoT系统

    随着边缘计算在物联网和分布式系统中的广泛应用,寻找适用于边缘设备的Python库变得愈发重要。本文将探索多个Python库,涵盖了边缘计算的各个方面,从设备管理、分布式计算到通信模块,为开发人员提供了在边缘环境中构建智能、高效分布式应用的工具和技术。 【数字图

    2024年02月20日
    浏览(40)
  • 【Python百宝箱】模拟未见之境:精准工具畅游分子动力学风景

    前言 在当今科学研究中,分子动力学模拟成为解析原子和分子行为的关键工具之一。本文将深入探讨几种领先的分子动力学模拟工具,包括MDTraj、ASE(原子模拟环境)、OpenMM和CHARMM。这些工具不仅提供了高效的模拟引擎,而且支持丰富的分析和可视化工具,满足了不同研究领

    2024年01月16日
    浏览(42)
  • 【Python百宝箱】Python黑客实践手册:综合运用工具保障您的数字世界安全

    在当今数字化时代,网络安全变得至关重要。随着技术的迅猛发展,网络威胁也在不断演进。本文将带领您深入探讨一系列流行的网络安全工具,重点关注它们如何通过Python脚本提供强大的漏洞扫描和渗透测试功能。从 nmap 到 Metasploit ,再到 Wireshark 和 Burp Suite ,我们将揭示

    2024年02月03日
    浏览(42)
  • 【Python百宝箱】Python引领虚拟奇境:探索VR和AR开发的利器库

    前言 虚拟现实(VR)和增强现实(AR)技术正在迅速崛起,为我们的数字体验提供了全新的可能性。在这个充满创新的领域中,选择合适的工具和库是成功开发虚拟现实和增强现实应用的关键一步。本文将深入探讨几个强大的Python库,从构建虚拟环境到处理物理仿真,再到安

    2024年02月03日
    浏览(44)
  • 【Python百宝箱】机器人世界的 Python 征程:控制、感知、创新一网打尽

    在当今快速发展的科技领域,机器人技术正日益成为人工智能的焦点。本文旨在为开发者和研究者提供一份全面的指南,展示了如何使用Python语言从机器人的基础控制到高级认知功能的全过程开发。通过深入剖析涵盖硬件控制、图像处理、机器学习、数据库连接、自然语言处

    2024年02月01日
    浏览(51)
  • 【Python百宝箱】Python测试工具大揭秘:从单元测试到Web自动化

    在现代软件开发中,测试是确保代码质量和稳定性的关键步骤。Python作为一门广泛应用的编程语言,拥有丰富的测试工具和库,从单元测试到Web自动化,覆盖了多个测试层面。本文将介绍一系列Python测试工具,帮助开发者选择适合项目需求的工具,提高代码的可靠性和可维护

    2024年02月03日
    浏览(48)
  • 论坛介绍|COSCon'23 开源百宝箱(T)

    众多开源爱好者翘首期盼的开源盛会:第八届中国开源年会(COSCon\\\'23)将于 10月28-29日在四川成都市高新区菁蓉汇举办。本次大会的主题是:“ 开源:川流不息、山海相映 ”!各位新老朋友们,欢迎到成都,线下相聚! ✦ ✦ 01 论坛介绍 “工欲善其事,必先利其器” 。开源

    2024年02月08日
    浏览(42)
  • 【C++】开源:cpp-tbox百宝箱组件库

    😏 ★,° :.☆( ̄▽ ̄)/$: .°★ 😏 这篇文章主要介绍cpp-tbox百宝箱组件库。 无专精则不能成,无涉猎则不能通。。——梁启超 欢迎来到我的博客,一起学习,共同进步。 喜欢的朋友可以关注一下,下次更新不迷路🥞 项目Github地址: https://github.com/cpp-main/cpp-tbox cpp-tbox 是一个

    2024年02月17日
    浏览(46)
  • 猿创征文|工具百宝箱-数据库连接工具-接口调试与测试工具-抓包工具

    工具没有绝对意义上的好坏之分,只有需求适合与否,这些需求可能包括:功能、价格、安全、服务、技术等诸多方面。 技术在更新迭代,开发者工具也在更新迭代。一个高效趁手的工具在工作上锦上添花。给大家分享一下我平时用的一部分工具。 官方活动入口:「猿创征

    2023年04月27日
    浏览(37)
  • ChatGPT学python——制作自己的AI模型(一)初步了解

    「作者主页」 :雪碧有白泡泡 「个人网站」 :雪碧的个人网站 「推荐专栏」 : ★ java一站式服务 ★ ★ 前端炫酷代码分享 ★ ★ uniapp-从构建到提升 ★ ★ 从0到英雄,vue成神之路 ★ ★ 解决算法,一个专栏就够了 ★ ★ 架构咱们从0说 ★ ★ 数据流通的精妙之道★ 通过【

    2024年02月14日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包