使用Flask Web创建一个调用ChatGPT API的网页--简单示例(Windows环境下)

前提:你应该要有一个能正常使用chatGPT的openAI账号;即你已经成功注册了chatGPT,并能正常使用。

文章目录

  • 一、主要组成部分
  • 二、示例代码
    • 2.1 工程结构:
    • 2.2 说明
    • 2.3 依赖环境
    • 2.4 app.py代码
    • 2.5 index.html代码
  • 三、搭建环境步骤

一、主要组成部分

要使用Flask Web创建一个调用ChatGPT API的网页,你需要以下几个主要组成部分:

  1. ChatGPT API:一个可以处理用户输入并生成回复的ChatGPT模型的API。你可以使用OpenAI提供的GPT-3.5 Playground API或者自己搭建一个类似的API。在本示例中,我们将使用OpenAI的ChatGPT模型。

  2. Flask:一个Python的Web框架,用于创建和处理网页请求。

  3. HTML模板:用于构建网页的前端界面。

  4. Python脚本:用于编写处理网页请求的后端代码。

二、示例代码

下面是一个简单的示例工程,展示了如何使用Flask Web创建一个调用ChatGPT API的网页。
具体代码可以直接从以下链接下载:https://download.csdn.net/download/AnChenliang_1002/87998402

2.1 工程结构:

- chatgpt_webapp/- app.py- templates/- index.html

2.2 说明

  • chatgpt_webapp:主文件夹,整个工程的根目录。
  • app.py:Flask应用的主要Python脚本,用于处理网页请求和调用ChatGPT API。
  • templates:存放HTML模板文件的文件夹。
  • index.html:HTML模板文件,定义了网页的前端界面。

2.3 依赖环境

  • 操作系统:Windows系统。
  • Python 3.x:确保已经安装了Python,并且安装了pip包管理工具。
  • Flask:使用pip install flask安装Flask。
  • OpenAI Python库:使用pip install openai安装OpenAI Python库。

2.4 app.py代码

from flask import Flask, render_template, request
import openaiapp = Flask(__name__)# 设置OpenAI API凭证
openai.api_key = 'YOUR_API_KEY'# 路由:处理网页根目录请求
@app.route('/', methods=['GET', 'POST'])
def index():if request.method == 'POST':# 获取用户输入的消息user_message = request.form['user_message']# 调用ChatGPT API生成回复response = openai.Completion.create(engine='text-davinci-003',prompt=user_message,max_tokens=50,temperature=0.7)# 提取回复并返回给网页chatbot_message = response.choices[0].text.strip()return render_template('index.html', user_message=user_message, chatbot_message=chatbot_message)else:# 首次加载网页时,返回空的聊天记录return render_template('index.html', user_message='', chatbot_message='')if __name__ == '__main__':app.run()

2.5 index.html代码

<!DOCTYPE html>
<html>
<head><title>ChatGPT Web App</title>
</head>
<body><h1>ChatGPT Web App</h1><form method="POST" action="/"><input type="text" name="user_message" placeholder="输入你的消息" required><button type="submit">发送</button></form><div><h2>聊天记录</h2>{% if user_message %}<p><strong>你:</strong> {{ user_message }}</p>{% endif %}{% if chatbot_message %}<p><strong>ChatGPT:</strong> {{ chatbot_message }}</p>{% endif %}</div>
</body>
</html>

说明:

  • app.py代码中,你需要将YOUR_API_KEY替换为你的OpenAI API凭证。
  • index.html中使用了Flask模板语言,在双大括号{{ }}中插入动态内容,如用户输入的消息和ChatGPT的回复。

