> 自媒体 > (AI)人工智能 > 在 10 分钟内构建一个 Python + ChatGPT-3.5 聊天机器人
在 10 分钟内构建一个 Python + ChatGPT-3.5 聊天机器人
来源:AI中国
2025-09-20 15:24:33
115
管理

通过代码示例,帮助初学者在几分钟内学习使用 Python 和 OpenAI 的 API 构建一个简单的聊天机器人。

图片来自 Unsplash

今天,我对 ChatGPT 的存在感到平静——但当它第一次推出时,我很害怕。我妈妈是一名四年级的老师,她立即告诉我(一位职业作家和技术内容经理)我很快就要失业了。多年后,我仍然受雇,现在努力让 ChatGPT 成为我的盟友。我不仅开始体会到它的帮助,而且我还认为当机器人接管时,不要成为第一敌人是明智的。

话虽如此,为什么我还要喋喋不休呢?嗯,了解敌人是与它交朋友的一步。使用 AI 是一项非常有价值的技能。这不仅仅是问 ChatGPT 问题(我现在很喜欢)。学习如何与模型一起编码是真正利用 GPT 功能的下一步。

我设计了这个教程,就是为了帮助初学者开始理解 ChatGPT 的 API 和响应逻辑。它不会教你如何在 GPT 上构建一个花哨的应用程序,但它会帮助你了解如何编写与 openai(ChatGPT 的创建者)API 交互的代码。由于这是一个简洁的教程,因此我使用 Jupyter Notebook 构建了它。Jupyter Notebook 非常适合原型设计和测试想法。如果您不熟悉 Jupyter Notebooks,请查看此入门指南。

OpenAI 入门在 platform.openai.com 注册。访问 API 控制面板。转到 API 密钥页面 ,单击“创建新的密钥”并立即复制密钥。您以后将无法再次查看它。添加账单信息。虽然 OpenAI 提供免费试用,但我添加了一种付款方式。10 美元的信用额度通常足以试验 GPT-3.5。注意:您需要免费试用或有效计费才能使用 GPT-3.5。使用 ChatGPT-3.5 构建聊天机器人

导入所需的库和依赖项

将以下内容粘贴到您的第一个 Jupyter Notebook 单元格中:

openai 允许您与 OpenAI 的模型进行交互,例如 GPT-3.5。 python-dotenv 安全地管理 API 密钥等敏感信息,将它们从 .env 文件加载到 Python 环境中。

导入模块

使用以下代码导入 openai、os 和 dotenv,它们有助于配置环境并与 API 交互:

加载您的 API 密钥

确保您已在 OpenAI 控制面板中创建 API 密钥。现在,您将设置一个 .env 文件来安全地存储它:

将实际的 API 密钥粘贴到 sk-proj-api-key-here 的位置。接下来,将密钥加载到笔记本中:

定义 Chatbot 功能

在这里,我们定义了聊天机器人如何与 OpenAI 的 API 通信并处理对话。

该方法 openai.chat.completions.create() 是专为交互式聊天设计的最新 API 调用。此方法允许通过发送消息列表并根据正在进行的对话接收相关响应来与 GPT-3.5 进行实时通信。

GPT-3.5 等 GPT 模型旨在在会话期间保留内存。这意味着他们参考了对话的早期部分,以提供更连贯和有用的回应。我们的 chat_with_gpt 函数接受一个消息列表,该列表用作正在进行的对话历史记录。这有助于助手在上下文中做出响应。

列表中的每条消息都包含一个 “role” 值,用于告诉模型消息来自谁:

“user” 表示提问者GPT 响应的 “助手”“system” 设置行为指令(可选)

temperature 值控制助手响应的随机性或创造性。范围从 0 到 1,其中 0 是响应的可预测端,1 表示更随机和更具创意。建议将 0.7 作为最佳平衡。

API 返回响应对象。从那里,我们使用 choices[0].message.content 提取助手的回复,它指的是 GPT 生成的实际文本。

运行 Chat 循环

现在,我们将使聊天机器人具有交互性,以便用户可以与模型进行持续对话。

