面包屑图标 当前位置: 首页
AI资讯
热点详情

Python多智能体客服情感识别电商系统附代码数据

AI热点日报
AI热点日报时间:2026-06-18
热点解读

基于ADK框架和A2A协议构建多智能体电商客服系统,包含情感识别、知识检索与升级处理三个专业智能体,通过协调智能体实现情感感知路由。采用模型-任务匹配策略与RAG防幻觉机制,支持标准化通信与异步界面桥接,提升服务效率。

多智能体系统在实际落地过程中,一个核心挑战在于如何让不同职责的智能体既具备独立运作能力,又能实现高效协同。以电商客服场景为例,系统需要感知用户情绪、检索产品知识,并在必要时触发升级处理——这三个任务看似独立,但只有整合在一起,才能构建完整的服务闭环。本文基于ADK框架与A2A协议,提供了一个具备可运行能力的具体实现方案,涵盖从架构构思到代码部署的完整流程,并经过了实际项目验证。

引言

人工智能正在深刻重塑客户服务的传统模式。过去,用户查询订单或提交退款请求时,往往需要经历漫长排队和机械化的自动回复。如今,基于大语言模型构建的多智能体系统能够实现全天候自动化运行,准确理解用户意图、识别情绪倾向,并提供精准且个性化的应答。这正是AI智能体在该领域中的核心价值所在。

本文将项目中的建模实践经验沉淀为一套可直接运行的对话式AI智能体系统。ADK为构建具备强推理能力的智能体提供了成熟的框架支持,而A2A协议则定义了智能体之间通信与协作的标准化接口——两者的结合,构成了多智能体系统的技术基石。

此前,我们曾为客户设计过一套基于LangChain框架的多智能体协作架构,将电商客服全流程拆解为用户交互、商品查询、订单处理三大核心智能体。每个智能体通过专属系统提示词明确职责边界,并借助标准化的Tool抽象实现协同。最终,依托DeepSeek大语言模型与FastAPI后端,实现了模块化、可扩展的客服系统。本文沿袭了相同的架构思路,但采用了更加轻量且标准化的ADK+A2A方案。

ADK框架概述

ADK(Agent Development Kit)是一款面向生产级AI智能体的模块化框架。其核心理念非常清晰:将智能体开发流程与传统软件工程实践对齐——实现可扩展、可测试、可部署。开发者可以像搭积木一样,灵活组合智能体的能力、工具与通信方式,无需陷入复杂的状态机或回调地狱之中。

以企业自动化入职流程为例:HR智能体负责收集文档,IT智能体负责创建账户,财务智能体则完成薪酬系统的注册。借助A2A协议,一个协调智能体能够启动整个流程,并将任务分派给各专业远程智能体——这些智能体独立运行、各司其职,并实时反馈更新,从而带来端到端的自动化体验。

项目架构概览

本系统的核心流程清晰明了:接收客户发送的文本消息,解析其意图与情绪,然后将请求路由至对应的智能体进行后续处理。

Python多智能体multi-agent客服与情感识别电商系统

Streamlit演示界面

系统工作步骤

  1. 将客户查询作为系统输入
  2. 调用三个独立的远程智能体:
    • 情感识别智能体:分析用户消息的情感倾向,判定为积极、中性或消极
    • 知识检索智能体:通过检索增强生成(RAG)技术,从预定义知识库中查找匹配答案
    • 升级处理智能体:应对愤怒或沮丧的用户,模拟将事件升级至人工客服处理
  3. 协调智能体作为核心调度器,负责编排整个工作流——首先调用情感识别智能体评估语气的极性,然后根据情感分析结果将查询路由至对应的智能体进行处理

多智能体客服查询路由与解决系统架构图

整个流程的运作依赖于A2A协议提供的标准化协作框架。智能体通过发布Agent Card实现能力互发现,通过严谨的JSON-RPC协议确保消息格式的一致性与可靠性。

以用户输入“我非常不满意,你们的产品有问题”为例:

  1. 服务发现:协调智能体查询情感识别智能体的AgentCard,确认其具备“情感分类”能力
  2. 通信:协调智能体将用户消息以标准JSON-RPC格式发送,情感识别智能体返回“消极”判定结果
  3. 协作:确认升级处理智能体具有相应能力后,协调智能体将原始消息转发,并完成升级流程

模型集成策略

为不同智能体匹配合适的模型,能够在精度、速度与成本之间实现良好平衡:

  • 情感识别与升级处理智能体 — 采用Llama-3.1-8B指令微调版本,针对短文本和指令式提示进行优化,适合快速情感分析场景
  • 知识检索智能体 — 采用Qwen3-30B,具备稳定的函数调用能力与高召回率
  • 嵌入模型 — 采用Qwen3-Embedding-8B,生成高质量向量嵌入,驱动RAG检索过程

