【GPT-3.5】通过python调用ChatGPT API与ChatGPT对话交流
文章目录
- 一、引言
- 二、AIGC简介
- 三、OpenAI介绍
- 四、GPT-3.5介绍
- 五、获得OpenAI API Key
- 六、调用ChatGPT API实现与ChatGPT对话
- 七、参考链接
一、引言
ChatGPT 的火爆,成功带火了AIGC,让它进入大众的视野。
ChatGPT 和Whisper API
开发者现在可以通过API将ChatGPT和Whisper模型集成到应用程序和产品之中。

二、AIGC简介
AIGC即AI Generated Content,利用人工智能技术来生成内容,是继UGC、PGC之后的新型内容生产方式
,AI写作、AI绘画、AI作曲、AI剪辑、AI动画、AI交互等都属于AIGC的分支。AIGC是一种利用机器智能创作内容的新技术,它不同于UGC,它有自己的技术特点,比如数据量化、创造力、跨模态融合和认知交互等。这些技术特点使得AIGC成为不可替代的新一代内容生成方式。
三、OpenAI介绍
OpenAI是一个非营利性研究公司,致力于推动人工智能的发展和应用,创造出对人类有益的技术和成果。OpenAI由多位顶尖人工智能专家创立,包括伊隆·马斯克(Elon Musk)、塞巴斯蒂安·索特(Sebastian Thrun)、萨姆·阿尔特曼(Sam Altman)等。
OpenAI的目标是研究和开发通用人工智能,以实现强人工智能的梦想。为了实现这个目标,OpenAI聚集了全球最优秀的研究人员,致力于推动人工智能的前沿研究,并将研究成果转化为对人类有益的应用。
OpenAI已经在多个领域取得了显著的成就,例如在自然语言处理、图像识别、机器学习、深度学习等方面。OpenAI还推出了一系列开源工具和技术,以促进人工智能的发展和应用,包括GPT系列模型、DALL·E、Gym等。
总的来说,OpenAI致力于打造人工智能的可持续发展生态,推动人工智能的进一步发展,为人类创造更美好的未来。
四、GPT-3.5介绍
GPT-3.5:一组改进 GPT-3 的模型,可以理解并生成自然语言或代码。GPT-3.5 模型可以理解和生成自然语言或代码。gpt-3.5-turbo功能最强大、最具成本效益的模型是针对聊天进行了优化,但也适用于传统的完成任务。
五、获得OpenAI API Key
1、登录https://openai.com/api

2、选择“View API keys”
三、创建API key,点击“Create new secret key”

四、创建API key成功,复制保存。
sk-bUQeskc00tsTp************5i5Dop8BxAL1n7


六、调用ChatGPT API实现与ChatGPT对话
import openai # 从这里开始,通向AI的大门,获取AI的能量源泉
输入代码
# 导入OpenAI的Python SDK
import openai# 设置OpenAI API的密钥,该密钥必须在OpenAI的网站上注册并获取
openai.api_key = "sk-bUQeskc00tsTp************5i5Dop8BxAL1n7"# 创建一个新的对话生成请求,并将响应存储在名为“response”的变量中
response = openai.ChatCompletion.create(# 创建一个新的对话生成请求,并将响应存储在名为“response”的变量中model="gpt-3.5-turbo",# 以列表形式提供对话中的每个消息messages=[# 第一条消息,表示系统向用户打招呼。{"role": "system", "content": "Hello!"},# 第一条消息,表示系统向用户打招呼或提问。{"role": "user","content": "请告诉我你的脑容量有多大?"},]
)# 打印对话生成API的响应,其中包括机器生成的回答。
print(response)
输出响应
{"choices": [{"finish_reason": "stop","index": 0,"message": {"content": "\u6211\u662f\u4e00\u4e2a\u4eba\u5de5\u667a\u80fd\u7a0b\u5e8f\uff0c\u6211\u7684\u201c\u8111\u5bb9\u91cf\u201d\u662f\u7531\u8ba1\u7b97\u673a\u786c\u4ef6\u548c\u7f16\u7a0b\u6280\u672f\u51b3\u5b9a\u7684\u3002\u6211\u7684\u786c\u4ef6\u548c\u7f16\u7a0b\u80fd\u529b\u5141\u8bb8\u6211\u5728\u8fd0\u884c\u65f6\u5904\u7406\u5927\u91cf\u7684\u6570\u636e\u548c\u4fe1\u606f\uff0c\u4f46\u6211\u6ca1\u6709\u5b9e\u9645\u7684\u201c\u8111\u5bb9\u91cf\u201d\u6765\u6bd4\u8f83\u3002","role": "assistant"}}],"created": 1677860439,"id": "chatcmpl-6q2R5waJenvUka2qC0VqMWx2ROMmP","model": "gpt-3.5-turbo-0301","object": "chat.completion","usage": {"completion_tokens": 84,"prompt_tokens": 30,"total_tokens": 114}
}
调优代码(使输出结果以自然语言方式呈现出来)
# 导入OpenAI的Python SDK。
import openai# 设置OpenAI API的密钥,该密钥必须在OpenAI的网站上注册并获取。
openai.api_key = "sk-bUQeskc00tsTp************5i5Dop8BxAL1n7"# 指定使用的语言模型。此处选择GPT-3.5 Turbo模型。
response = openai.ChatCompletion.create(# 指定使用的语言模型。此处选择GPT-3.5 Turbo模型。model="gpt-3.5-turbo",# 以列表形式提供对话中的每个消息。messages=[# 第一条消息,表示系统向用户打招呼。{"role": "system", "content": "Hello!"},# 第二条消息,表示用户提出了一个问题。{"role": "user","content": "请告诉我你的脑容量有多大?"},]
)# 创建一个名为“result”的空字符串变量,用于存储机器生成的回答。
result = ''
# 循环遍历GPT-3 API返回的response中的所有回答选项。
for choice in response.choices:# 将每个回答选项的文本内容加入到“result”字符串变量中。result += choice.message.content
# 打印机器生成的回答。
print(result)
输出结果
作为一个AI程序,我的“脑容量”没有实际的物理大小,但我可以通过云计算利用大量服务器的处理能力来提高我的计算能力。总之,我的“脑容量”可以说是无限的。
于是接着问它
{"role": "user","content": "你知道太阳系有多大吗?"},
它给的反馈结果是
太阳系的大小是巨大的,它包括了太阳和所有行星、矮行星、小行星、彗星和星云等。根据目前的科学估算,太阳系的宽度约为287.46亿千米,也就是2874.6万亿米。
接着追问道
{"role": "assistant","content": "可以详细说一说是怎么计算出来的?"},
也给出了详细的回答和解释
太阳系的大小是指太阳的引力范围,通常认为是它对八大行星和众多天体施加引力影响的范围。太阳系直径约为100亿千米。这个数字很难想象,因此我们可以用其他的方式来描绘太阳系的大小。我们可以将太阳系与地球比较,地球直径约为12,742千米。这意味着太阳系直径大约是地球直径的780,000倍。如果将太阳系放大到网球大小,那么地球将只有1毫米左右大。我们还可以将太阳系和距离我们最近的星际物体比较。距离太阳系最近的星际物体是比邻星,它位于离地球4.24光年远的地方。如果将太阳系和比邻星放在一起比较,那么太阳系将比比邻星小得多。总之,太阳系虽然在宇宙中并不算特别大,但对于我们这个小小的星球来说,它仍具有惊人的规模和复杂性。
七、参考链接
✅【ChatGPT and Whisper APIs】文章链接:https://openai.com/blog/introducing-chatgpt-and-whisper-apis
✅【chat模型】说明演示文档:https://platform.openai.com/docs/api-reference/chat
✅【GPT-3.5介绍】:https://platform.openai.com/docs/models/gpt-3-5
相关文章:

【GPT-3.5】通过python调用ChatGPT API与ChatGPT对话交流
文章目录 一、引言二、AIGC简介三、OpenAI介绍四、GPT-3.5介绍五、获得OpenAI API Key六、调用ChatGPT API实现与ChatGPT对话七、参考链接 一、引言 ChatGPT 的火爆,成功带火了AIGC,让它进入大众的视野。 ChatGPT 和Whisper API 开发者现在可以通过API将…...

