本项目借助 Quarkus(超音速次原子 Java 框架)和 模型上下文协议 实现了一个简单的代理型应用,运用多个 MCP 服务器以及 Quarkus + LangChain4j。
如果你想深入了解 Quarkus,可访问其官方网站: https://quarkus.io/ 。
node
和 npm
(用于启动 mcp 服务),请按照 此处 的推荐方法安装到系统中。application.properties
中与 telemetry 相关的部分。playground
的文件夹(若需使用 filesystem
MCP 服务器),或者更改 application.properties
中的名称,但该文件夹必须存在。请将这些信息放在 src/main/resources/application.properties
文件中,示例如下:
# OpenAI 配置
quarkus.langchain4j.mcp.openai.api-key=your-api-key
quarkus.langchain4j.mcp.openai.organization=your-organization-id
# Hugging Face 配置
quarkus.langchain4j.mcp.huggingface.api-key=your-hf-api-key
测试应用程序的界面,可使用以下命令:
curl http://localhost:8080
你可以与大语言模型(LLM)进行对话,示例命令如下:
curl -X POST http://localhost:8080/api/chat \
-H "Content-Type: application/json" \
-d '{"messages": [{"role": "user", "content": "你能告诉我如何学习编程吗?"}]}'
要打包应用程序,请执行以下命令:
./mvnw package
它会在 target/quarkus-app/
目录下生成 quarkus-run.jar
文件。请注意,这不是一个 uber-jar,因为依赖项被复制到 target/quarkus-app/lib/
目录中。
执行以下命令来运行打包后的应用程序:
java -jar target/quarkus-app/quarkus-run.jar
若你想要构建一个 uber-jar,请执行以下命令:
./mvnw package -Dquarkus.package.type=uber-jar
这样你就可以运行一个包含所有依赖项的单个 JAR 文件。
你可以通过以下命令创建本机可执行文件:
./mvnw package -Dnative
如果没有安装 GraalVM,你可以使用容器构建本机可执行文件:
./mvnw package -Dnative -Dquarkus.native.container-build=true
然后你可以运行你的本机可执行文件:
./target/research-1.0-SNAPSHOT-runner
如果你想了解更多关于构建本机可执行文件的信息,请访问 https://quarkus.io/guides/maven-tooling。