自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 AI Coding 中的概念 Agentic Coding(智能体编程)简介

Agentic Coding(智能体编程/代理式编程)是一种以 AI 智能体(AI Agent)为核心执行者的软件开发范式。AI 不再是被动的代码补全助手,而是能够自主规划、执行、调试、甚至并行处理多项开发任务的“AI 程序员”。关键转变:从“人写代码,AI 辅助” → “人定目标,AI 执行”。维度角色定位代码补全助手自主AI工程师工作模式被动响应交互式协作主动规划执行任务范围单行/函数级文件/模块级项目/系统级自主性无低高典型工具CopilotCursor。

2026-04-05 14:06:30 524

原创 python-langchain框架(3-5-pdf文件load_and_split()加载 )

极简开发:一站式方法完成加载 + 分割,无需冗余代码;灵活适配:默认规则快速测试,自定义规则满足专业场景;中文友好:支持自定义中文标点分割,完美适配中文文档;信息完整:保留页码、源文件等元数据,支持结果溯源;场景通用:旅游文档、合同、报告、说明书等 PDF 均可适配。在 RAG 开发、文档知识库搭建等场景中,这套 PDF 加载 + 文本分割方案是性价比极高的基础方案,上手简单、效果稳定,能有效提升后续检索和问答的质量。是 LangChain 加载 PDF 的核心工具,自动解析文本与元数据;

2026-04-05 14:05:45 374

原创 .NET 开源工作流:Slickflow 流程自动化运行技术指南

ServiceTask("服务节点名", "ActivityCode", "DelegateKey") // LocalMethod.RagService("RAG 回答", "RAG001") // RAG 节点.LlmService("LLM 智能节点", "LLM001") // 通用 LLM 节点.ServiceTask<MyService>("保存", "Save001") // LocalService 服务类name为流程名称,code为流程编码;内部会自动生成与默认版本号。

2026-04-04 14:19:54 410

原创 如何通过 C# 实现 PDF 文本提取?

首先创建一个 .NET 控制台应用程序(支持 .NET Framework 4.6.1+ 或 .NET Core 3.1+)。然后通过 NuGet 安装 Spire.PDF 库。下面演示如何加载一个 PDF 文件,提取其中某一页的所有文本,并保存到 TXT 文件中。:免费版对处理的 PDF 页数有限制(如最多10页),适用于个人或小型项目。有时我们只需要页面中某个矩形区域内的文本,可以通过。

2026-04-04 14:19:16 237

原创 数据库算子

想象你在图书馆查书:如果你只想知道书名,看卡片(索引)就够了。但如果你想看“作者是谁”或者“具体内容”,你就必须拿着卡片上的位置,走到书架前把那本书抽出来翻开。这个“从索引到书架取书”的过程,就是回表。假设你有一张表 ,在 字段上有索引: 第一步:查索引。 数据库在 索引树中快速定位到 。 第二步:拿指针。 索引节点里存储着该行数据的物理地址(在 MySQL 中是主键 ID,在 PostgreSQL 中是 CTID/TID)。 第三步:回表。 索引里没有 字段。数据库根据物理地址,回到原始

2026-04-03 14:48:03 397

原创 【EF Core】实体追踪——Entry中记录的数据

在改变实体状态时,先设置整个实体为 Modified,此时由于没有初始快照做比较,实体的所有属性(不含主键)都被标记为 Modified,如果这样更新数据库的话,会把 Name、LogName、Password 等属性都更改为 null 了。既然这样,咱们在查询实体后,手动给它弄个快照,然后再修改属性值,再提交更新不就完事了吗?然后,当你对实体进行各种搔操作之后,调用一下 DetectChanges 方法,它会扫描实体对象各个属性的值,并和当初创建的快照比较,以确定实体是否被修改(或删除)。

2026-04-03 14:47:09 319

原创 用Ticker API写一个行情面板:一次完整的实现过程

在这个场景下,5秒刷新已经足够,用户关心的Symbol通常不超过10个,当刷新节奏是可感知、可解释的,用户对"实时性"的焦虑会明显下降。我当时选5秒的原因是:3秒收益不明显但请求量翻倍,10秒用户会觉得"有点慢",5秒是在"感知延迟"和"系统成本"之间找到的平衡点。我当时的想法是:当用户能看到"还有3秒刷新",他会知道系统没有卡住、刷新是有节奏的、如果数据没变不是系统坏了而是市场本身没动。数据来源用的是TickDB的/v1/market/ticker,目标很简单:能稳定跑起来、能长期用起来。

