🔥 Solon AI & MCP v3.8.0, v3.7.4,v3.6.7 宣布

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

应用介绍

Solon AI & MCP(支撑 LTS)

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

@McpServerEndpoint(channel = McpChannel.STREAMABLE_STATELESS, mcpEndpoint = "/mcp1")public class McpServerTool {    @ToolMapping(description = "查询气象预告", returnDirect = true)    public CompletableFuture getWeather(@Param(description = "城市地位") String location) {        return CompletableFuture.completedFuture("晴,14度");    }}

重要变更:

  • mcp-java-sdk 升为 v0.17 (支撑 2025-06-18 版本协定)
  • 添加 mcp-server McpChannel.STREAMABLE_STATELESS 通道支撑(集群友爱)
  • 添加 mcp-server 异步支撑

具体更新:

  • 添加 solon-ai FunctionPrompt:handleAsync(用于 mcp-server 异步支撑)
  • 添加 solon-ai FunctionResource:handleAsync(用于 mcp-server 异步支撑)
  • 添加 solon-ai FunctionTool:handleAsync(用于 mcp-server 异步支撑)
  • 添加 solon-ai-core ChatMessage:toNdjson,fromNdjson 办法(替代 ChatSession:toNdjson, loadNdjson),新办法机制上更自由
  • 添加 solon-ai-core ToolSchemaUtil.jsonSchema Publisher 泛型支撑
  • 添加 solon-ai-core ToolSchemaUtil.isIgnoreOutputSchema Publisher 泛型支撑
  • 添加 solon-ai-mcp mcp-java-sdk v0.17 适配(支撑 2025-06-18 版本协定)
  • 添加 solon-ai-mcp mcp-server 异步支撑
  • 添加 solon-ai-mcp mcp-server streamable_stateless 支撑
  • 添加 solon-ai-mcp Tool,Resource,Prompt 对 org.reactivestreams.Publisher 异步返回支撑
  • 添加 solon-ai-mcp McpServerHost 办事宿主接口,用于隔离有状况与无状况办事
  • 添加 solon-ai-mcp McpChannel.STREAMABLE_STATELESS (办事端)无状况会话
  • 添加 solon-ai-mcp McpClientProvider:customize 办法(用于扩大 roots, sampling 等)
  • 添加 solon-ai-mcp mcpServer McpAsyncServerExchange 注入支撑(用于扩大 roots, sampling 等)
  • 优化 solon-ai-dialect-openai claude 兼容性
  • 优化 solon-ai-mcp mcp StreamableHttp 模式下 办事正派常返回时 客户端异常日记打印的情况
  • 调剂 solon-ai-mcp getResourceTemplates、getResources 不再共享注册
  • 调剂 solon-ai-mcp McpServerManager 内部接口改名为 McpPrimitivesRegistry (MCP 原语注册器)
  • 调剂 solon-ai-mcp McpClientProvider 默认不启居心跳机制(跟着 mcp-sdk 的成熟,server 都有心跳机制了)
  • mcp ToolCapabilities 添加 @JsonIgnoreProperties(ignoreUnknown = true)

新特点展示:1.MCP 无状况会话(STREAMABLE_STATELESS)和 2.CompletableFuture 异步MCP对象

传输方法对应表:(办事端与客户端,须应用对应的传输方法才可通信)

办事端 客户端 备注 STDIO STDIO   SSE SSE   STREAMABLE STREAMABLE   STREAMABLE_STATELESS STREAMABLE 对 server 集群很友爱
  • STREAMABLE_STATELESS 集群,不须要 ip_hash,但“原语”变更后无法通知 client

v3.7.4 更新(LTS 保护中)

  • 添加 solon-ai-core ChatMessage:toNdjson,fromNdjson 办法(替代 ChatSession:toNdjson, loadNdjson),新办法机制上更自由
  • 优化 solon-ai-mcp mcp StreamableHttp 模式下 办事正派常返回时 客户端异常日记打印的情况

v3.6.7 更新(LTS 保护中)

  • 添加 solon-ai-core ChatMessage:toNdjson,fromNdjson 办法(替代 ChatSession:toNdjson, loadNdjson),新办法机制上更自由

技巧预览

  • 构建聊天模型(同一方法,支撑不合的模型构建)

重要特点:

  • 一套接口支撑不合供给者、不合大年夜模型调用(经由过程方言适配)
  • 支撑聊天模型(ChatModel)
    • 支撑 Prompt 和 PromptTemplate;支撑会话记忆(ChatSession);支撑 Function Call(或 Tool Call)
    • 支撑同步接口(call)与流式接口(stream);支撑多态模型等
  • 支撑生成模型(GenerateModel)
    • 支撑生成案牍、图像、声音、视频
  • 支撑 RAG
    • 文档加载、瓜分(excel, html, markdown, pdf, ppt, word...)
    • 矢量常识库(chroma、dashvector、elasticsearch、milvus、opensearch、qdrant、redis、tcvectordb...)
    • 嵌入模型(EmbeddingModel) 、排序模型(RankingModel)
  • 支撑 MCP(McpServer、McpClient、McpProxy),支撑 MCP_2025_06_18 版本协定
    • 支撑 stdio、sse、streamable、streamable_stateless 传输方法
  • 支撑 AI-Flow
    • 支撑包涵、排它、并行、轮回等网关
  • 支撑 Spring、jFinal、Vert.x 等 Solon 以外的框架
  • 等......更多内容,参考官网介绍

v3.8.0 更新

ChatModel chatModel = ChatModel.of(apiUrl).provider(provider).model(model);//同步请求chatModel.prompt("hello").call();//流式请求chatModel.prompt("hello").stream();
  • 应用 MCP
//MCP 办事端(支撑无状况办事,支撑异步返回)@McpServerEndpoint(channel = McpChannel.STREAMABLE_STATELESS, mcpEndpoint = "/mcp")public class McpServerTool {    //对象    @ToolMapping(description = "查询气象预告")    public Mono getWeather(@Param(description = "城市地位") String location) {        return Mono.just("晴,14度");    }        //资本    @ResourceMapping(uri = "config://app-version", description = "获取应用版本号", mimeType = "text/config")    public String getAppVersion() {        return "v3.2.0";    }        //提示语    @PromptMapping(description = "生成关于某个主题的提问")    public Collection 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();

项目仓库地址?

  • gitee:https://gitee.com/opensolon/solon-ai
  • gitcode: https://gitcode.com/opensolon/solon-ai
  • github:https://github.com/opensolon/solon-ai

官网?

  • https://solon.noear.org/article/learn-solon-ai

点赞(0) 打赏

立即下载

相关下载

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部