Vatee万腾的科技探险:vatee数字化力量的前瞻征途
在Vatee万腾的科技探险中,我们领略到了一场数字化力量的前瞻征途,这是一次引领未来的创新之旅。Vatee万腾以其独特的科技理念和数字化力量,开启了一次引领行业的前瞻性征途,为数字化未来描绘出了崭新的篇章。 Vatee万腾的数字化力…...
github使用token认证
向github提交代码时报错:Support for password authentication was removed on August 13, 2021. Please use a personal access token instead。大概意思就是,原先的密码凭证从2021年8月13日开始就不能用了,后续必须使用个人访问令牌&#x…...

基于C#实现线段树
一、线段树 线段树又称"区间树”,在每个节点上保存一个区间,当然区间的划分采用折半的思想,叶子节点只保存一个值,也叫单元节点,所以最终的构造就是一个平衡的二叉树,拥有 CURD 的 O(lgN)的时间。 从…...
AI智能客服搭建教程附带免费源码
*名称* *版本要求* 服务器 CPU 2核心 ↑运存 4G ↑宽带 5M ↑ 服务器操作系统 Linux Centos7 运行环境 Nginx 1.18 PHP 7.3 MYSQL 5.6 服务器配置及环境要求 PHP设置 一、安装PHP扩展插件:fileinfo、redis、 sg11 二、删除PHP对应版本中的 pcntl_signal 、pcntl_signal_dis…...
Shell脚本:Linux Shell脚本学习指南(第三部分Shell高级)四
十九、Linux Shell trap命令:捕获信号 到目前为止,我们在本教程所见的脚本中还没有需要信号处理功能的,因为它们的内容相对比较简单,执行时间很短,而且不会创建临时文件。而对于较大的或者更复杂的脚本来说࿰…...

