Python的 30 行代码实现 GPT 互交,可服务器部署
代码分析与解释
代码演示了如何创建一个基于 Web 的界面,该界面允许用户输入消息并查看由 GPT-3.5 模型生成的响应。代码包含以下主要组件和步骤:
- 导入必要的库和模块,如
openai
,gradio
和os
。 - 定义一个名为
generate_gpt
的函数,该函数接受 API 密钥和要发送给 GPT-3.5 模型的内容作为参数。 - 在
generate_gpt
函数中,配置openai
的 API 密钥,并尝试创建一个ChatCompletion
对象来与 GPT-3.5 模型交互。 - 获取模型的响应,并从中提取消息内容。
- 创建一个
gr.Interface
对象,以构建用户界面。用户界面包括两个输入文本框(一个用于输入 API 密钥,另一个用于输入消息)和一个输出文本框(用于显示模型的响应)。 - 启动用户界面,以便用户可以与其交互。
代码块
import openai
import gradio as gr
import os # 导入os库以访问环境变量
def generate_gpt(api_key, content): # 修改函数参数
openai.api_key = api_key
try:
completion = openai.ChatCompletion.create(
model="gpt-3.5-turbo-0613", # 修改模型名称为gpt-3.5-turbo-0613
messages=[{"role": 'user', "content": content}], # 设置消息内容和角色
max_tokens=100, # 设置最大令牌数为100
n=1, # 设置生成的选项数量为1
stop=None, # 不设置停止条件
temperature=0.5, # 设置温度为0.5,以控制文本生成的随机性
)
message = completion.choices[0].message.content
return message
except Exception as e:
return str(e) # 返回错误信息
io = gr.Interface(
generate_gpt,
[
gr.Textbox(default=os.getenv('OPENAI_API_KEY'), label="输入api_key", type='password'), # 使用环境变量作为默认值,并设置type为'password'
gr.Textbox(label="输入信息")
],
gr.Textbox(label="输出"), # 使用 gr.Textbox 创建输出文本框
)
io.launch()
标题建议
- 基于Gradio的GPT-3.5交互界面创建
- Python创建Web交互界面:GPT-3.5模型实例
- 与GPT-3.5模型交互的Web界面开发
- 使用Gradio库构建GPT-3.5交互应用
- Python和GPT-3.5:Web界面交互实战
标签建议
- Gradio
- GPT-3.5
- Web交互界面
- Python
- openai
- 文本生成
- 用户界面
版权声明:
作者:余汉波
链接:https://www.sanrenjz.com/2023/10/07/python%e7%9a%84-30-%e8%a1%8c%e4%bb%a3%e7%a0%81%e5%ae%9e%e7%8e%b0-gpt-%e4%ba%92%e4%ba%a4%ef%bc%8c%e5%8f%af%e6%9c%8d%e5%8a%a1%e5%99%a8%e9%83%a8%e7%bd%b2/
文章版权归作者所有,未经允许请勿转载。
THE END