while True: user_input = input("You: ") if user_input.lower() in ["exit", "quit"]: print("Goodbye!") break messages.append({"role": "user", "content": user_input}) reply = chat_with_gpt(messages) messages.append({"role": "assistant", "content": reply}) print(f"Assistant: {reply}")

此部分设置一个无限循环,允许聊天机器人继续运行,直到用户键入 exit 或 quit。无限循环通过跟踪已经说过的内容,使聊天机器人成为对话式并“了解”过去的消息。此循环使对话继续进行,同时保留上下文。该上下文允许 GPT-3.5 以更自然、更有意义的方式做出响应。

以下是逐步发生的事情:

聊天机器人使用 input() 提示用户输入。如果用户键入 “exit” 或 “quit”,则循环中断,聊天机器人说再见。如果用户没有键入 “exit” 或 “quit”,messages.append(...) 会将用户的最后一条消息添加到对话历史记录中。调用函数 chat_with_gpt(messages) 来获取助手的响应。助手的回复也使用 messages.append(...) 添加到历史记录中。最后,将响应打印到控制台,以便用户可以读取它。与机器人交朋友

该项目让您对如何使用 GPT-3.5 构建聊天机器人有一个基本的了解。虽然这只是一个开始,但您现在知道如何使用 OpenAI API 进行身份验证、维护对话循环以及使用 Jupyter Notebooks 测试和运行代码。这是迈向更高级的 AI 开发和与机器人交朋友的重要第一步。

0
点赞
赏礼
赏钱
0
收藏
免责声明:本文仅代表作者个人观点,与本站无关。其原创性以及文中陈述文字和内容未经本网证实,对本文以及其中全部或者 部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 凡本网注明 “来源:XXX(非本站)”的作品,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对 其真实性负责。 如因作品内容、版权和其它问题需要同本网联系的,请在一周内进行,以便我们及时处理。 QQ:617470285 邮箱:617470285@qq.com
相关文章
全新汉兰达成了纯电动车?不带发动机的丰田真的有人买吗?..
曾经日系车的换代周期都是比较长的,甚至改款的时间都很长,因此无论是保..
新车 | 售16.98万元起/2月24日公布新权益 全新丰田威兰达入门版官图..
文:懂车帝原创 张晓丹[懂车帝原创 产品] 日前,广汽丰田公布了新一代威..
月供一千多开走丰田SUV?威兰达AIR版这次把“家用”玩明白了..
#威兰达AIR权益价13.78万#月供一千多开走丰田SUV?威兰达AIR版这次把“家..
全新丰田威兰达AIR上市,定价13.78万起,现在入手划算吗?..
#威兰达AIR权益价13.78万#2月24日,广汽丰田全新威兰达AIR版上市,有2.0L..
价格再下探,权益价13.78万元起,全新丰田威兰达AIR版上市..
不过,与Pro版车型相比,AIR版车型少了高通8155座舱芯片、副驾座椅电动调..
2026款丰田雅力士发布:升级10.5英寸大屏,保留燃油手动挡..
【网通社快报】丰田近日在日本发布2026款雅力士及雅力士Cross,新车将于3..
26款丰田亚洲龙亮相,车道保持+自动刹车+4.9L油耗,B级车天花板..
2019年亚洲龙刚进入中国市场时,许多消费者对这辆车的定位感到困惑,它的..
丰田陆放到底值不值得买?跑了5000公里,车主只说了大实话..
大家好,我是宇哥。最近很多粉丝问我:预算30万左右,想买一台靠谱的7座..
搭载新一代插混技术,丰田RAV4 PHEV海外发布,售价26.7万..
2026年2月19日,丰田在日本市场正式发布了全新第六代RAV4的PHEV版本,并..
关于作者
烽火(普通会员)
文章
1854
关注
0
粉丝
0
点击领取今天的签到奖励!
签到排行

成员 网址收录40418 企业收录2986 印章生成263660 电子证书1157 电子名片68 自媒体103984

0
0
分享
请选择要切换的马甲:

个人中心

每日签到

我的消息

内容搜索