- 博客(32)
- 资源 (2)
- 收藏
- 关注
原创 RRF (Reciprocal Rank Fusion,倒数排名融合)
RRF 的全称是倒数排名融合。它**完全抛弃了绝对分数,仅仅利用文档在各自检索结果列表中的“排名(Rank)”来进行重新计分和排序。**
2026-03-02 11:55:47
930
原创 SAA ReactAgent工作原理
Spring AI Alibaba 中的`ReactAgent` 基于 **Graph 运行时**构建。Graph 由节点(Nodes)和条件边(ConditionalEdges)组成,定义了 Agent 如何处理信息。关注AgentLlmNode 、AgentToolNode 、HookNode 、ModelToToolsEdge 、ToolsToModelEdge
2026-02-21 21:59:30
1024
1
原创 Spring AI 可观测性实战
* Micrometer:它是 Java 生态中的**可观测性门面库**。它为开发者提供了一套通用的 API。你只需要调用 observation.start(),而不必关心底层的追踪系统是 Zipkin、Jaeger 还是 OpenTelemetry。* OpenTelemetry:它提供了一套通用的 **API 和 SDK**,让开发者可以用统一的方式在代码里记录 **Traces(链路追踪)**、**Metrics(指标)** 和 **Logs(日志)**
2026-02-12 21:20:50
1152
原创 SAA Graph 内存管理源码分析
AI的记忆能力是需要分层的,结合具体的业务场景具体使用,MultiTurnContextManager 维持的是聊天的火热度,Saver 维持的是程序的生命力,Store 维持的是知识的厚度。
2026-02-08 22:48:27
847
原创 RAG检索增强 ETL最佳实战
在 RAG(检索增强生成)系统的构建中,业界有一句共识:**“Garbage In, Garbage Out(垃圾进,垃圾出)”**。系统的最终表现,60% 取决于数据处理(ETL)阶段的质量。
2026-02-04 15:51:34
683
原创 Spring-AI Model Evaluator模型评估
在 Spring AI 中,Evaluator 的核心逻辑遵循 **“LLM-as-a-Judge”**(大模型即裁判)模式。
2026-01-29 17:10:33
829
原创 Spring-AI MCP 源码浅析
MCP是模型上下文协议,它能使LLM大语言模型能够以结构化的方式与外部工具和资源进行交互。* MCP本质是一个远程的工具,它也需要转换为ToolCallback才能让LLM调用* MCP不只是远程工具,还包括上下文管理,比如:传递会话上下文(如用户 ID、权限)* MCP支持跨语言、跨服务的调用,基于传输层来屏蔽差异
2026-01-27 19:44:54
892
1
原创 智能问数系统(三):生成数据报告
本篇聚焦第三阶段——**自动生成专业、可读、可行动的数据报告**,通过 **LLM + 报告模板 + 可视化嵌入** 的方式,将分析结果转化为自然语言叙述、关键指标图表展示,真正实现 **“说数清晰”**,我们可以通过**Markdown**或**HTML**形式来展示报告。
2026-01-22 19:17:56
776
原创 智能问数系统(二):数据分析师Python
由于SQL(Structured Query Language)本质上是为**数据检索和关系运算**设计的,虽然 SQL 支持 SUM, AVG, COUNT 等基本聚合,但对于复杂的统计分析,SQL 的表达力有限,SQL 返回的是平铺的二维表(Rows & Columns),因此我们可以通过Python的Pandas库对数据进行技术分析体现数据的价值。
2026-01-22 17:39:07
574
1
原创 Claude Code教程(Skills)
1. Claude Code安装配置和使用2.Skills 是包含指令、脚本和资源的文件夹的说明文档,供 LLM 可以动态加载,底层采用的是渐进式披露
2026-01-21 14:44:00
2711
原创 智能问数系统(一):高质量的Text-to-SQL
**Text-to-SQL(自然语言转 SQL)**本质是一个**语义解析(Semantic Parsing)**的问题,与LLM交互的过程中涉及自然语言的理解、数据库模型的对齐、SQL语法的生成等多个问题,尤其在负责的多表关联查询、统计分析、特定的业务术语的场景下仅仅依赖LLM会出现**“幻觉式生成”**,因此我们需要**数据库Schema增强 + 构建业务知识库**
2026-01-18 18:34:34
883
原创 TCP协议
在不可靠的网络上构建可靠的传输”—— 通过确认应答、超时重传、滑动窗口、拥塞控制等机制,在尽力而为的 IP 网络之上,提供应用所需的稳定数据通道。
2026-01-12 23:22:08
674
原创 Spring AI Structured-Output源码分析
模型返回的仍然是 String(一段 JSON 文本),Spring AI 在接收到这段文本后,调用 convert() 方法将其反序列化,详见:BeanOutputConverter.convert()。StructuredOutputConverter 接口有一个方法 getFormat()。当你调用这个方法时,它会生成一段。你需要手动或自动将这段指令拼接到发给 AI 的 Prompt 中。,这段指令中包含了你 Java Bean 的。
2026-01-09 22:59:16
379
原创 Kafka和RocketMQ存储模型对比
Kafka是为了**“数据流”**而设计的,它不仅是队列,更是流存储平台。RocketMQ是为了**“业务”**而设计的,它更像是一个可靠的、高性能的分布式消息总线。
2026-01-08 23:09:29
1068
原创 Spring-AI和LangChain4j区别
你的项目是纯 Spring Boot项目。你喜欢ChatClient这种流式构建 API。你希望由 Pivotal/Spring 官方团队背书,与 Spring Cloud 等组件深度集成。你习惯用FunctionBean 来定义工具。你还在观望,或者项目可能不用 Spring(比如用 Quarkus)。你需要对接一些冷门或特殊的模型/向量库(LangChain4j 目前支持的组件库比 Spring AI 多很多)。你喜欢 @AiService声明式接口。
2026-01-07 22:10:50
1012
原创 Netty原理分析
Netty 是一个异步的、基于事件驱动的网络应用框架,用于快速开发可维护、高性能的协议服务器和客户端。它封装了 JDK 底层复杂的 NIO(Non-blocking IO)API,提供了一套更加易用、安全、高效的网络编程接口。很多知名的开源项目(如 Dubbo、RocketMQ、Elasticsearch)的底层网络通信层都采用了 Netty,我自己做即时通讯、物联网平台、智能家居等相关的项目也频繁的用到了Netty。
2026-01-07 22:08:32
1064
原创 基于SpringAI和RAG搭建知识库实战
响应式陷阱:阻塞 IO 拖垮吞吐量,所有涉及数据库、外部 API 的操作,必须使用 .publishOn() 或 .subscribeOn(Schedulers.boundedElastic()) 切换到独立线程池,比如下面代码的。默认的 OpenAI Embedding (text-embedding-3-small) 是通用的,但在垂直领域(如医疗、工业)可能表现不佳。向量检索出来的 Top 10,可能第 1 条是错的,第 8 条才是对的。针对“A公司的供应商B的CEO是谁?用户的问题往往是不完整的。
2026-01-05 23:02:23
823
原创 Openfeign源码浅析
FeignClient接口代理执行流程feign.ReflectiveFeign.FeignInvocationHandler#invoke通过methodToHandler根据方法找到MethodHandler执行MethodHandler的调用,feign.SynchronousMethodHandler#invokefeign.SynchronousMethodHandler#invokeOpenfeign实现从FeignClient注解开始我们只在接口上加个@FeignC
2026-01-05 22:54:20
842
原创 Mybatis原理分析
SqlSessionFactoryBean-》是个FactoryBean负责生成SqlSessionFactory,1.负责解析mybatis配置文件,解析mapping配置文件,解析的信息在Configuration中维护,2.关联数据源dataSource ,也维护在Configuration中。StatementHandler:这个是个接口用于和jdbc的statement打交道,负责参数对象的映射和结果的映射,关键属性:parameterHandler和resultSetHandle。
2026-01-03 18:29:26
852
原创 xxl-job原理分析
xxl-lob分布式的任务调度框架核心思想是:任务的调度和任务的执行分离,任务的调度中心化统一调度、任务的执行分布式执行系统模块:调度中心分为执行器管理、任务管理(调度配置CRON、运行配置、路由配置、失败策略)关键技术:1.调度器和执行器如何通信,通过内嵌Netty作为http服务器,调度中心提供注册、回调等api接口、执行中心:提供心跳、心跳繁忙、运行等api接口。
2026-01-03 18:06:21
712
原创 JVM基础学习
/输出GC日志//内存溢出输出堆栈信息//NMT输出配置,可用于分析堆外内存//配置元空间大小//观察类加载和卸载信息//配置堆外大小//环境变量限制内存分配区 ArenaMALLOC_ARENA_MAX 2 或 ENV MALLOC_ARENA_MAX 2(docker配置)
2026-01-01 21:36:24
983
原创 Spring AI Advisor源码分析
Spring AI Advisors API 提供了一种灵活且强大的方式,拦截、修改和增强您在 Spring 应用中的 AI 驱动交互。 比如:聊天记忆(MessageChatMemoryAdvisor)、知识库问答(QuestionAnswerAdvisor)、日志输出(SimpleLoggerAdvisor)等等
2025-12-30 16:42:50
861
原创 Spring AI Tool Calling源码浅析析
定义阶段:你定义了一个 Java Function<Request, Response>。当你将一个函数注册为 Bean 时(通常使用 @Bean 并配合 @Description 注解),Spring AI 会将其包装成 FunctionCallback 或 ToolCallback。@Bean@Description("根据城市查询天气") // 描述会被发给 AI解析阶段:Spring AI 使用反射分析 Request 类,生成 JSON Schema。
2025-12-23 18:29:10
898
RFC3489中文版
2016-07-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