2026-04-02 15:22:06 371

原创 使用 JYPPX.DeploySharp 高效部署 PaddleOCR,解锁多种高性能 OCR 文字识别方案

推理引擎设备平均耗时设备类型OpenVINOCPU288msIntel(R) Core(TM) Ultra 9 288V 8核OpenVINOIGPU99msOpenVINO混合 AUTO:IGPU+CPU100msIntel(R) Core(TM) Ultra 9 288V 8核CPU656msAMD Ryzen 7 5800H with Radeon Graphics 8核GPU114msIGPU331msGPU93msGPU52msGPU。

2026-04-02 15:21:29 179

原创 基于本地的ComfyUI API调用指南

ComfyUI提供了强大的API接口,允许开发者通过编程方式调用ComfyUI工作流,实现AI图像生成的自动化。通过API调用,可以批量生成图像、集成到现有系统中,大幅提升工作效率。✓ 工作流自动化执行✓ 批量图像生成✓ 集成到现有系统✓ 实时进度监控。

2026-04-01 15:19:47 580

原创 重构FastAPI生产部署:用异步网关与无服务器计算应对高并发

传统的多Worker部署(如Gunicorn + Uvicorn)在面对有状态计算或需要共享缓存时,复杂度会急剧上升。- 让FastAPI本身只做它最擅长的事:成为一个纯粹的、无状态的异步API网关。负责路由、基础验证、协议转换和异步任务编排。- 将重型计算“外包”:把CPU密集型、机器学习推理、复杂数据处理等任务,交给专用的Serverless函数或高性能后端服务(如Go/ Rust服务)。- Python作为“超级胶水”:利用非阻塞地并发调用这些后端服务,完美发挥其IO密集型场景下的高并发优势。

2026-04-01 15:19:03 368

原创 [JOI 2021 Final] 地牢 3 / Dungeon 3 题解

一条公路上有 �+1 个加油站,第 �(1≤�≤�) 个加油站和第 �+1 个加油站之间的距离为 ��,且第 �(1≤�≤�) 个加油站的油价为 �� 每升,一升油可以让汽车行驶一单位距离。对于一个询问 (�,�,�) 在判定不合法之后,我们用 ST 表找到 [��−�,��] 中价格最小的加油站 �,注意到此时 � 可以直接拓展到 �,并且由于 ��−� 之前的加油站无论如何都拓展不到 �,而 � 又是能拓展到 � 的加油站中价格最小的,所以最后拓展到 � 的任务一定是 � 完成的。

2026-03-31 15:48:28 364

原创 数据结构-堆 _

插入元素:先将元素放至数组末尾,再自底向上堆化,将末尾元素上浮删除堆顶元素:删除堆顶元素,将末尾元素放至堆顶,再自顶向下堆化,将堆顶元素下沉。也可以自底向上堆化,只是会产生“气泡”,浪费存储空间。最好采用自顶向下堆化的方式。

2026-03-31 15:47:46 371

原创 Codex SDK 控制台消息解析完全指南

'auth_invalid' // 认证失败| 'upstream_timeout' // 上游超时| 'rate_limited' // 速率限制// 网关不可用。

2026-03-30 15:32:13 386

原创 MyBatis-缓存与注解式开发

mybaits的缓存:将select语句的查询结果放到缓存(内存)中。下一次还是这条select语句的话,直接从缓存中获取,不再查数据库。只要内存足够大,一直会向二级缓存中增加数据,除非执行了增删改。这里的逆向工程指:根据数据库表逆向生成Java的pojo类,SqlMapper.xml文件,以及Mapper接口类等。一级缓存是无法替代的。eviction:指定从缓存中移除某个对象的淘汰算法。其中生成的XxxExample类是用来封装查询条件的。缓存的作用:通过减少IO的方式,提高程序的执行效率。

2026-03-30 15:31:29 360

原创 如何使用 LiteLLM 网关代理统一管理你的大模型

