Skip to content

About

AI 共享雨伞管家台 · DSH Java Native Plugin 场景案例 P80(伞型/网点/租借/统计 + AI 流式对话)

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

umbrella-share · AI 共享雨伞管家台 ☂️

DSH(deepseek-harness-java)Java Native Plugin 场景案例 P80:共享雨伞租借平台 + AI 管家插件。

项目简介

「umbrella-share」是一个共享雨伞租借场景的演示项目,包含:

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

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

功能一览

模块 说明
伞型价目 5 款伞型:标准折叠伞(押金 ¥39 / 日租 ¥2)、加大直杆伞(¥59 / ¥3)、迷你超轻伞(¥29 / ¥1.5)、亲子伞(¥45 / ¥2.5)、双人高尔夫伞(¥79 / ¥4)
网点 3 个网点:地铁站 1 号口(P01)、中心商务区大堂(P02)、大学城东门(P03),含评分与在租数
租借 押金 + 日租金计费;信用分 650 免押;3 天内归还按 2 天计费;满 3 天超出部分 8 折;雨雪天上浮 1 元
租借单 单号 U1001+,状态:租借中 / 已归还 / 逾期;逾期按日租金 2 倍计费,伞面破损照价赔付押金
统计 总单量、租借中 / 逾期 / 已归还、租金收入、按伞型 / 按网点分布、运营建议

插件工具(5 个)

工具 说明
umbrella_list 伞型价目表(押金 / 日租金 / 说明 / 计费规则)
station_list 网点列表(编号 / 特点 / 评分 / 在租数)
rent 租伞下单(客户 / 电话 / 伞型 / 网点 / 天数),先复述要素再执行
rental_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 u-app && java -jar target/u-app-1.0.0-SNAPSHOT.jar --server.port=18119

3. 安装并激活插件

cp u-plugin/target/u-plugin-1.0.0-SNAPSHOT.jar ~/.dsh/standalone/plugins/umbrella-copilot.jar

curl -X POST http://127.0.0.1:8090/api/harness/plugins/install \
  -H 'Content-Type: application/json' \
  -d '{"pluginId":"umbrella-copilot","displayName":"AI 共享雨伞管家","pluginVersion":"1.0.0","runtimeType":"JAVA_NATIVE","sourcePath":"/Users/<you>/.dsh/standalone/plugins/umbrella-copilot.jar","entrypoint":"cn.xiaofuge.u.plugin.UmbrellaPlugin"}'

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

4. 打开管家台

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

  • 「有哪些伞型?押金和日租金多少?」
  • 「我要租一把双人高尔夫伞 3 天,在地铁站 1 号口取,岳先生 13800112233」
  • 「查一下租借单 U1001 的状态」
  • 「今天运营情况怎么样?」

5. E2E 验证(可选)

python3 umbrella_e2e.py

依次验证 5 个工具调用(伞型 / 网点 / 下单 / 查询 / 统计)。

截图预览

截图 说明
首页全景 管家台首页:运营看板 + 伞型价目 + 最新租借单
AI 伞型价目咨询 AI 咨询伞型与押金租金
AI 租伞下单 AI 复述确认后下单成功(满 3 天 8 折生效)
AI 租借单查询 AI 查询租借单状态与逾期提醒
AI 运营统计 AI 运营问数与建议

目录结构

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

技术要点

  • Java Native Plugin:继承 AbstractHarnessPlugin,内部工具继承 AbstractTool,以 plugin__umbrella-copilot__<name> 暴露给大模型。
  • SPI 注册:META-INF/services/cn.xiaofuge.deepseek.harness.domain.spi.JavaHarnessPlugin 指向 cn.xiaofuge.u.plugin.UmbrellaPlugin。
  • SSE 透传:前端 /api/assistant/stream → DSH /api/agent/stream(agentId=umbrella-copilot),流式返回。
  • 数值容错:LLM 常传字符串数字(如 "3"),Controller 对 days 做双格式解析。
  • 安全红线:系统提示词约定「先复述要素再下单」「逾期 2 倍计费」「伞面破损赔押金」等规则。

场景标签(topics)

dsh-java dsh-java-plugin umbrella sharing spring-boot

About

AI 共享雨伞管家台 · DSH Java Native Plugin 场景案例 P80(伞型/网点/租借/统计 + AI 流式对话)

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages