前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【GPT-3.5】通过python调用ChatGPT API与ChatGPT对话交流

【GPT-3.5】通过python调用ChatGPT API与ChatGPT对话交流

作者头像
宝耶需努力
发布2023-11-26 10:08:41
5570
发布2023-11-26 10:08:41
举报
文章被收录于专栏:Cloud-DIYCloud-DIY

一、引言

ChatGPT 的火爆,成功带火了AIGC,让它进入大众的视野。 ChatGPT 和Whisper API 开发者现在可以通过API将ChatGPT和Whisper模型集成到应用程序和产品之中。

image-20230303233542434
image-20230303233542434

二、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

image-20230227132138516
image-20230227132138516

2、选择“View API keys”

image-20230227132243934
image-20230227132243934

三、创建API key,点击“Create new secret key”

image-20230227132317688
image-20230227132317688

四、创建API key成功,复制保存。

代码语言:javascript
复制
sk-bUQeskc00tsTp************5i5Dop8BxAL1n7
image-20230227132333908
image-20230227132333908
image-20230227132351387
image-20230227132351387

六、调用ChatGPT API实现与ChatGPT对话

代码语言:javascript
复制
import openai   # 从这里开始,通向AI的大门,获取AI的能量源泉

输入代码

代码语言:javascript
复制
#  导入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)

输出响应

代码语言:javascript
复制
{
  "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
  }
}

调优代码(使输出结果以自然语言方式呈现出来)

代码语言:javascript
复制
# 导入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)

输出结果

代码语言:javascript
复制
作为一个AI程序,我的“脑容量”没有实际的物理大小,但我可以通过云计算利用大量服务器的处理能力来提高我的计算能力。总之,我的“脑容量”可以说是无限的。

于是接着问它

代码语言:javascript
复制
{"role": "user","content": "你知道太阳系有多大吗?"},

它给的反馈结果是

代码语言:javascript
复制
太阳系的大小是巨大的,它包括了太阳和所有行星、矮行星、小行星、彗星和星云等。根据目前的科学估算,太阳系的宽度约为287.46亿千米,也就是2874.6万亿米。

接着追问道

代码语言:javascript
复制
{"role": "assistant","content": "可以详细说一说是怎么计算出来的?"},

也给出了详细的回答和解释

代码语言:javascript
复制
太阳系的大小是指太阳的引力范围,通常认为是它对八大行星和众多天体施加引力影响的范围。

太阳系直径约为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

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-11-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、引言
  • 二、AIGC简介
  • 三、OpenAI介绍
  • 四、GPT-3.5介绍
  • 五、获得OpenAI API Key
  • 六、调用ChatGPT API实现与ChatGPT对话
  • 七、参考链接
相关产品与服务
NLP 服务
NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档