前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >0基础快速集成ChatGPT!请收藏好这份保姆级入门指南!

0基础快速集成ChatGPT!请收藏好这份保姆级入门指南!

作者头像
程序员洲洲
发布2024-06-07 15:01:25
发布2024-06-07 15:01:25
16300
代码可运行
举报
文章被收录于专栏:项目文章项目文章
运行总次数:0
代码可运行

前言

如果大家要在 Python 中使用 ChatGPT,需要安装 OpenAI API 客户端并获取 API 密钥。

在接下来的文章中,我们将设置一个简单的示例,在 Python 程序中使用 ChatGPT 所需的确切步骤。

第一步:创建一个项目文件夹

代码语言:javascript
代码运行次数:0
复制
$ mkdir python-chatgpt
$ cd python-chatgpt

第二步:安装OpenAI API库

要为 Python 安装 OpenAI API 客户端库,您需要在系统上安装 Python 和 pip(Python 包管理器)。

要安装该库,请打开终端或命令提示符并键入以下命令:

代码语言:javascript
代码运行次数:0
复制
$ pip install openai

这将安装 OpenAI API 客户端及其所有依赖项。

安装完成后,可以通过在脚本顶部添加以下行来在 Python 代码中导入该库:

代码语言:javascript
代码运行次数:0
复制
import openai

接下来这样做:在项目文件夹中创建一个新文件 chat.py 并首先在文件顶部插入 import 语句。

让我们进一步扩展 Python 代码并使用 OpenAI 客户端库与人工智能进行交互:

这将生成对提示“Hello, how are you today?”的响应。使用 ChatGPT 模型。响应将作为响应变量中的字符串返回。

代码语言:javascript
代码运行次数:0
复制
import openai

# Set up the OpenAI API client
openai.api_key = "YOUR_API_KEY"

# Set up the model and prompt
model_engine = "text-davinci-003"
prompt = "Hello, how are you today?"

# Generate a response
completion = openai.Completion.create(
    engine=model_engine,
    prompt=prompt,
    max_tokens=1024,
    n=1,
    stop=None,
    temperature=0.5,
)

response = completion.choices[0].text
print(response)

第三步:参数说明

可以通过调整 temperature 参数来自定义模型的行为,该参数控制生成文本的随机性级别。较高的temperature会导致更多变化且可能不太连贯的响应,而较低的temperature会产生更可预测且可能更连贯的响应。

还可以使用 stop 参数指定一个字符串或字符串序列,如果在生成的文本中遇到这些字符串或字符串序列,将导致模型停止生成更多文本。这对于控制生成文本的长度或确保模型不会生成不适当的内容很有用。

YOUR_API_KEY 是您实际 API 密钥的占位符。

获得 API 密钥后,您需要将 Python 代码中的 YOUR_API_KEY 替换为您的实际 API 密钥。这将允许 API 客户端验证您对 OpenAI API 的请求。

让我们试试看。再次切换到命令行并通过键入以下内容来执行 Python 脚本:

代码语言:javascript
代码运行次数:0
复制
$ python chat.py

在下面的屏幕截图中,您可以看到 ChatGPT 正在回答“你好,你今天好吗?”这个问题。我们已经提交:

以上只是个简单的示例,只是展示如何集成 OpenAI,并验证了是否集成成功,还不能完成基于用户输入的人机交互。

第四步:基于人机交互

接下来调整下代码如下所示:

代码语言:javascript
代码运行次数:0
复制
import openai

# 初始化 OpenAI API 客户端
openai.api_key = "<你的 API Key>"

# 定义一个函数生成 ChatGPT 的回复
def generate_response(prompt):
    # 调用 OpenAI API 生成回复
    completions = openai.Completion.create(
        engine="text-davinci-003",  # 指定使用的引擎名称
        prompt=prompt,  # API 请求的提示信息
        max_tokens=1024,  # API 响应的最大令牌数
        n=1,  # API 请求的完成数
        stop=None,  # API 响应的终止标志
        temperature=0.5,  # API 请求的温度参数
    )

    # 从 API 响应中取得回复
    message = completions.choices[0].text
    return message

# 初始化一个变量来存储对话上下文
context = ""

# 开始一个死循环来接受用户输入
while True:
    # 提示用户输入信息
    user_input = input("你:")
    # 如果用户输入结束命令,退出循环
    if user_input in ["结束", "退出", "end", "exit"]:
        break
    # 把用户输入信息添加到对话上下文中
    context = context + user_input + "\n"
    # 调用 generate_response() 函数生成回复
    response = generate_response(context)
    # 显示 ChatGPT 的回复
    print("ChatGPT:" + response)
    # 把 ChatGPT 的回复添加到对话上下文中
    context = context + response + "\n"

这是一个简单的代码示例,它支持带有上下文语境的用户交互。您可以根据自己的需求来定制代码。该代码实现了一个带有上下文语境的用户交互功能,并允许用户通过输入 “结束”,“退出”,“end” 或 “exit” 等命令结束对话。

代码中的主要部分包括:

  • 初始化 OpenAI API 客户端:通过设置 API Key 来访问 OpenAI API。
  • generate_response() 函数:生成 ChatGPT 的回复。该函数使用 OpenAI API 生成回复,并返回 API 响应中的回复内容。
  • 对话循环:一个死循环,接受用户输入并生成 ChatGPT 的回复。

每一次用户输入都会添加到对话上下文中,并作为提示信息传递给 generate_response() 函数,以生成与上下文相关的回复,以下是运行后的效果展示。

总结

参考文章:https://songshanhu.csdn.net/64425c17ae650e245cfead64.html

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 第一步:创建一个项目文件夹
  • 第二步:安装OpenAI API库
  • 第三步:参数说明
  • 第四步:基于人机交互
  • 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档