三、搭建环境步骤

  1. 安装Python 3.x:在Python官方网站(https://www.python.org/downloads/)下载并安装适合Windows系统的Python版本,安装完成后如下图所示

在这里插入图片描述

  1. 安装pip包管理工具:打开命令提示符(cmd)并执行以下命令。

    python -m ensurepip --upgrade
    

在这里插入图片描述

  1. 安装Flask:在命令提示符中执行以下命令。

    pip install flask
    

在这里插入图片描述

  1. 安装OpenAI Python库:在命令提示符中执行以下命令。

    pip install openai
    

在这里插入图片描述

  1. 将示例代码保存到相应的文件中,确保文件结构和上述提到的工程结构一致。

  2. 在命令提示符中进入工程目录,并执行以下命令启动应用。

例如,我的代码是放在E盘下面的,如下图所示:
在这里插入图片描述
在这里插入图片描述

打开cmd,输入以下命令切换到E盘的ChatGPT_webapp下,指令如下所示:

在这里插入图片描述

然后执行以下命令:

python app.py

在这里插入图片描述

  1. 打开浏览器,访问http://localhost:5000,即可在网页上与ChatGPT进行交互。

在这里插入图片描述

以上是一个简单的示例,用于演示如何使用Flask Web创建一个调用ChatGPT API的网页。你可以根据实际需求进行修改和扩展,例如添加更多的HTML模板和Flask路由,以实现更丰富的功能。

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

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

相关文章

JAVA对接百度API提交普通收录/SEO

JAVA对接百度API提交普通收录/SEO 说明&#xff1a; 为了增加内容的曝光量&#xff0c;除了主动让百度爬虫爬取之外&#xff0c;还有普通收录的API提交&#xff0c;程序主动向百度搜索推送资源&#xff0c;缩短爬虫发现网站链接的时间。 官网地址&#xff1a;http://data.zz.…

Java 快递物流查询 api对接

Java 快递物流查询 api对接 2018年08月24日 09:44:41 我跟吴彦祖四六开 阅读数&#xff1a;73 标签&#xff1a; java 物流查询 更多 个人分类&#xff1a; Java 这里只是记录一下。第三方都会提供很详细的demo和技术文档&#xff0c;或者安排专业人员进行联调。 第三方物流…

eBay API文档

1.创建eBay接入API教程网址 https://developer.ebay.com/api-docs/static/creating-edp-account.html 前言&#xff1a;API参考&#xff1a;资源 该分析API检索呼叫限制和数据被用于RESTful API中及其关联的资源设置配额。对getRateLimits和getUserRateLimits进行的调用的响应…

Java对接外部API这个问题

java对接外部api 需求提出解决思路编码测试 总结 差不多有一个多月没有更新blog&#xff0c;也是出于工作原因以及最近搬家在看合适的窝点导致断更。今天有一个小学妹来问我可以将我其他项目的api接入到我现在的项目中吗&#xff1f;我回答“可以”&#xff01;我今天就写一篇关…

Midjourney API 接口对接历程

Midjourney是一个基于Discord环境的画图工具&#xff0c;它提供API接口用于扩展功能。对于程序开发者来说&#xff0c;Midjourney只能在Discord环境下使用&#xff0c;这限制了它的使用范围。本文将介绍使用Midjourney的API接口进行开发发过程中遇到的一些问题。 内测地址&…

JAVA对接亚马逊SPAPI

亚马逊官方文档Amazon-Services-APIAmazon API Services for Selling Partners and Shippers.https://developer-docs.amazon.com/ 1注册AWS账号&#xff0c;填写个人信息&#xff0c;填写银行信息&#xff0c;手机验证&#xff08;AWS网址&#xff09; 2在AWS里面创建IAM用户…

深信服防火墙API对接

深信服防火墙千呼万唤的API终于在8.0.35版本实现了。具体的API文档可以登录防火墙的后台WEB界面上的右上角点开即可查看&#xff1a; 根本api文档&#xff0c;首先先新建一个api账号&#xff0c;“用户可以登录WebUI通过"系统->管理员账号"栏将默认的账户勾上WEBA…

使用Swagger作API接口对接

1、当前项目中存在的问题 在前后端分离的项目中&#xff0c;如手机端与接口端对接、WEB项目调用API&#xff0c;进行接口对接的方式一般是先创建WORD文档&#xff0c;然后把各个接口的链接、参数、访问方式、说明等信息粘贴进去。在制作文档的过程中&#xff0c;如果稍有不注意…

API对接实战

目录 一 背景 二 了解B公司接口的基础约定 三 基础域名 四 请求及相应格式说明 五 确定要对接哪些API 六 根据API文档&#xff0c;编写一些基础工具类。 七 根据API文档&#xff0c;编写必要的DTO 八 针对每个API方法&#xff0c;进行对接 九 对接代码结构 十 一些对…

企业微信api对接

用的是wxJava&#xff0c;但是wxJava文档真滴不清楚&#xff0c;都是jar全局搜索url/看方法试的。 坑0&#xff1a; 通讯录不仅要开通api&#xff0c;还得开通是“可编辑”不然是“只读”&#xff08;然后还可以设置人员自己编辑后推动事件服务器&#xff09;挺不错的 坑一&a…

WebAPI接口对接

WebAPI接口对接&#xff1a; 提示&#xff1a;此片文章是总结接口对接经验其中包括模型的建立以及统一的调用 学习内容&#xff1a; 数据对象模型的建立如何规范定义模型统一的请求方法系统中model的命名 数据对象的建立 接口的数据传输对象包括Request对象和Response对象 …

百度翻译API对接

百度翻译开发平台&#xff1a;http://api.fanyi.baidu.com/api/trans/product/index 打开如上链接&#xff1a; 下载SDK 导入SDK 新建一个工程&#xff08;zyq-translate&#xff09;&#xff0c;并新建包&#xff08;com.zyq.translate&#xff09; 解压SDK&#xff0c;得…

对接海康ISC平台API

开发文档&#xff1a;海康开放平台。&#xff08;视频预览、抓图等能力&#xff09;

Unity Layer(图层)简介

图层基础 1. 当一个项目或者场景中包含很多对象时&#xff0c;通常难以组织。有的时候&#xff0c;希望一些游戏对象只能被某些摄像机看到或者只会被某些灯光照亮&#xff1b;有时&#xff0c;你可能希望只让某些类型的对象之间发生碰撞&#xff1b;在Unity中用图层处理上述需求…

【闲玩】看看ChatGpt认为的各级别Unity程序该掌握哪些技术

1.初级Unity开发 2.中级Unity开发 3.高级Unity开发 4.资深Unity开发 结语&#xff1a; 仅供娱乐哈&#xff0c;不过还是可以参考的。 不得不说。。。ChatGpt是真的强啊。。。

图形学之Unity渲染管线流程分析

文章来源&#xff1a; 学习通http://www.bdgxy.com/ 普学网http://www.boxinghulanban.cn/ 智学网http://www.jaxp.net/ 表格制作excel教程http://www.tpyjn.cn/ 学习通http://www.tsgmyy.cn/ 下图是《Unity Shader 入门精要》一书中的渲染流程图&#xff1b; ApplicationS…

Unity渲染工程收集

NPR 非真实渲染 UnityURP-AnimeStyleCelShader SSR 屏幕空间反射 UnitySSReflectionURP Skin 皮肤 Unity-URP-SkinSSSLUTGenerator

art-template渲染大坑,从后台接受到的数据正确,但渲染出来的都是空白

问题描述 后台使用的是art-template模板引擎和express // 部分代码如下 router.get(/advert/add, (req, res, next) > {res.render(advert_add.html); });前端使用的art-template 重点看下面画着的部分 // 代码如下 {{ extend ./layout.html }}{{ block style }} {{ /blo…

[Unity3D热更框架] LuaMVC简介

1.什么是LuaMVC 从工作以来一直从事工业三维仿真软件/AR软件的开发&#xff0c;每个项目开发周期短&#xff0c;项目从Demo到完(huang)结(le)时间较为紧凑&#xff0c;因此需要一个便捷的开发框架作为支撑&#xff0c;以适应不同的项目需求&#xff0c;而且需要尽可能覆盖多个终…