llm agent开发
llm agent框架
主流框架主要是LangChain4j、Spring AI、 AgentScope
| 对比维度 | Spring AI | LangChain4j | AgentScope-Java |
|---|---|---|---|
| 核心定位 | Spring生态的AI扩展,将AI能力融入Spring编程模型 | Java版的LangChain,为Java开发者提供统一的LLM接口 | 面向生产级多智能体系统的编程框架 |
| 设计哲学 | 生态融合:遵循Spring“约定优于配置”,与Spring Boot无缝集成 | 声明式/类型安全:将AI能力作为Java类型系统的一部分,@AiService接口即AI服务 |
Agent-as-a-Service:把智能体当作可独立运行、可观测、可治理的服务 |
| 开发范式 | 命令式 + Fluent API (ChatClient.prompt()...) |
声明式 (@AiService 接口) + 编程式 (AiServices.builder()) |
ReAct范式 + Harness工程化 |
| 模型支持 | 10+ 家提供商 | 20+ 家提供商 | 模型无关,可集成任意模型 |
| 向量数据库/RAG | ✅ 内置,支持15+种向量库 | ✅ 最强大,支持30+ 种向量存储 | ✅ 内置支持 |
| Agent/智能体 | ⚠️ 基础,Agent编排能力相对单薄 | ✅ 完整,支持ReAct Agent等 | ✅ 原生/最强,ReActAgent、双层Agent架构、多智能体协作 |
| 多智能体协作 | 通过Spring AI Alibaba的A2A协议支持 | ❌ 需自行实现通信 | ✅ 原生支持,内置A2A(Agent-to-Agent)与MCP协议 |
| 可观测性 | ✅ 强,与Micrometer深度集成 | ⚠️ 基础 | ✅ 强,原生集成OpenTelemetry |
| 安全与管控 | 依赖Spring Security生态 | 无内置安全机制 | ✅ 企业级,安全沙箱、运行时中断、人机协作Hook |
| 高性能特性 | Spring Boot 自动配置、健康检查 | 框架中立,轻量级 | ✅ 响应式架构(Project Reactor),GraalVM原生镜像冷启动 <200ms |
| 最低Java版本 | Java 17+ | Java 17+ | Java 17+ |
| GitHub Stars | ~8.9k | ~12.2k | ~3.5k |
| 学习曲线 | ⭐⭐ (Spring开发者零门槛) | ⭐⭐⭐ (需理解Chain/AiService概念) | ⭐⭐⭐⭐ (概念较新,Harness工程化有一定复杂度) |
| 典型场景 | Spring技术栈企业,单步对话+工具调用为主 | 需要最广泛模型和向量库集成,框架中立项目 | 复杂多智能体系统,对高并发、高可用、安全管控有严苛要求的生产环境 |
可以两个框架打配合:Spring AI 做壳,LangChain4j /做核
- 前后端分离你可以用 Spring AI 暴露标准的API接口给前端,而在后端复杂的逻辑处理层,引入 LangChain4j 来处理核心的推理链。
- MCP协议互通这是个高级玩法。你可以用 Spring AI 实现一个MCP(Model Context Protocol)服务器端,专门负责对接模型;然后用 LangChain4j 写一个MCP客户端,专门负责复杂的业务编排。两者通过协议解耦,各司其职。
LangChain4j
是一个专为 Java 开发者设计的大语言模型 (LLM) 集成框架,旨在简化 Java 应用程序与各种 LLM 提供商的集成过程。
该项目受到 Python 的 LangChain、Haystack、LlamaIndex 等框架的启发
LangChain4j维护方是LangChain4j 开源社区,是参考LangChain的设计思路启发为Java 生态设计的框架。
LangChain4j 的三大核心理念
- 统一 API:屏蔽 20+ LLM 厂商(OpenAI、Anthropic、Google、AWS Bedrock、Azure、Ollama、Mistral、智谱、DashScope 等)和 30+ 向量库(Pinecone、Milvus、Chroma、PGVector、Redis、Qdrant、Weaviate 等)的私有 API 差异,业务代码与底层供应商解耦,可一键切换。
- 全栈工具箱:从底层的 Prompt 模板、Chat Memory、Function Calling,到高层的 Agents、RAG、AI Services,把社区沉淀的常见抽象封装成可复用代码。
- Idiomatic Java:使用 Builder、注解、接口、SPI、@Tool、@SystemMessage 等 Java 原生范式,而不是把 Python 的 Chain/LlamaIndex 概念生硬搬过来。
环境要求
JDK: 17 及以上
Maven 3.8+
如果是springboot项目 Spring Boot 3.2 或更高版本
AgentScope
官网:https://java.agentscope.io/v2/zh/intro.html
官方文档:https://java.agentscope.io/v2/zh/docs/index.html
llm文档:https://java.agentscope.io/v2/llms.txt

浙公网安备 33010602011771号