置顶文章

# 将单体项目拆解为微服务项目 # Demo1_再会 MyBatisPlus—— 将 MyBatis 工程改造为 MyBatisPlus 工程 # 引入 MyBatisPlus 依赖 <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId>...

精选分类

文章列表

# MCP # 为什么需要 MCP? MCP 是一个万能接口,统一的调用方式,相当于 SpringCloud 的 OpenFeign,MCP 是用于大模型应用与外部工具 / 数据源之间的调用,是对 ToolCalling 进一步的加强版,这个是 A2A 的基础。 实际上 MCP 看起来就是一堆 ToolCalling 的集合,比如百度地图的 MCP 包含了 # MCP 的两种模式 # STDIO 客户端会启动一个子进程来运行 MCP 服务器。两者通过操作系统的标准输入流和标准输出流来交换 JSON-RPC 格式的消息。 # SSE SSE 是一种基于 HTTP 的轻量级推送技术。MCP 的...

# RAG 与向量数据库 以下内容基于开源项目 All in Rag:https://github.com/datawhalechina/all-in-rag,如果感兴趣的话可以 star+fork 学习。 # 文本分块 question:为什么要文本分块? Embedding Model 有严格的输入长度上限,超出此限制的文本块在输入时都会被截断,导致信息丢失,生成的向量也无法完整代表原文的语义。 LLM 同样有上下文窗口限制,如果单个块过大,可能会导致只能容纳少数几个相关的块,限制了 LLM...

# OpenClaw OpenClaw 是一个开源的 AI 智能体网关,能让你在本地部署 AI 助手,并通过飞书、企微、QQ、Telegram 等多种平台随时使用它。它最吸引人的地方在于:数据留在本地、能访问你电脑上的文件、成本远低于订阅制 AI 服务。 # 准备、安装与初始化 详见:https://docs.openclaw.ai/start/getting-started Node.js 22.22.3+, 24.15+, or 25.9+ (Node 26 is the recommended runtime) An API key from a model provider...

# RuoYi 框架使用经验 相关内容基于中州养老项目与若依框架 RuoYi(若依)是一款基于 Spring Boot 等主流技术栈、提供代码生成器和完整权限管理功能的 Java 开源快速开发平台,旨在帮助开发者快速构建企业级后台管理系统。 通过 gitee 即可获取源码:https://gitee.com/y_project/RuoYi-Vue # 启动 # 创建数据库并导入 目前我这个是 3.9.x 版本的,用这个脚本导入:ry_20260417.sql 完成之后: # 修改 MySQL 数据库连接信息 修改连接池的地址、库名和密码 # 修改 Redis...

# 多线程、线程同步、反射、注解的基本原理 # 多线程 为什么需要多线程?这个问题问得很基础,但也很核心。简单来说,多线程是为了榨干 CPU 的性能,同时让程序响应得更快。当然,多线程也带来了新麻烦比如资源竞争、死锁,但为了效率和体验,这些代价通常是值得的。 # Java 开启线程一 class MyThread extends Thread { @Override public void run() { for (int i = 0; i <= 500; i++) {...

# LeanCloud 停服 尊敬的 LeanCloud 用户: 感谢您一直以来对 LeanCloud 的信任与支持。自平台上线以来,我们陪伴并见证了无数开发者的成长与创新,能与大家共同走过这十余年,我们深感荣幸。 为了团队能聚焦打造更优质的产品,经过慎重考虑,我们决定逐步停止 LeanCloud 的服务。 随着 LeanCloud 关闭,Shoka 主题的评论功能也即将失效,尽管评论功能在这里并不是很常用,但是有评论还是非常重要的,因此本文将基于 giscus 和 GitHub Discussions 实现评论功能,此评论功能将存储在博客仓库的 Discussions...

# 状态栏日历 / 通知中心无法打开 经过我的了解,一般来说这个问题是误使用 Dism++ 的配置所导致的,然而我并不是因为这个,因此这个方法对我来说没什么用。经过查阅官方的 bug 反馈渠道,许多人也同样遇到了这个问题,但是都没有得到解决,官方的重注册方法在我这里也是无效的。 这个问题多表现于更新之后发生的,通常问题的形式如下 更新 windows11 后,点击右下角时间,没有日历弹出 右下角点击无反应,不弹出调节框 桌面右下角的时间点击后无法弹出日历 win11 专业版,任务栏右下角日历和通知按钮左键点击无反应,右键正常 而官方的回答多为: DISM++...

# LangChain # 尝试使用 LangChain 通过 init_chat_model 创建模型,其中 api_key 是从环境变量读取的。 # 环境变量加载器 from dotenv import load_dotenvload_dotenv()load_dotenv 通过读取目录下的 .env 文件来拿到指定的 KEY。 然后通过, @tool 注册 Function Calling 工具,通过 create_agent 封装 model,最后通过 agent.invoke 方法向大模型发起请求,具体如下所示: import osfrom langchain.tools...

# 卷积与 SPP 变种模块 # SPD-Conv(空间到深度卷积)(2020)(下采样) SPD-Conv 是一种旨在替代传统跨步卷积和池化层的新型构建模块。它特别针对低分辨率图像或小目标检测任务中容易丢失细节特征的问题而设计。 在传统的 CNN 架构中,为了减少计算量和扩大感受野,通常会使用步长为 2 的卷积或池化层。但这会导致一个致命缺陷:特征信息的丢失。 PixelShuffle:将形状为 (N, C * r^2, H, W) 的张量重排列为 (N, C, H * r, W * r) 。它把通道维度的信息 “搬运”...

# Java 虚拟机 # 认识 JVM JVM 的功能: 解释和运行:对字节码文件中的指令实时的解释成机器码,让计算机执行。 内存管理:自动为对象、方法等分配内存,具有自动的垃圾回收机制,回收不再使用的对象。 即时编译:对人点代码进行优化,提升执行效率。 Java 语言如果不做任何优化,性能是不如 C 和 C++ 的,因为 Java 虚拟机在解释,而 C 不一样,C 可以直接编译成目标可执行的机器码,无需解释,Java 这样做的主要目的是为了跨平台,这也铸就 Java 今天的地位。 什么是即时编译,为什么需要即时编译? Java 代码先被编译成字节码,JVM...