Solon AI & MCP v3.5.0 发布(智能体应用开发框架)

Solon AI & MCP

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

  • 同时支持 Java 8 到 Java 24
  • 一套接口支持不同提供者、不同大模型调用(通过方言适配)
  • 支持图片生成模型(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 以外的框架
  • 等......更多内容,参考官网介绍

最近更新了什么?

  • 新增 solon-ai-mcp mcp-java-sdk v0.11.0 适配(支持 MCP_2025-03-26 版本协议)
  • 调整 solon-ai-mcp channel 取消默认值(之前为 sse),且为必填(利于协议升级过度,有明确的开发时、启动时提醒)
    • 如果默认值仍为 sse ,升级后可能忘了修改了升级
    • 如果默认值改为 streamable,升级后会造成不兼容

技术预览

  • 构建聊天模型(统一方式,支持不同的模型构建)
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();

项目仓库地址?

官网?

相关推荐
香蕉大香蕉(06敬畏市场)5 分钟前
MySQL 单点详解(01)
java·数据库·mysql·面试·博客·实习
念念不忘 必有回响12 分钟前
从0到1:搭建你的第一个 MCP 服务器实战
agent·mcp
LaughingZhu20 分钟前
Product Hunt 热榜 2026-10-30:Empacer、Scape、Floot in ChatGPT
java·前端·数据库·人工智能·chatgpt·notion
niucloud-admin38 分钟前
NIUCLOUD PHP SAAS上门家政使用文档:服务保障
java·开发语言·php
IT枫斗者枫哥1 小时前
CompletableFuture失败后返回空列表:异常没了,业务含义也变了
java·后端
知识搬运临时工1 小时前
一个模板把 AEM 拖进 Full GC 死亡螺旋:300% CPU、7 GB 堆、310 万行堆栈
java·aws
用户432935928051 小时前
CoAP还是MQTT:1万只Cat.1水表三个月带宽续航实测
java
知守观1 小时前
多模块架构演进:横向分层 vs 纵向领域,13 个真实项目的切分对照
java·后端·微服务
Java成神之路-2 小时前
Java String 为什么不可变?和 HashMap 到底有什么关系?
java
paopaokaka_luck2 小时前
基于springboot+vue的益暖微光公益服务平台(DeepSeek公益助手、善款信息追溯、志愿服务积分闭环、ECharts运营分析、活动状态自动流转)
java·前端·javascript·spring boot·mysql·架构·echarts