> 自媒体 > (AI)人工智能 > Streamlit + GPT-3: 打造个人AI助手的全过程
Streamlit + GPT-3: 打造个人AI助手的全过程
来源:溜溜达达
2025-02-06 15:53:24
158
管理
Streamlit GPT-3: 打造个人AI助手的全过程

最近我琢磨着做个属于自己的AI助手,想来想去决定用Streamlit和GPT-3来搞。Streamlit是个Python神器,上手超快,界面也挺好看。GPT-3就不用说了,现在谁不知道它厉害。今天就跟大家分享下我是怎么把这俩结合起来,做出一个还不错的AI助手的。

Streamlit简介

Streamlit是个Python库,专门用来搭建数据科学的web应用。它的优点就是简单,几行代码就能整出一个漂亮的界面。我觉得最爽的是它支持热重载,你改完代码保存一下,网页就自动刷新了,不用手动重启服务器。

来看个最简单的例子:

import streamlit as stst.title("Hello, Streamlit!")name = st.text_input("What's your name?")st.write(f"Nice to meet you, {name}!")

这就是一个完整的Streamlit应用了,运行它你就能看到一个标题、一个输入框和一个问候语。

每次用户发送新消息,我们就把整个对话历史发给GPT-3,这样它就能记住之前聊了啥。

添加一些花里胡哨的功能

到这里,一个基本的AI助手就完成了。不过咱们可以再加点东西,比如让用户选择AI的人格:

persona = st.selectbox( "Choose AI persona:", ("Friendly", "Professional", "Sarcastic"))if persona == "Friendly": system_message = "You are a friendly and helpful assistant."elif persona == "Professional": system_message = "You are a professional and formal assistant."else: system_message = "You are a sarcastic and witty assistant."st.session_state.messages = [{"role": "system", "content": system_message}]

这样用户就能选择AI是友好的、专业的还是皮的了。

再比如,咱们可以加个清空聊天记录的按钮:

if st.button("Clear chat history"): st.session_state.messages = [{"role": "system", "content": system_message}] st.experimental_rerun()

这个按钮会清空聊天记录,只保留系统消息(也就是AI的人格设置)。

好了,到这里,我们就搞定了一个还不错的AI助手。它能和用户对话,能记住聊天内容,还能切换人格。你要是觉得还不够,可以继续加功能,比如保存对话记录、支持上传文件让AI分析等等。Streamlit和GPT-3的组合真心强大,玩法多得很。

Python真是个神奇的语言,几十行代码就能搞定这么多事。要是你也想做类似的项目,赶紧动手试试吧。哦对了,别忘了处理异常,比如API调用失败啥的,不然用户体验会很糟糕。

0
点赞
赏礼
赏钱
0
收藏
免责声明:本文仅代表作者个人观点,与本站无关。其原创性以及文中陈述文字和内容未经本网证实,对本文以及其中全部或者 部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 凡本网注明 “来源:XXX(非本站)”的作品,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对 其真实性负责。 如因作品内容、版权和其它问题需要同本网联系的,请在一周内进行,以便我们及时处理。 QQ:617470285 邮箱:617470285@qq.com
关于作者
感恩的人(普通会员)
文章
815
关注
0
粉丝
0
点击领取今天的签到奖励!
签到排行

成员 网址收录40386 企业收录2981 印章生成229791 电子证书1009 电子名片58 自媒体46453

@2022 All Rights Reserved 浙ICP备19035174号-7
0
0
分享
请选择要切换的马甲:

个人中心

每日签到

我的消息

内容搜索