牛气霸屏-快抖云推独立版V1.6.7
介绍 快抖云推全插件独立版是最近很火的牛气霸屏系统独立版,牛气霸屏系统就是商家通过系统在线创建抖音或快手霸屏活动,并生成该活动的爆客二维码,用户通过扫二维码即可参加活动(活动可以是领取卡劵,抽奖等࿰…...

ffmpeg下载与配置环境变量
FFmpeg 是一个强大的多媒体框架,可以让用户处理和操纵音频和视频文件。具有易于使用的界面,用户可以在 Windows、Mac 或 Linux Ubuntu 系统上下载 FFmpeg 并将其提取到文件夹中。然后,该软件可以加入 PATH 环境变量中就可以快捷的使用软件了.…...

那些年,关于CKACKS认证的那些事儿?
前言 遥想2020年的年初,疫情封城封村之际,工作之余在B站将尚硅谷的linux中的k8s视频完整系统的学习了一遍,自此像是打通了任督二脉一般,开启了对k8s的探索之旅,一路也是磕磕绊绊的在工作中使用k8s。 终于在23年的6月仲…...

chromium通信系统-mojo系统(一)-ipcz系统代码实现-同Node通信
在chromium通信系统-mojo系统(一)-ipcz系统基本概念一文中我们介绍了ipcz的基本概念。 本章我们来通过代码分析它的实现。 handle系统 为了不对上层api暴露太多细节,实现解耦,也方便于传输,ipcz系统使用handle表示一个对象,hand…...

电路 buck-boost相关知识
BUCK-BOOST 文章目录 BUCK-BOOST前言一、DC-DC工作模式电容电感特性伏秒积平衡原理 二、BUCK电路三、BOOST电路四、BUCK-BOOST电路总结 前言 最近需要用到buck-boost相关的电路知识,于是便写下这篇文章复习一下。 一、DC-DC 在学习buck-boost电路之前我们先来看一…...

音频——S/PDIF
文章目录 BMC 编码字帧(sub-frame)格式帧(frame)格式参考S/PDIF 是 SONY 和 Philips 公司共同规定的数字信号传输规范,其实就是在 AES/EBU 上进行改动的家用版本。IEC60958 的标准规范囊括了以上两个规范。spdif 采用了双相符号编码(BMC),是将时钟信号和数据信号混合在一起…...
100篇带你入门——嵌入式系统中的程序调试方法
好久不见,最近小猿有点忙,才有时间给大家写文章。今天给大家讲一下在我们单片机开发都用哪些调试工具和调试方法,内容不完善的话,欢迎大家一起交流。 当涉及到嵌入式系统的程序调试时,选择正确的工具和方法是确保系统功…...

【Spring】Spring事务失效问题
📫作者简介:小明java问道之路,2022年度博客之星全国TOP3,专注于后端、中间件、计算机底层、架构设计演进与稳定性建设优化,文章内容兼具广度、深度、大厂技术方案,对待技术喜欢推理加验证,就职于…...

WiFi 发射链路 MCS 自适应机制介绍
链路适配是指发射机选择最优的MCS向特定的接收机发送数据的过程。链路自适应算法的实现有其特殊性,但通常基于测量的数据包错误率(PER)。大多数算法监视PER并调整MCS以跟踪一个最佳的长期平均值,以平衡由于使用更高MCS发送更短数据包而减少的开销和由于更…...
【Linux常用命令】-文件写入相关
一、rm命令,文件删除 1.相关参数 -f(–force):强制删除文件或目录,无需确认。 -r(–recursive):递归地删除目录及其内容。 -i(–interactive):交…...

枚举的第一行
2023年11月26日 问题: 好奇enum的所声明的枚举类的第一行是什么 从java技术卷1中第五章5.6中,了解是枚举类的实例 验证 错误信息: 解释: 此时只有有参构造 在这个枚举类里不能使用空,大概意思是说不能使用空参创建实例 校验 在原有的基础上创建一个无参构造 结果:不再报错,第…...
LeetCode.707设计链表(链表相关操作一篇就够了)
LeetCode.707设计链表 1.问题描述2.解题思路3.代码 1.问题描述 你可以选择使用单链表或者双链表,设计并实现自己的链表。 单链表中的节点应该具备两个属性:val 和 next 。val 是当前节点的值,next 是指向下一个节点的指针/引用。 如果是双…...

图论——二部图及其算法
什么是二部图 二部图的判定 例子1 任选一个节点染成红色 红色的邻居染成蓝色 蓝色邻居染成红色 例子2 这个不是二部图 无权二部图的最大匹配...

实现简单的操作服务器和客户端(下)
一、说明 描述:本教程介绍如何使用 simple_action_client 库创建斐波那契操作客户端。此示例程序创建一个操作客户端并将目标发送到操作服务器。 内容 代码代码解释编译运行操作客户端连接服务器和客户端...
HTML 语义化
目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案: 语义化标签: <header>:页头<nav>:导航<main>:主要内容<article>&#x…...

AI Agent与Agentic AI:原理、应用、挑战与未来展望
文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例:使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例:使用OpenAI GPT-3进…...

遍历 Map 类型集合的方法汇总
1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...
多场景 OkHttpClient 管理器 - Android 网络通信解决方案
下面是一个完整的 Android 实现,展示如何创建和管理多个 OkHttpClient 实例,分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...

抖音增长新引擎:品融电商,一站式全案代运营领跑者
抖音增长新引擎:品融电商,一站式全案代运营领跑者 在抖音这个日活超7亿的流量汪洋中,品牌如何破浪前行?自建团队成本高、效果难控;碎片化运营又难成合力——这正是许多企业面临的增长困局。品融电商以「抖音全案代运营…...

DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI
前一阵子在百度 AI 开发者大会上,看到基于小智 AI DIY 玩具的演示,感觉有点意思,想着自己也来试试。 如果只是想烧录现成的固件,乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外,还提供了基于网页版的 ESP LA…...
在Ubuntu中设置开机自动运行(sudo)指令的指南
在Ubuntu系统中,有时需要在系统启动时自动执行某些命令,特别是需要 sudo权限的指令。为了实现这一功能,可以使用多种方法,包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法,并提供…...

04-初识css
一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...

QT: `long long` 类型转换为 `QString` 2025.6.5
在 Qt 中,将 long long 类型转换为 QString 可以通过以下两种常用方法实现: 方法 1:使用 QString::number() 直接调用 QString 的静态方法 number(),将数值转换为字符串: long long value 1234567890123456789LL; …...

OPenCV CUDA模块图像处理-----对图像执行 均值漂移滤波(Mean Shift Filtering)函数meanShiftFiltering()
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 在 GPU 上对图像执行 均值漂移滤波(Mean Shift Filtering),用于图像分割或平滑处理。 该函数将输入图像中的…...