🤖 咸鱼客服项目部署全过程总结

项目目标:部署一个可用的 咸鱼智能客服系统,实现买家消息处理与 AI 回复能力。

最终结果:原始接口直连方案因平台风控受阻,已成功转为 本地可运行的闲鱼 AI 客服助手方案。

一、项目背景与目标

本次项目最初希望基于 GitHub 开源仓库完成一个"咸鱼客服"系统部署,目标包括:

  • 接入闲鱼消息场景
  • 配置大模型 API
  • 通过 AI 自动生成客服回复
  • 实现尽可能自动化的客服处理流程

最开始采用的项目仓库为:https://github.com/shaxiu/XianyuAutoAgent

二、第一阶段:部署原始仓库 XianyuAutoAgent

1. 获取项目源码

最开始通过 Codex 协助完成仓库部署。由于本地环境访问 GitHub 存在限制,因此通过替代方式将项目源码下载并解压到本地目录。

2. 检查项目依赖

对仓库进行检查后,确认其主要依赖包括:

  • openai
  • websockets
  • loguru
  • python-dotenv
  • requests

随后执行依赖安装:pip install -r requirements.txt

安装成功后,说明项目已经满足基本运行条件。

3. 创建并配置 .env

根据项目 README 和 .env.example,需要配置以下关键参数:

  • API_KEY
  • COOKIES_STR
  • MODEL_BASE_URL
  • MODEL_NAME

为了模拟已登录的闲鱼网页端身份,需要获取浏览器中的 Cookie。

主要尝试了两种方式:

方式一:通过 Network 获取

  1. 打开闲鱼网页版并登录
  2. 按 F12 打开开发者工具
  3. 切换到 Network
  4. 刷新页面
  5. 点击某个 xhr/fetch 请求
  6. 在 Request Headers 中找到 cookie
  7. 复制完整 Cookie 串

方式二:通过 Application 获取 在 Application > Cookies 中查看各个 Cookie 字段,但需要手动拼接。

最终确认,通过 Network 直接复制请求头中的 Cookie 更稳妥。

2. 配置模型参数

项目需要接入兼容 OpenAI 接口的大模型服务。

本次实践中使用的是阿里云百炼兼容模式配置:

MODEL_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
MODEL_NAME=qwen-max
API_KEY=你的模型密钥

3. .env 配置中遇到的问题

在配置过程中,项目曾持续提示缺少 API_KEY。排查后发现:

  • .env 第一行前存在隐藏字符
  • COOKIES_STR 被写成了多行
  • MODEL_NAME 格式不规范

经过调整后,所有字段均已成功读取。

四、第三阶段:运行原始项目并排查失败原因

1. 首次运行项目

在环境变量能够正确读取后,执行 python main.py,程序成功进入实际执行阶段,但在"获取初始 token"时失败。

2. 错误表现

多次测试后,错误现象始终一致:

  • 错误发生在 获取初始 token 阶段
  • 接口返回 FAIL_SYS_USER_VALIDATE
  • 同时出现 RGV587_ERROR

3. 原因分析

后续排查后得出如下结论:

  • 当前仓库的核心思路是使用 Cookie 直接请求闲鱼相关接口
  • 即使 Cookie 是最新获取的,程序仍然会在 token 获取阶段被平台拦截
  • 当前平台风控更严格,仅凭 Cookie 已不足以通过校验
  • 平台可能同时校验设备指纹、浏览器上下文、JS 环境、签名链路等额外信息

4. 阶段性结论

原始仓库 XianyuAutoAgent 当前方案已被平台风控拦截,不适合继续投入。

五、第四阶段:调整思路,转向本地 AI 客服助手方案

在确认原始方案无法稳定落地后,项目方向进行了调整:

新目标:构建一个 本地可运行的闲鱼 AI 客服助手

新的目标是:

  • 输入商品信息
  • 输入买家消息
  • 调用大模型生成客服回复
  • 通过图形界面辅助客服处理对话

这个方向相比原始方案更稳、更容易落地。

六、第五阶段:创建新的本地项目

1. 新项目定位

新的项目采用 Python + Streamlit 实现,主要功能包括:

  • 商品信息输入(标题、成色、价格、是否包邮、最低可接受价)
  • 买家消息输入
  • 大模型接口调用
  • 自动生成客服回复
  • 支持多轮对话上下文
  • 支持多种回复模式(礼貌回复、简洁回复、促成交回复)

2. Codex 自动生成项目

Codex 根据新的目标重新生成了一个本地项目,完成了:

  • 项目结构搭建
  • requirements.txt
  • main.py
  • .env.example
  • Streamlit 页面
  • 回复生成逻辑

七、第六阶段:依赖安装、测试与启动

1. 安装依赖

执行 pip install -r requirements.txt,安装成功。

2. 语法检测

执行 python -m py_compile main.py,通过。

3. 启动 Streamlit 页面

cd E:\github\咸鱼客服\xianyu_ai_assistant
streamlit run main.py

页面成功启动。

八、第七阶段:页面结构与功能

当前页面主要包括以下模块:

左侧:模型配置(API_KEY、MODEL_BASE_URL、MODEL_NAME)

中间:商品信息(标题、成色、价格、是否包邮、最低可接受价)

右侧:对话输入(回复模式选择、买家消息输入框、生成回复按钮)

下方:生成结果(展示大模型生成的客服回复内容)

九、本次实践的阶段性成果

成果一:完成了原始仓库的完整部署验证

  • 环境配置流程梳理完成
  • Cookie 获取方式实践完成
  • .env 参数配置规范明确
  • 原始方案失败原因定位清晰

成果二:成功搭建本地可运行的咸鱼 AI 客服助手

  • 接收商品信息
  • 接收买家消息
  • 基于大模型生成客服回复
  • 通过可视化界面进行操作

十、最终总结

本次咸鱼客服项目的部署与实现,整体经历了两个关键阶段。

第一阶段:尝试基于 GitHub 开源仓库进行部署,虽然顺利完成了各项配置,但项目在获取初始 token 阶段持续触发平台风控,无法稳定运行。

第二阶段:在确认原始技术路线受限后,及时调整思路,通过 Python + Streamlit 方式成功构建了本地可运行的 AI 客服辅助系统。

这次实践证明了,当一条技术路线受阻时,及时调整方向、降低目标复杂度,往往能更快地获得可运行的成果。