订单聊天演示工具

该项目运行两个Spring Boot服务,一个用于订单管理,另一个用于与LLM交互,提供订单查询功能。

  • by hassan314159
  • Java
  • 本地部署
  • 更新于
在 GitHub 查看 hassan314159/jpa-mcp-chat-playground

使用说明

订单聊天演示 — 使用方法

该项目运行两个Spring Boot服务:

  • orders-app(服务器):提供一个REST端点以列出订单,并提供一个客户端可以调用的MCP工具。
  • 订单聊天客户端(客户端):提供一个/chat端点;将您的提示发送给大型语言模型(LLM),并在有帮助时调用服务器的MCP工具。

本README仅关注如何运行和使用该应用程序(不包含Java代码)。


先决条件

  • Docker 和 Docker Compose(假设为 Compose v3.9 文件)。
  • 可选:如果需要用于健康检查的 /actuator/health,服务器上需安装 Spring Boot Actuator。

启动堆栈

  1. 从仓库根目录构建并运行: docker compose up --build -d
  2. 验证容器: docker compose ps docker compose logs -f orders-app docker compose logs -f orders-chat-client

注意:在 Compose v3.9 中,depends_on 不会等待就绪。如果客户端启动过早,请先启动服务器或在客户端入口点添加一个简单的等待。


使用服务

  • 直接从服务器(REST)列出订单: 在浏览器或任何HTTP客户端(例如,http://localhost:8081/api/orders)中打开您的REST列表URL。
  • 通过客户端与模型交谈: 发送一个POST请求到http://localhost:8080/chat,请求体为JSON格式,例如: 列出前10个订单 你应该收到一个包含“answer”的JSON响应,其中包含生成的回复。

停下来并清理干净

  • 停止容器:docker compose down
  • 停止并移除卷:docker compose down -v

故障排除

  • 客户端无法连接到服务器?在Docker中使用服务名称(orders-app),而不是localhost。
  • 客户端在服务器准备就绪之前启动(v3.9)?请先启动服务器,或者添加一个简单的等待循环,以便客户端重试直到服务器响应。
  • 在 /actuator/health 上出现 404 错误?请在服务器上添加 Actuator 依赖或使用您自己的健康检查端点。
  • 主机端口冲突?请更改docker-compose.yml中的发布端口。