(对标 Spring IA 和 LangChain4j)Solon AI & MCP v3.7.0, v3.6.4, v3.5.8 发布(支持 LTS)

Solon AI & MCP

Solon AI & MCP ,是 Solon 官方推出的 Java 智能体应用开发框架。旨在为 Java 开发者提供统一的接口抽象层,简化与 OpenAI、DeepSeek、QWen 等主流 AI 模型的集成流程,以及简化 Mcp 的开发体验。同时支持 Java 8 到 Java 25。

主要特点:

  • 一套接口支持不同提供者、不同大模型调用(通过方言适配)
  • 支持图片生成模型(ImageModel)
  • 支持聊天生成模型(ChatModel)
    • 支持 Prompt 和 PromptTemplate
    • 支持会话记忆(ChatSession)
    • 支持 Function Call(或 Tool Call)
    • 支持同步接口(call)与流式接口(stream)
    • 多态模型等
  • 支持 RAG
    • 文档加载、分割(excel, html, markdown, pdf, ppt, word...)
    • 矢量知识库(chroma、dashvector、elasticsearch、milvus、opensearch、qdrant、redis、tcvectordb...)
    • 嵌入模型(EmbeddingModel) 、排序模型(RankingModel)
  • 支持 MCP(McpServer、McpClient、McpProxy),支持 MCP_2025-03-26 版本协议
  • 支持 AI-Flow
  • 支持 Spring、jFinal、Vert.x 等 Solon 以外的框架
  • 等......更多内容,参考官网介绍

v3.7.0 更新

  • 优化 solon-ai-core ToolSchemaUtil:outputSchema 泛型处理
  • 修复 solon-ai parseToolCall 接收 stream 中间消息时可能会异常(添加 hasNestedJsonBlock 检测)
  • 修复 solon-ai-mcp 可能出现 Unknown media type 错误(取消 request.contentType 空设置)
  • jedis 升为 7.0.0 (通过 redisx)
  • solon 升为 3.7.0

v3.6.4 更新

  • 优化 solon-ai-mcp 取消 request.contentType("") 设置
  • 修复 solon-ai parseToolCall 接收 stream 中间消息时可能会异常(添加 hasNestedJsonBlock 检测)
  • 修复 solon-ai-mcp 可能出现 Unknown media type 错误(取消 request.contentType 空设置)
  • solon 升为 3.6.4

v3.5.8 更新

  • 优化 solon-ai-mcp 取消 request.contentType("") 设置
  • 修复 solon-ai parseToolCall 接收 stream 中间消息时可能会异常(添加 hasNestedJsonBlock 检测)
  • 修复 solon-ai-mcp 可能出现 Unknown media type 错误(取消 request.contentType 空设置)
  • solon 升为 3.5.8

技术预览

  • 构建聊天模型(统一方式,支持不同的模型构建)
java 复制代码
ChatModel chatModel = ChatModel.of(apiUrl).provider(provider).model(model);

//同步请求
chatModel.prompt("hello").call();

//流式请求
chatModel.prompt("hello").stream();
  • 使用 MCP
java 复制代码
//MCP 服务端
@McpServerEndpoint(channel = McpChannel.STREAMABLE, mcpEndpoint = "/mcp")
public class McpServerTool {
    //工具
    @ToolMapping(description = "查询天气预报")
    public String getWeather(@Param(description = "城市位置") String location) {
        return "晴,14度";
    }
    
    //资源
    @ResourceMapping(uri = "config://app-version", description = "获取应用版本号", mimeType = "text/config")
    public String getAppVersion() {
        return "v3.2.0";
    }
    
    //提示语
    @PromptMapping(description = "生成关于某个主题的提问")
    public Collection<ChatMessage> askQuestion(@Param(description = "主题") String topic) {
        return Arrays.asList(
                ChatMessage.ofUser("请解释一下'" + topic + "'的概念?")
        );
    }
}


//MCP 客户端
McpClientProvider clientProvider = McpClientProvider.builder()
                .channel(McpChannel.STREAMABLE)
                .apiUrl("http://localhost:8080/mcp")
                .build();

//客户端与聊天模型集成

//::构建时集成(全局)
ChatModel chatModel = ChatModel.of(apiUrl).provider(provider) .model(model)
                .defaultToolsAdd(clientProvider); 
                
//::聊天时集成(单次)
chatModel.prompt("hello").options(o -> o.toolsAdd(clientProvider)).call();

项目仓库地址?

官网?

相关推荐
风筝在晴天搁浅14 小时前
hot100 78.子集
java·算法
壮Sir不壮15 小时前
2026年奇点:Clawdbot引爆个人AI代理
人工智能·ai·大模型·claude·clawdbot·moltbot·openclaw
玉梅小洋15 小时前
Claude Code 从入门到精通(七):Sub Agent 与 Skill 终极PK
人工智能·ai·大模型·ai编程·claude·ai工具
-嘟囔着拯救世界-15 小时前
【保姆级教程】Win11 下从零部署 Claude Code:本地环境配置 + VSCode 可视化界面全流程指南
人工智能·vscode·ai·编辑器·html5·ai编程·claude code
故事和你9115 小时前
sdut-Java面向对象-06 继承和多态、抽象类和接口(函数题:10-18题)
java·开发语言·算法·面向对象·基础语法·继承和多态·抽象类和接口
x-cmd15 小时前
[x-cmd] x claude ds - 无需 Claude 账号!零门槛让 Claude Code 接入 DeepSeek AI 模型
ai·claude·deepseek·claude-code·写代码
Configure-Handler16 小时前
buildroot System configuration
java·服务器·数据库
:Concerto16 小时前
JavaSE 注解
java·开发语言·sprint
电商API_1800790524717 小时前
第三方淘宝商品详情 API 全维度调用指南:从技术对接到生产落地
java·大数据·前端·数据库·人工智能·网络爬虫
一点程序17 小时前
基于SpringBoot的选课调查系统
java·spring boot·后端·选课调查系统