很多人刚接触大模型时,最关心的是效果;真正用久了才发现,最难的是管理、成本和稳定性。

2026-03-29 21:09:55 466

原创 dotnet DirectX 通过可等待交换链降低输入渲染延迟

尝试运行代码,最好是脱离 Visual Studio 调试的 Release 版,在低延迟触摸屏或高精度鼠标的设备上运行程序,可见此应用绘制的矩形是非常跟手的。在低延迟的触摸屏设备上运行程序,可以尝试触摸移动,开启系统触摸反馈点,甚至是在触摸过程移动鼠标产生鼠标光标,用于对比此方案的输入渲染延迟。渲染线程执行的是第二部分的代码,其初始化逻辑前置部分没有什么特殊的,按部就班创建交换链。以上是一个标准的窗口的写法。第一部分的代码在这里先简略给出,在本文末尾将给出完全的代码,和整个项目代码的下载方法。

2026-03-29 21:09:14 374

原创 告别鉴权内耗,让每一位Java开发者都能轻松上手

说了这么多对比,可能很多朋友会问:Sa-Token到底是什么?它为什么能做到“简单又强大”?官方对Sa-Token的定义是:一款开源、免费、轻量级的Java权限认证框架,专注于解决登录认证、权限控制、会话管理等一系列鉴权相关问题,让鉴权变得简单、优雅。但在我看来,Sa-Token的核心,不是“框架”,而是“懂开发者”——它知道我们不想写繁琐的配置,所以做到了零配置启动;它知道我们不想记复杂的API,所以设计了极简的调用方式;它知道我们开发中会遇到哪些痛点,所以提前内置了所有常用功能,让我们“拿来就用”。

2026-03-28 15:47:13 177

原创 一文讲清楚 OpenClaw 是什么,以及 Windows 下的部署

以“IM 里的发布助手”为例:同事在群里丢一句“发布失败了,帮我看看”,系统要做的通常是:抓日志、定位原因、给出修复动作,必要时还能帮你生成修复 PR。更工程化的视角是:它负责把外部请求接进来,并把后面的执行系统跑起来、管起来。所以“接入层 + 运行时管理”的价值会越来越明显:它能把一堆碎片能力,收敛成一个可以运营、可以上线的系统。你会发现:OpenClaw 更像把“能做事的 AI”装进一个可管理的运行时里,而不是只提供一个聊天窗口。如果你的目标是“跑一个稳定服务”,建议优先走 Linux/云上。

2026-03-28 15:46:21 249

原创 传说中的C++精灵库,专治“C++恐惧症”?

想想看,你的操作系统是谁写的?是Python turtle出轨了C++的语法,还是C++红杏出墙学会了Python的撩人技巧?它让C++放下了身段,穿上了Python的便装,但骨子里还是那个能操控硬件、驾驭操作系统、构建数字文明的底层王者!C++不仅学会了Python的简单,还保持了C++的优雅链式语法!—— 这链式调用,这丝滑手感,这简直是把C++从"西装革履的老干部"改造成了"穿着潮牌的邻家哥哥"!当你用Python turtle画图时,你学的是——怎么画图。但当你用C++精灵库画图时,你学的是——

2026-03-27 15:14:39 308

原创 Microsoft Agent Framework 对 Semantic Kernel 的继承、超越与战略整合

未来,随着.NET 10 对张量计算的进一步加速,以及模型上下文协议(MCP)在整个软件工业界的普及,我们可以预见,AI 代理将从孤立的实验项目转变为企业 IT 架构中不可或缺的组成部分。这种重构不仅体现在工具链的更新上,更体现在底层设计哲学的根本转变:从将人工智能视为一种“外部调用的库(Library)”,演进为将 AI 代理视为一种“原生的一等公民(First-class Citizen)”软件组件。这种解耦极大地增强了系统的灵活性,使得同一个代理可以在不同的企业环境中快速切换其可调用的资源。

2026-03-27 15:13:48 350

原创 一篇文章彻底搞懂 MySQL 和 Redis:原理、区别、项目用法全解析(建议收藏)

没有提供修改 value 数组的方法:String 类中没有 setCharAt()、modify() 这类修改数组元素的方法,所有看似“修改”的方法(如 replace、substring),本质都是创建新的 String 对象;不可变保证:String 的 hashCode() 会缓存第一次计算的哈希值(源码中的 hash 变量),后续无需重复计算,大幅提升效率;错误:这只是把变量 s 的引用从常量池中的 "a" 指向了 "b",原对象 "a" 本身没有任何变化,依然存在于常量池中。

2026-03-26 15:30:33 204

原创 spring中el表达式安全和扩展

需求描述是将业务问题通过系统化的方法进行表达,并转化为清晰、可执行的技术需求,使AI大模型能够准确理解意图并生成正确的解决方案。根据数据规模选择合适的索引或查找算法(如排序数组 + 二分查找、哈希索引、倒排索引等),以保证查询效率。“系统需支持峰值并发,1万请求/秒,查询响应时间<100ms(P99),存储 1000万用户数据,"搜索响应时间<100ms(P99),支持同时10万并发用户,处理5000万商品数据"面对模糊反馈,通过结构化提问,层层拆解,最后将模糊的反馈转化为可执行的具体任务。

2026-03-26 15:19:37 308

原创 接入交换机配置NAC - 802.1X认证(Dot1x)

定义:基于端口的网络接入控制协议(Port-Based NAC)。优势:工作在二层,不依赖三层IP地址,降低网络建设成本;认证报文与数据报文分离,提高安全性。

2026-03-25 15:44:36 320

原创 OpenClaw大龙虾机器人完整安装教程

OpenClaw支持WhatsApp、Telegram、飞书、钉钉、微信等平台,Windows原生对OpenClaw支持较弱,需先配置Node.js环境,:系统组件被精简、WSL未启用或Git环境未配置;,以下为详细对接步骤,其他平台操作逻辑类似。:缺少Python和C++编译工具;(妥善保存,丢失需重新初始化)。首次进入需输入初始化生成的。

2026-03-25 15:44:01 414

原创 AI时代的项目管理:1+3Ownership模式和项目管理

借鉴建筑行业角色分工,1+3 Ownership框架将「头狼/超级个体」的端到端工作拆分为三个角色:Product Owner、Tech Owner、Quality Owner。由项目经理统一规划,同时管理多个三人组执行。这个框架的核心价值是什么?提供可复制的协作模式,让普通团队也能实现AI原生开发。1+3 Ownership框架提供了一个系统性的协作模式,将"不可能的超级个体"拆分为"三个可培养的专业角色",让普通团队也能实现AI原生开发。框架的核心是。

2026-03-24 14:07:52 203

原创 Go反射:性能瓶颈与零拷贝优化

import ("reflect""strconv""unsafe"const (// abiTypeSize 是 abi.Type 结构体的大小// Go1.14+ 中固定为48字节// 空镜像类型:只做类型标注,不用填字段Name NameTyp *rtype// Name 类型,跟 runtime.Name 一样// 下面这些方法都是 runtime.Name 的实现return ""if!;

2026-03-24 14:07:02 172

原创 Redis和 Redisson 集成踩坑日记

报错信息:关键报错:ERR Client sent AUTH, but no password is setRedis和 Redisson 集成,如果 Redis 没有设置密码,必须注释掉,不然Redisson就会主动发起验证根本解决办法详细报错:这个错误信息非常明确:Redis 服务器没有设置密码,但客户端(Redisson)却尝试发送 AUTH 命令(即要求密码认证)。这是典型的配置不匹配问题。 Redis 服务器:未配置密码( 未设置) Redisson 客户端:配置了 (在

2026-03-23 21:31:56 354

原创 重构FastAPI生产部署:用异步网关与无服务器计算应对高并发

传统的多Worker部署(如Gunicorn + Uvicorn)在面对有状态计算或需要共享缓存时,复杂度会急剧上升。- 让FastAPI本身只做它最擅长的事:成为一个纯粹的、无状态的异步API网关。负责路由、基础验证、协议转换和异步任务编排。- 将重型计算“外包”:把CPU密集型、机器学习推理、复杂数据处理等任务,交给专用的Serverless函数或高性能后端服务(如Go/ Rust服务)。- Python作为“超级胶水”:利用非阻塞地并发调用这些后端服务,完美发挥其IO密集型场景下的高并发优势。

2026-03-23 21:31:18 444

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除