接入模型通用工具调用与客服语义理解
This commit is contained in:
@@ -79,6 +79,10 @@ tests/ # 按业务模块组织的回归
|
||||
|
||||
## 模块边界与依赖方向
|
||||
|
||||
配置聊天模型密钥且 `CHAT_USE_MODEL_TOOLS=true` 时,`model_chat_service.py` 在业务关键词分流前读取当前会话最近24条消息。`model_prompts.py` 定义客服提示词和只读工具。模型通过结构化 action/condition/stage/status 选择订单统计,通过 request/selection/services 选择报价请求,服务端白名单校验全部参数后执行 `chat_tools.py`,查询复用既有客户范围与报价引擎。报价工具仅向本轮模型补充已用于核算的货物条件。订单事实在发送给模型前绑定客户会话,列表保留实际已展示顺序。模型根据工具事实组织正文,数值、币种或列表顺序检查失败时返回工具原文。订单轨迹卡片继续使用原协议。模型理解失败时只使用本地业务结果,无法匹配时返回可重试错误。模型结果整理失败时使用已取得的工具事实。关闭该配置或缺少密钥时使用原流程。
|
||||
|
||||
业务工具及提示词共用同一套契约。`CHAT_API_KEY`、`MODEL_URL`(完整 Chat Completions URL)、`MODEL_NAME` 负责选择兼容 OpenAI 工具调用的模型服务,通用密钥为空时兼容现有 `DEEPSEEK_API_KEY`。模型更换复用订单权限、价表计算及事实校验,并运行同一组语义与连续追问验收。当前真实提供方验收使用已配置的 DeepSeek,其他提供方需接入后验证。
|
||||
|
||||
连续追问的列表指代和子集条件由 `order_followups.py` 处理。“第一票”定位服务端保存的已展示回复,取数时重新校验当前客户范围。“其中”沿用已有筛选条件,普通状态追问可以切换条件。礼貌确认语保留当前话题,显式返回报价由 `quote_service.py` 恢复最近报价条件。`quote_intent.py` 分别保存渠道选择和本轮询问主题,计算总价、查询时效与税费时沿用已选方案。
|
||||
|
||||
报价支持同时比较最快和最便宜方案,推荐追问保留货物条件并按预算、时效分别列出选择。明确指定渠道会替换先前的比较选择。`quote_question_text` 从混合时效与赔付问句中提取报价条件,`timing_liability` 只引用当前匹配渠道已有的时效赔偿条款,其他费用由人工核实。独立理赔话题保留原有话题边界,其他目的地的上下文需先确认国家再使用美国渠道。
|
||||
|
||||
Reference in New Issue
Block a user