Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

领克车型任务型 LLM 对话系统

这是一个面向车载任务型对话场景的多轮交互项目,核心目标是让系统在复杂车载环境中实现更准确的落域、意图识别、槽位抽取和外部服务调用。我在项目中重点参与了基于 LLM、Agent、Function Calling 和 MCP 的多阶段对话链路设计,并将拒识、意图识别、NLU 和多轮改写串成一套完整方案。

从简历项目总结视角看,这个系统覆盖 12 个领域、400+ 技能,目标是支撑车载场景中的高效任务执行与对话控制,日均可处理 10w+ 指令。当前 GitHub 仓库保留的是项目核心交付内容,也就是 模型文件项目源码 两部分。

项目亮点

  • 面向真实车载任务型对话场景,覆盖多领域、多技能路由
  • 结合 LLM、微调模型、Agent、Function Calling 和 MCP 完成对话编排
  • 支持拒识、意图识别、槽位抽取、第三方服务调用与流式回复
  • 同时保留训练资源、模型文件和推理源码,方便演示与复现

我的工作

  • 参与任务型对话整体链路设计,打通拒识、意图识别、NLU、改写和工具调用流程
  • 参与基于微调模型的拒识与意图识别方案落地,提升落域和意图判断质量
  • 参与基于 DeepSeek + Function Calling 的 NLU 与槽位抽取流程设计
  • 参与 MCP 服务接入,支持天气查询、音乐播放、导航搜索等第三方能力调用
  • 参与多轮对话改写方案设计,提升跨轮上下文理解和任务连续性

项目效果

  • 领域覆盖:12 个领域
  • 技能规模:400+ 技能
  • 系统吞吐:日均处理 10w+ 指令
  • 拒识模型:50w 条语料,拒识率 90%+,QPS 500+
  • 意图识别:40w 条语料,TOP1 准确率 85%,TOP5 准确率 98%
  • NLU 效果:意图识别率 87%,槽位抽取准确率 91%
  • 多轮改写:域内与跨域综合改写准确率 92%

核心设计

这个项目的关键不只是“把模型接起来”,而是把不同阶段拆开处理,让每个模块各自负责最合适的任务。

  1. 先用轻量级模型做第一阶段意图筛选和 top-k 召回
  2. 再让 LLM 在候选范围内完成更精确的意图匹配和关键信息抽取
  3. 对多轮对话先做 query 改写,补齐上下文
  4. 对可执行任务通过 Function Calling 和 MCP 调用外部服务
  5. 最后通过服务端流式返回结果

这套设计的核心价值是避免让 LLM 直接在海量工具库中做全量匹配,从而降低误匹配率并提升响应效率。

技术栈

  • Python
  • Flask
  • Flask-SocketIO
  • Redis
  • Hugging Face / Transformers
  • BERT / 轻量级拒识模型
  • DeepSeek
  • Function Calling
  • Agent 式服务编排
  • MCP 服务接入

当前仓库包含什么

.
├─模型文件/      训练数据、预训练模型、已训练权重
└─项目源码/      对话系统源码、训练脚本、MCP 与功能调用模块

说明:

  • 这是从原始项目目录中裁剪出来的公开版本
  • 仓库只上传了 模型文件项目源码
  • 原目录中的视频、压缩包、截图等内容没有进入仓库

目录结构

项目源码/

项目源码/
├─client/           各类客户端调用逻辑
├─config/           配置与环境变量
├─function_call/    工具调用与任务处理
├─mcp_core/         MCP 相关服务
├─test/             测试与基准脚本
├─train/            训练相关代码与资源
├─utils/            日志和工具函数
├─start.py          服务主入口
├─dialog.py         对话逻辑
├─prompts.py        Prompt 配置
└─requirements.txt  依赖列表

模型文件/

  • data/:拒识、意图识别等任务的数据
  • pretrained/:预训练模型资源
  • saved/:训练好的模型权重

快速开始

1. 安装依赖

cd 项目源码
pip install -r requirements.txt

2. 配置环境变量

项目示例配置位于 项目源码/config/config.ini。正式运行前请根据环境修改以下内容:

  • API_KEY
  • BASE_URL
  • BOT_URL
  • AMAP_MAPS_API_KEY
  • REJECT_URL
  • INTENT_URL
  • NLU_URL
  • ENTRY_URL

3. 启动服务

cd 项目源码
python start.py

4. 健康检查

服务启动后可访问:

GET /health

关键模块说明

  • start.py:主服务入口,负责 SocketIO 事件、请求流转和结果回传
  • client/:封装聊天、NLU、拒识、重写、仲裁等服务调用
  • function_call/:负责工具调用和任务执行逻辑
  • mcp_core/:MCP 服务端与客户端核心代码
  • train/:训练与推理相关脚本

仓库说明

  • 当前仓库已设置为公开仓库
  • 仓库中包含多个较大的模型权重文件,超大文件已通过 Git LFS 管理
  • 如果克隆后发现模型文件没有完整拉取,请先确认本地已安装 Git LFS

注意事项

  • 项目源码/config/config.ini 中的密钥和地址只是占位示例,使用前必须替换
  • 项目运行依赖 Redis 和多个下游服务,仅启动 start.py 不能保证全链路可用
  • 仓库体积较大,首次克隆和拉取会比较慢

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages