用 Python 做一个 GPT 对话机器人(CLI 版本)
✅ 你将学会:
注册 OpenAI API
调用 GPT 接口与用户对话
实现一个终端可运行的聊天机器人
(可选)扩展为网页版、桌面版、微信版等
🧰 准备工作
📦 1. 安装依赖
bash
复制
编辑
pip install openai rich
openai: 用于调用 GPT 接口
rich: 让输出更美观(可选)
🔑 2. 获取 OpenAI API Key
访问:https://platform.openai.com/
登录后点击右上角头像 → API Keys
创建新 Key(保存好,只显示一次)
💡 小贴士:后续你可以放进环境变量或 .env 文件里管理。
🧠 代码实现:gpt_chat_bot.py
python
复制
编辑
import openai
import os
from rich import print
from rich.console import Console
设置你的 API Key
openai.api_key = os.getenv("OPENAI_API_KEY") or "你的API_KEY"
console = Console()
chat_history = [
{"role": "system", "content": "你是一个有帮助的中文聊天助手。"}
]
def ask_gpt(message):
chat_history.append({"role": "user", "content": message})
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo", # 或者 gpt-4
messages=chat_history,
temperature=0.7
)
reply = response['choices'][0]['message']['content']
chat_history.append({"role": "assistant", "content": reply})
return reply
def run_chat():
console.print("[bold green]欢迎使用 GPT 聊天机器人!(输入 exit 退出)[/bold green]")
while True:
user_input = console.input("[bold cyan]你:[/bold cyan]")
if user_input.lower() in ["exit", "quit"]:
print("[bold yellow]再见![/bold yellow]")
break
reply = ask_gpt(user_input)
print(f"[bold magenta]GPT:[/bold magenta]{reply}\n")
if name == "__main__":
run_chat()
🚀 效果演示
bash
复制
编辑
欢迎使用 GPT 聊天机器人!(输入 exit 退出)
你:你是谁?
GPT:我是由 OpenAI 开发的语言模型,可以和你进行自然语言对话。
你:写一首关于春天的诗
GPT:春风又绿江南岸,万物复苏笑人间……
⚙️ API Key 管理建议(可选)
建议你把 Key 放进 .env 文件中:
env
复制
编辑
.env
OPENAI_API_KEY=sk-xxxxxxx
然后用 python-dotenv 自动加载:
bash
复制
编辑
pip install python-dotenv
python
复制
编辑
from dotenv import load_dotenv
load_dotenv()
openai.api_key = os.getenv("OPENAI_API_KEY")
🔄 可扩展方向
方向 技术选型推荐
网页版 Flask / FastAPI + HTML 前端
微信机器人 itchat / wxpy + openai
桌面 GUI tkinter / PyQt
长记忆聊天 将 chat_history 持久化保存
批量问答工具 读 CSV 文件 + 调用 GPT
🧠 ChatGPT 模型区别简单对比
模型 特点
gpt-3.5-turbo 快速、便宜,日常对话足够
gpt-4 更强理解力,适合复杂场景
gpt-4-turbo 性能比 gpt-4 更强,成本更低
📦 文件打包建议
结构推荐如下:
pgsql
复制
编辑
gpt_bot/
├── gpt_chat_bot.py
├── .env # 存储 API Key
├── requirements.txt # pip freeze > requirements.txt
🎉 总结
你现在已经拥有了一个: ✅ 轻量 ✅ 中文友好 ✅ 可持续进化的 Python GPT 聊天机器人!
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。