查到价后把币种、单位、数量、单价、备注写入报价单,避免销售只看到光秃秃的金额。 Co-authored-by: Cursor <cursoragent@cursor.com>
72 lines
4.1 KiB
Markdown
72 lines
4.1 KiB
Markdown
# 智能体与模型配置(功能合同)
|
||
|
||
## 模型分工(必须保持)
|
||
|
||
| 角色 | 模型默认 | 模式 | 做什么 | 不做什么 |
|
||
|---|---|---|---|---|
|
||
| DeepSeek A | `deepseek-v4-flash` + strict `/beta` | `ordered_actions` | 只根据 inbound_facts 判断意图,调用唯一 `route_decision` | 不抽字段、不写状态、不输出给用户的正文 |
|
||
| DeepSeek B | 同上或普通 base URL | `text_extract` 等 | 文字字段语义、协同字段、报价文字抽取 | 不改 Java 六态 |
|
||
| 千问文本 | `qwen-plus` | 附件文本/组织 | Excel/PDF 抽出的文本语义 | 不本地正则猜字段 |
|
||
| 千问视觉 | `qwen3-vl-plus` | 图片 | 只读图上可见内容 | 不推测、不算最终缺项 |
|
||
| 千问报价表 | 文本模型 | workbook mapping | 把已冻结事实填进清空后的报价模板 | 不发明价格 |
|
||
|
||
代码侧:新项目自建模型网关与 tool schema。`LLM_DATA_USAGE_CONFIRMED` 未确认则不得打真实模型。
|
||
|
||
## 流程编排(LangGraph)
|
||
|
||
**何时用 Graph:** 一单询价会多次挂起(补问、等卡、等主账、等 PDF),需要书签和按版本唤醒。一次性工具调用不要套 Graph。细则见 `14-LangGraph与Redis.md`。
|
||
|
||
编排步骤:
|
||
|
||
1. 询价字段确认与补问
|
||
2. 主账正式建单
|
||
3. TMS 查询与结果分类
|
||
4. 协同/群路径
|
||
5. 报价预览、采用、调价
|
||
6. 报价文件生成等待
|
||
7. 成交 / 未成交 / 协商中
|
||
8. 异常、人工、恢复
|
||
|
||
**怎么用:** `thread_id` 绑一单;checkpoint 在 PostgreSQL;停靠点中断;入站 `resume` 或 Worker **结构化 wake**(工单号 + quoteVersion + waitVersion)。无 `sender_id` 不进图。正式六态只在主账;图成功不能冒充主账成功。用户文字不能冒充 Worker 完成。
|
||
|
||
## 字段合同
|
||
|
||
机器可读(拷进新仓库,目录自定,文件名保持):
|
||
|
||
- `inquiry-required-fields-v1.json`
|
||
- `tms-dictionary-projection-v2.json`
|
||
|
||
查价必填(激活业务线之后):
|
||
|
||
- **海运**:起运港、目的港、品名、货量、整柜或拼柜、箱型箱量、报价日期
|
||
箱型箱量是一个原始业务字段;结构化 `containerItems` 只由 DeepSeek B 投影。
|
||
- **空运**:起运地、目的地、品名、件数、重量、体积、包装类型、报价日期
|
||
- **陆运**按二级类型:国内拼车/整车、跨境集拼/整车、中港(见合同 JSON),各类型均含报价日期
|
||
- **报价日期**:三线查价都要,用来查 TMS 当天/指定日的价;销售没说则系统默认为当天(上海时区),不补问;销售说了用原话,不得用当天盖掉。
|
||
|
||
协同阶段另有协同必填(贸易条款、HS、含电含磁等),点「协同」必须用 **不可变销售原话** 重跑模型 B,不得用卡片口令覆盖。
|
||
|
||
取值规则:当前激活必填字段收到非空即采集;本地不得用封闭枚举拒绝用户原文(除合同声明的机器类型)。未激活字段摘要里的 `-` 不是事实。
|
||
|
||
## TMS 结果分类(智能体必须能分流)
|
||
|
||
| 分类 | 含义 |
|
||
|---|---|
|
||
| 有价 | 业务码成功且有报价,返回报价 |
|
||
| `TMS_NO_QUOTE_1002` | 暂无报价(含 TMS 未匹配、TMS 仍缺项) |
|
||
| 技术失败 | HTTP/超时/熔断 |
|
||
|
||
查价前只校验询价必填是否已齐。销售原文非空即采集(包装写散货就记散货),本地不做包装白名单、不对销售再拦。卡片按用户说的展示,再去查 TMS。
|
||
|
||
## 报价文件
|
||
|
||
- 报价 Excel 模板放进新仓库资源目录(10 类模板与现网等价)。
|
||
- 报价任务由**后台 Worker 的 LibreOffice 槽**写对象存储 + Java 附件 + 企微文件 + Graph wake(现网是独立 quote-worker,新系统不要再拆成单独 Windows 服务)
|
||
- 群报价识别:群/工单/角色/segment/报价版本/文件 SHA 全过才能改报价状态
|
||
|
||
## 运行合同文件
|
||
|
||
新系统运行合同声明:**主账、智能体 HTTP、AIBOT 桥、一个后台 Worker**(外加 Nginx/LibreOffice/库),以及制品完整性。不要做成「必须五个 Python 服务」或「必须持有 Redis 单例锁」。
|
||
|
||
Redis 只做队列/限流/token 缓存,不当 checkpoint 或六态;用法见 `14`。
|