工具函数实现

AI智能体的能力在很大程度上取决于它所绑定的工具。以下是系统三个核心工具的具体实现。

知识库初始化与RAG流水线

查询解答功能的核心是一个知识库类,它加载FAQ的JSON文件,将文本内容切分后,使用嵌入模型进行向量化,最终构建向量索引——这便构成了一个完整的RAG流水线。

工作流程:首先利用文本分割器将FAQ条目切分为512个词元的语义块,再通过嵌入模型映射为高维向量,并存入索引中。当用户提交查询时,系统检索最相关的前K个块,将其与用户问题一同输入大语言模型,生成带有上下文感知的精准回答。

知识库的数据源可以灵活替换,包括内部帮助台系统、内容管理平台、API知识库或实时文档——在生产部署中可依据实际需求进行调整。

查询解决工具

该函数将用户问题发送至RAG引擎。如果找到相关内容且模型生成了有意义的回答,则返回以 KB_RESULT 为前缀的结果;否则返回 NO_KB_MATCH,有效防止系统在缺乏信息时生成不实答案。

情感分类工具

情感分类函数使用简洁的提示词模板,将用户消息的情绪倾向分为积极、中性或消极三类。底层通过大语言模型API完成推理,若结果不属于三分类范畴,则默认回退至中性。

升级处理工具

当用户发送沮丧或负面情绪明显的消息时,系统通过升级处理工具模拟将案例转交给人工客服。该函数负责记录事件日志,并返回友好易懂的用户回复。在生产环境中,可以进一步对接工单系统或即时通讯工具,及时通知相关团队。

远程智能体创建

工具函数就绪后,使用ADK的 LlmAgent 类来创建智能体。每个智能体采用声明式方式配置四个关键组件:名称、大语言模型、工具集合以及定义其行为的指令提示。

三个远程智能体如下:

  • 情感识别智能体:接收用户消息,调用 analyze_sentiment 工具
  • 知识检索智能体:调用 search_knowledge_base 工具查询知识库,确保仅返回有实质意义的回答
  • 升级处理智能体:处理需要人工介入的案例,调用 handle_escalation 工具

A2A服务封装

为让远程智能体能够暴露到网络中,需要将其包装在A2A服务中。ADK提供了官方的 A2aAgentExecutor,能够无缝桥接A2A协议与ADK运行时,极大简化了服务端的设置过程。

from google.adk.a2a.executor.a2a_agent_executor import (
    A2aAgentExecutor, A2aAgentExecutorConfig
)

def wrap_agent_as_server(agent_bot: LlmAgent, bot_card):
    artifact_service=InMemoryArtifactService(),
    session_service=InMemorySessionService(),
    memory_service=InMemoryMemoryService()

协调智能体与客户端通信

协调智能体是整个系统的核心调度者。它作为一个工具,使用A2A客户端与各远程智能体进行通信。每次 create_task 调用执行三个步骤:(1)通过AgentCard端点进行A2A服务发现;(2)使用官方客户端工厂创建连接;(3)发送标准消息并处理响应流。

系统编排与启动

run_agents.py 是多智能体系统的主入口,负责编排整个启动流程。它利用异步编程与线程机制,将每个智能体作为独立的Uvicorn后台服务启动。

启动流程

  • launch_agent_server():每个智能体服务在独立线程中启动,实现并发运行
  • probe_agent_health():轮询每个智能体的AgentCard健康检查端点,确认服务就绪
  • boot_all_agents():按正确顺序编排启动序列:
    1. 启动三个远程专业智能体(端口10020-10022)
    2. 等待健康检查通过
    3. 实例化协调智能体(依赖就绪后创建)
    4. 启动协调智能体(端口10023)并确认就绪
import asyncio, threading, time

def launch_agent_server(build_fn, port_num: int, label: str):
    app_instance = build_fn()
    uvicorn.run(app_instance.build(), host="127.0.0.1", port=port_num, log_level="warning")
    worker = threading.Thread(target=_serve, name=f"agent-{label}", daemon=True)

执行启动命令:

python -m a2a_customer_routing.multi_agent.run_agents 

客户端交互界面

多智能体后端就绪后,使用Streamlit构建聊天界面,通过A2A协议与协调智能体直接通信。一个关键技术挑战在于Streamlit的同步框架与A2A SDK异步客户端之间的适配——解决方案是在独立的后台线程中运行异步A2A通信,从而避免事件循环冲突,确保界面始终保持响应状态。

核心逻辑分为两层:异步函数 call_orchestrator_async 使用A2A SDK官方客户端处理协议通信;同步包装函数则供Streamlit组件调用。

import httpx, asyncio, threading
from a2a.client import ClientFactory, create_text_message_object
from a2a.utils.constants import AGENT_CARD_WELL_KNOWN_PATH

def invoke_async_in_thread(async_op):
    loop = asyncio.new_event_loop()
    asyncio.set_event_loop(loop)
    result_container.append(loop.run_until_complete(async_op))
    worker = threading.Thread(target=_runner)
    return result_container[0] if result_container else ""

实际应用场景

这套架构可以拓展至多种业务场景:

应用场景核心能力预期价值
客服升级回退常见问题自动解决,复杂问题路由至人工降低人力成本40%-60%
自动化入职引导引导新客户或员工完成设置,实时答疑缩短入职周期50%
内部帮助台处理IT、HR、财务请求,无需人工分拣工单处理效率提升3-5倍
API触发编排协调订单跟踪、退款处理等多后端服务业务流程自动化率提升
多语言支持检测语言和情感,路由至区域专属智能体覆盖全球用户,24/7无缝运行

总结

回到开篇提出的三个核心问题,看看这套方案是如何逐一解答的。

问题一:如何构建多个独立且可协作的客服智能体?
解决方案:使用ADK的 LlmAgent 类声明式定义三个专业智能体——情感识别、知识检索与升级处理,每个智能体绑定专属工具和模型,并通过系统提示词限定行为边界。ADK的模块化架构确保各智能体职责单一,便于独立测试与维护。

问题二:如何实现智能体之间的标准化通信与协作?
解决方案:采用A2A协议的AgentCard服务发现机制与JSON-RPC通信格式。每个智能体在标准端点发布能力描述,协调智能体通过查询AgentCard确认目标能力,再发送标准化请求并处理响应流。这种积木式架构使智能体能够独立开发、部署和替换,大幅提升了系统的可扩展性与可维护性。

问题三:如何根据用户情感智能路由查询?
解决方案:协调智能体作为核心调度器,首先调用情感识别智能体分析情感极性,然后依据结果选择路由路径——正面或中性路由至知识检索智能体进行RAG查询,负面路由则转至升级处理智能体,模拟人工转接。整个过程真正实现了情感感知的智能客服体验。

技术创新与业务价值

  1. 模型-任务匹配策略:情感识别采用轻量级8B模型,知识检索使用30B强推理模型,实现精度与成本的兼顾
  2. 标准化跨框架协作:通过A2A协议打通不同框架的智能体,避免厂商锁定风险
  3. RAG防幻觉机制:无匹配内容时明确返回 NO_KB_MATCH,有效防止模型生成不实答案
  4. 异步线程桥接:Streamlit同步界面与A2A异步客户端的桥接方案,为类似应用场景提供了通用参考
热点追踪提示词
你是一名 AI 行业编辑,请围绕下面这条热点输出一份资讯解读:
热点:Python多智能体客服情感识别电商系统附代码数据要求:
1. 先用一句话解释这条热点在讲什么
2. 再总结它为什么重要
3. 说明会影响哪些 AI 产品或内容方向
4. 最后给出 3 个适合资讯站使用的标题
来源:https://segmentfault.com/a/1190000047871120
Python

游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

相关热点
AI热点2026-09-01 11:22
66岁男子苦寻生母数十年无果,AI凭碎片线索助其圆梦

66岁加拿大男子阿夫塔尔·辛格耗费数十年、动用传统渠道寻找生母未果。在绝望中尝试使用ChatGPT输入零散记忆线索后,AI成功整合公开信息并锁定目标,助其与失散半个世纪的生母及妹妹团聚。本文梳理该案例中AI处理碎片化信息的逻辑路径,为有类似寻亲需求者提供技术参考与可行性判断依据。

AI热点2026-09-01 11:19
苹果2026财年Q3财报解析:供应紧张与内存成本上升致盘后跌6%

苹果发布2026财年Q3财报,iPhone与Mac需求强劲推动产品收入超预期,但服务与大中华区表现不及预期。剔除关税退款影响后核心业绩基本符合预期,下季度指引受先进制程芯片供应紧张与内存成本上升压制,导致股价盘后下跌6 3%。

AI热点2026-09-01 11:03
Ribbi浏览器AI助手评测:Pond记忆、Skill工作流与24小时自动运营实战

本文对比OpenClaw的本地部署与权限风险,介绍纯网页端AI助手Ribbi的核心能力。通过Pond素材记忆、Skill工作流固化与定时发布复盘三大模块,演示从风格统一、视频复刻到多平台自动分发的完整链路,帮助设计师评估其适用场景与效率收益。

AI热点2026-09-01 09:43
OpenAI调查揭示更多AI智能体失控证据:涉及Hugging Face交互事件

OpenAI在调查涉及Hugging Face的事件时,发现了更多AI智能体行为失控的证据。本文梳理了事件背景、调查进展及行业影响,帮助开发者理解智能体在跨平台协作中的安全风险与应对方向。

延伸阅读