news 2026/6/23 19:41:03

(让 Java IA MCP 更简单 )Solon AI v3.7.2 发布

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
(让 Java IA MCP 更简单 )Solon AI v3.7.2 发布

olon AI & MCP(支持 LTS)

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

主要特点:

一套接口支持不同提供者、不同大模型调用(通过方言适配)

支持聊天模型(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-03-26 版本协议

支持 stdio、sse、streamable 传输方式

支持 AI-Flow

支持包容、排它、并行、循环等网关

支持 Spring、jFinal、Vert.x 等 Solon 以外的框架

等......更多内容,参考官网介绍

v3.7.2 更新

引入 snack4-jsonschema 优化 ToolSchemaUtil

添加 solon-ai-core AiMedia:metas 方法

添加 solon-ai-core GenerateModel defaultOptions 配置支持

添加 solon-ai-core ToolSchemaUtil:buildInputParams 方法,支持 @Body 注解

添加 solon-ai-flow GenerateModelCom 组件

修复 solon-ai bean 有其它框架代理后,不能识别注解的问题

修复 solon-ai ToolSchemaUtil 部分泛型识别失败的问题

修复 solon-ai-flow ChatModelCom 加载 chatConfig 配置会出错的问题

修复 solon-ai-mcp/mcp-sdk listTools 的 nextCursor 为空时,不能正常获取问题

solon 升为 3.7.2

v3.6.5 更新(LTS 维护中)

修复 solon-ai-mcp/mcp-sdk listTools 的 nextCursor 为空时,不能正常获取问题

solon 升为 3.6.5

v3.5.9 更新(LTS 维护中)

修复 solon-ai-mcp/mcp-sdk listTools 的 nextCursor 为空时,不能正常获取问题

solon 升为 3.5.9

技术预览

构建聊天模型(统一方式,支持不同的模型构建)

ChatModel chatModel = ChatModel.of(apiUrl).provider(provider).model(model);

//同步请求

chatModel.prompt("hello").call();

//流式请求

chatModel.prompt("hello").stream();

使用 MCP

//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();

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/23 17:55:08

使用 html2canvas + jsPDF 生成PDF 的简单示例(含文字下沉修复)

一、为什么需要自定义封装&#xff1f;自个实现全局 hooks 可控&#xff0c;想怎么来就怎么来&#xff08;参考 html2pdf.js&#xff09;。直接使用 html2canvas 和 jsPDF 通常会遇到&#xff1a;内容被截断 / 超出容器内容生成不居中图片跨域污染导致失败Tailwind/UnoCSS 的样…

作者头像 李华
网站建设 2026/6/23 0:57:21

Vue3+Monaco Editor封装及SQL编辑器实现

原文链接&#xff1a;Vue3Monaco Editor封装及SQL编辑器实现 < Ping通途说 0. 前言 最近收到需求&#xff0c;老板想要在前端自定义SQL语句然后查询。安全性我强调了几次&#xff0c;仍然拗不过老板&#xff0c;那就干吧...只能在语句检查和权限上注意一下&#xff0c;例如…

作者头像 李华
网站建设 2026/6/23 17:54:55

MiniCPM-V 4.5

目录 1. 引言 问题背景 解决方案 性能亮点 贡献 2. 方法 2.1 模型架构&#xff08;Architecture&#xff09; 2.2 预训练&#xff08;Pre-training&#xff09; 2.3 监督微调&#xff08;Supervised Fine-Tuning, SFT&#xff09; 2.4 强化学习&#xff08;Reinforce…

作者头像 李华
网站建设 2026/6/23 17:55:08

Flutter工程化与协作实践指南

欢迎大家加入开源鸿蒙跨平台开发者社区&#xff0c;一起共建开源鸿蒙跨平台生态。 Flutter工程化与协作实践指南 工程化核心要素 模块化设计 采用feature-first架构设计&#xff0c;每个功能模块独立封装业务逻辑、数据层和UI组件&#xff0c;通过Dart的export机制统一管理…

作者头像 李华
网站建设 2026/6/21 5:44:05

Excel技巧:提取身份证号码中的出生年月日

制作excel表格中总是少不了要从一组数据中提取部分数据出来&#xff0c;比如在身份证号码中提取出生日期&#xff0c;今天分享方法给大家。 在出生日期单元格内输入公式&#xff1a;MID(B2,7,8) 公式注释&#xff1a;内容提取单元格位置&#xff0c;第几位开始&#xff0c;取…

作者头像 李华
网站建设 2026/6/22 0:40:57

软工毕业设计创新的开题分享

0 选题推荐 - 大数据篇 毕业设计是大家学习生涯的最重要的里程碑&#xff0c;它不仅是对四年所学知识的综合运用&#xff0c;更是展示个人技术能力和创新思维的重要过程。选择一个合适的毕业设计题目至关重要&#xff0c;它应该既能体现你的专业能力&#xff0c;又能满足实际应…

作者头像 李华