Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

water-purifier · AI 净水器租赁管家台 💧

DSH(deepseek-harness-java)Java Native Plugin 场景案例 P82:净水器租赁平台 + AI 管家插件。

项目简介

「water-purifier」是一个净水器租赁场景的演示项目,包含:

  • w-app:Spring Boot 应用(端口 18121),提供机型、网点、租赁、统计等 REST 接口和一个可视化管家台页面。
  • w-plugin:DSH Java Native Plugin(agent:purifier-copilot),以 SPI 方式接入 DSH,提供 5 个可被大模型调用的工具。

用户在管家台页面与 AI 对话即可完成机型咨询、租赁下单、租赁单查询、运营问数等操作,AI 通过 DSH 调用插件工具读写业务数据。

功能一览

模块 说明
租赁机型 5 款机型:家用基础款 RO400G(押金 ¥199 / 月租 ¥29)、家用大通量 RO600G(¥299 / ¥39)、母婴专款反渗透(¥399 / ¥59)、商用立式 RO800G(¥699 / ¥99)、全屋前置过滤器(¥399 / ¥19)
服务网点 3 个网点:城东服务中心(S01)、城西服务中心(S02)、高新区服务中心(S03),含评分与在租量
租赁 租金按月预付;租 12 个月起送 1 次免费深度清洗;24 小时内上门装机;滤芯到期自动上门更换
租赁单 单号 W3001+,状态:已装机 / 服务中 / 已退租;退租凭机器完好押金原路退回
统计 总单量、在租 / 已退租、收入、按机型 / 按网点分布、运营建议

插件工具(5 个)

工具 说明
model_list 机型列表(押金 / 月租金 / 说明 / 租赁规则)
branch_list 服务网点列表(编号 / 特点 / 评分 / 在租量)
lease 租赁下单(客户 / 电话 / 机型 / 租期),先复述要素再执行
lease_info 租赁单查询(单号、状态、滤芯提醒)
stats 运营统计(单量 / 收入 / 分布 / 建议)

快速开始

1. 启动 DSH standalone(如未启动)

cd ~/.dsh/standalone && java -Dspring.profiles.active=standalone -Dserver.port=8090 \
  -jar ~/.dsh/skills/dsh-java-plugin-skills/runtime/deepseek-harness-java-app.jar

2. 构建并启动应用

mvn clean package
cd w-app && java -jar target/w-app-1.0.0-SNAPSHOT.jar --server.port=18121

3. 安装并激活插件

cp w-plugin/target/w-plugin-1.0.0-SNAPSHOT.jar ~/.dsh/standalone/plugins/purifier-copilot.jar

curl -X POST http://127.0.0.1:8090/api/harness/plugins/install \
  -H 'Content-Type: application/json' \
  -d '{"pluginId":"purifier-copilot","displayName":"AI 净水器租赁管家","pluginVersion":"1.0.0","runtimeType":"JAVA_NATIVE","sourcePath":"/Users/<you>/.dsh/standalone/plugins/purifier-copilot.jar","entrypoint":"cn.xiaofuge.w.plugin.WaterPurifierPlugin"}'

curl -X POST http://127.0.0.1:8090/api/harness/plugins/activate \
  -H 'Content-Type: application/json' -d '{"pluginId":"purifier-copilot"}'

4. 打开管家台

浏览器访问 http://127.0.0.1:18121,点击右侧 AI 面板的快捷按钮或直接对话,例如:

  • 「有哪些机型?押金和月租多少?」
  • 「我要租一台家用大通量 RO600G 12 个月,城东服务中心装机,冷先生 13800778811」
  • 「查一下租赁单 W3001 的状态和滤芯情况」
  • 「今天运营情况怎么样?」

5. E2E 验证(可选)

python3 purifier_e2e.py

依次验证 5 个工具调用(机型 / 网点 / 租赁 / 查询 / 统计)。

截图预览

截图 说明
首页全景 管家台首页:运营看板 + 租赁机型 + 最新租赁单
AI 机型价目咨询 AI 咨询机型与押金月租
AI 租赁下单 AI 复述确认后下单成功(租满 12 个月送深度清洗)
AI 租赁单查询 AI 查询租赁单状态与滤芯提醒
AI 运营统计 AI 运营问数与建议

目录结构

water-purifier/
├── pom.xml                # 父工程(w-app / w-plugin)
├── w-app/                 # Spring Boot 应用(18121)
│   └── src/main/java/cn/xiaofuge/w/app/
│       ├── WaterPurifierApplication.java  # 启动类
│       ├── WStore.java                    # 业务数据中心(内存)
│       ├── WController.java               # REST 接口
│       └── AssistantController.java       # SSE 代理 → DSH /api/agent/stream
├── w-plugin/              # DSH Java Native Plugin
│   └── src/main/java/cn/xiaofuge/w/plugin/
│       └── WaterPurifierPlugin.java       # 5 个工具 + 系统提示词
├── docs/                  # 使用说明 + 截图
└── purifier_e2e.py        # E2E 验证脚本

技术要点

  • Java Native Plugin:继承 AbstractHarnessPlugin,内部工具继承 AbstractTool,以 plugin__purifier-copilot__<name> 暴露给大模型。
  • SPI 注册:META-INF/services/cn.xiaofuge.deepseek.harness.domain.spi.JavaHarnessPlugin 指向 cn.xiaofuge.w.plugin.WaterPurifierPlugin。
  • SSE 透传:前端 /api/assistant/stream → DSH /api/agent/stream(agentId=purifier-copilot),流式返回。
  • 数值容错:LLM 常传字符串数字(如 "12"),Controller 对 months 做双格式解析。
  • 安全红线:系统提示词约定「先复述要素再下单」「租金按月预付」「退租凭机器完好退押金」等规则。

场景标签(topics)

dsh-java dsh-java-plugin water-purifier rental spring-boot

About

AI 净水器租赁管家台 · DSH Java Native Plugin 场景案例 P82(机型/网点/租赁/统计 + AI 流式对话)

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages