将 DeepSeek/ChatGPT 接入微信:基于 GeWeAPI 打造高可用智能微信助理
·
核心技术栈: GeWeAPI + 大模型 API(DeepSeek / OpenAI) + 上下文缓存(Redis)
-
引言:
如何让你的微信变成 24 小时在线的 AI 助手?本文用最干的逻辑带你打通大模型与 GeWeAPI 的任督二脉,并解决多轮对话上下文残留问题。
-
技术架构:
微信用户 -> GeWe -> Webhook -> 开发者后台 -> 缓存查询上下文 -> 请求大模型 -> GeWe发送文本 -> 微信用户。 -
核心逻辑代码:
import redis
from openai import OpenAI
r = redis.Redis(host='localhost', port=6379, db=0)
ai_client = OpenAI(api_key="YOUR_DEEPSEEK_KEY", base_url="https://api.deepseek.com")
def handle_ai_chat(app_id, from_user, user_content):
# 1. 从Redis获取历史上下文
context_key = f"chat:{from_user}"
history = r.get(context_key)
messages = eval(history) if history else []
# 2. 追加当前对话
messages.append({"role": "user", "content": user_content})
# 3. 调用大模型
response = ai_client.chat.completions.create(
model="deepseek-chat",
messages=messages[-10:] # 只保留最近10轮防止爆token
)
ai_reply = response.choices[0].message.content
# 4. 更新缓存并用GeWeAPI回传微信
messages.append({"role": "assistant", "content": ai_reply})
r.setex(context_key, 600, str(messages)) # 缓存10分钟
# 调用 GeWe postText 接口回传给 user_content (代码参考第二篇)
send_private_text(app_id, from_user, ai_reply)
进阶优化技巧: 群聊内只有 @机器人 时才触发 AI 响应的逻辑判断方法(提取 Webhook 中的 ats 标签或匹配 Content 前缀)。
更多推荐


所有评论(0)