前段时间朋友找我帮忙,想给公司官网加一个智能问答入口,能自动回答产品相关咨询。需求很清楚,但真正动手时才发现卡在了第一步:申请各个大模型 API 既要海外手机号又要折腾支付方式,网络还时不时抽风。后来我直接切换到一个国内 AI 镜像平台,它聚合了 Gemini、ChatGPT、Claude、Grok、DeepSeek 等主流模型,手机或邮箱注册就能上手,网络层面完全原生适配,不用额外配置(mf.877ai.cn)。正好平台已同步上线了最新的 ChatGPT-5.5 模型,于是就用 Python 花了一个下午,把整条流程打通了。下面就把完整开发过程分享出来,从环境搭建到前后端代码,全部可复现。
一、项目概览
我们将用 Python 的 Flask 框架搭建后端,前端使用简单的 HTML/CSS/JS,通过 API 调用 ChatGPT-5.5 实现智能问答。整个项目结构如下:
text
qa_miniapp/
├── app.py # Flask 主应用
├── chatgpt_client.py # 封装 ChatGPT-5.5 调用逻辑
├── templates/
│ └── index.html # 前端页面
└── requirements.txt # 依赖清单
二、环境准备与 API 接入
首先安装依赖:
bash
pip install flask requests python-dotenv
在项目根目录创建 .env 文件,存放 API 访问凭证(避免硬编码到代码中):
text
API_KEY=your_api_key_here
API_BASE=https://api.example.com/v1
ChatGPT-5.5 使用兼容 OpenAI 格式的接口,所以可以直接通过官方 openai 库或通用 HTTP 请求调用。这里选用 requests 来降低额外依赖,代码更透明。
三、核心模块:封装 ChatGPT-5.5 调用
新建 chatgpt_client.py,核心功能是接收用户消息并返回模型回答。关键点在于消息数组的管理和温度系数的设置(问答场景建议 0.5~0.7):
python
import os
import requests
from dotenv import load_dotenv
load_dotenv()
API_KEY = os.getenv(“API_KEY”)
API_BASE = os.getenv(“API_BASE”)
def ask_chatgpt(message: str, history: list = None) -> str:
“”“调用 ChatGPT-5.5,返回回答文本”“”
if history is None:
history = []
# 构造完整消息链,系统提示设定为专业客服
messages = [
{"role": "system", "content": "你是一个专业的产品咨询助手,回答准确简洁。"}
]
messages.extend(history)
messages.append({"role": "user", "content": message})
headers = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
}
payload = {
"model": "chatgpt-5.5",
"messages": messages,
"temperature": 0.6,
"max_tokens": 1024
}
resp = requests.post(
f"{API_BASE}/chat/completions",
json=payload,
headers=headers,
timeout=30
)
resp.raise_for_status()
data = resp.json()
return data["choices"][0]["message"]["content"]
这里封装成函数,方便后面在 Flask 路由里直接调用。history 参数用于多轮对话,能保留上下文。
四、Flask 后端搭建
创建 app.py,核心是提供一个 /api/chat 的 POST 接口,接收前端发来的 JSON 数据并返回回答:
python
from flask import Flask, request, jsonify, render_template
from chatgpt_client import ask_chatgpt
app = Flask(name)
模拟的会话历史存储(实际生产建议用 session 或 Redis)
session_history = []
@app.route(“/”)
def index():
return render_template(“index.html”)
@app.route(“/api/chat”, methods=[“POST”])
def chat():
data = request.get_json()
user_msg = data.get(“message”, “”)
if not user_msg:
return jsonify({“error”: “消息不能为空”}), 400
# 调用 ChatGPT-5.5
try:
reply = ask_chatgpt(user_msg, session_history)
# 更新历史,保持最近10轮对话避免上下文过长
session_history.append({"role": "user", "content": user_msg})
session_history.append({"role": "assistant", "content": reply})
if len(session_history) > 20:
session_history.pop(0)
session_history.pop(0)
return jsonify({"reply": reply})
except Exception as e:
return jsonify({"error": str(e)}), 500
if name == “main”:
app.run(debug=True, port=5000)
在实际部署时,可用 Gunicorn 或 uWSGI 配合 Nginx,这里以开发模式运行。
五、前端简单聊天界面
在 templates/index.html 中,用纯 HTML+CSS+JS 实现一个简洁的对话框。样式上采用卡片式设计,支持回车发送:
html
智能问答
智能问答助手
你好!有什么可以帮你的?
发送
这段前端代码直接内联,无需额外构建工具,打开即可使用。
六、运行效果与优化建议
启动 Flask 后访问 http://127.0.0.1:5000,就能在浏览器里看到一个精致的聊天窗口。输入产品相关问题,ChatGPT-5.5 会利用强大的语言理解能力给出精准回答。实际落地时还可以加入以下优化:
流式响应:使用 Server-Sent Events 让回答逐字显示,体验更丝滑。
知识库对接:在 system prompt 里注入产品文档片段,让回答更有针对性。
安全过滤:增加敏感词检测,防止滥用。
七、总结
通过 Python + Flask + ChatGPT-5.5 的组合,我们不到 200 行代码就完成了一个功能完整的智能问答小程序。整个开发过程最耗时的其实不是写代码,而是前期的环境搭建和模型接入——幸运的是,借助聚合平台的统一入口,这一步被压缩到了几分钟。未来随着大模型能力的持续进化,这类小程序的落地门槛还会进一步降低,而开发者真正的价值,将更多地体现在如何把 AI 能力和业务场景巧妙地缝合起来。


