自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 RAG vs Agentic RAG:一次检索的管道,和会思考的调研员

一句话:经典 RAG 是"查一次字典再答题",Agentic RAG 是"会思考的调研员",先查、不够再查、验证过再写报告。循环:模型先思考"这个问题要不要检索、该搜什么",然后执行动作(调检索器、改写查询、调用 Web 搜索或 SQL 工具),拿到观察结果后评估"信息够不够"——不够就进入下一轮,直到自认为充分才生成最终答案。经典 RAG 是"查一次字典再答题"的线性管道,Agentic RAG 是"会思考的调研员"——先查、不够再查、换着来源查、验证过再写报告。两者的区别不在"检不检索",而在。

2026-10-08 09:00:00 229

原创 从「能用」到「可控」:Prompt 工程与日常写 Prompt 的本质区别

Prompt 工程不是玄学,是实验科学——合格的 Prompt 工程师,一半时间写 Prompt,另一半时间写评估 Prompt 的代码。,追求"一次命中"。**同样是"写 Prompt",为什么有人月薪数万做"Prompt 工程师",有人只是把 AI 当高级补全工具?**差别不在天赋,而在认知——你是在"调用 API",还是在"设计 DSL"。所以"日常开发写 Prompt"和"Prompt 工程"的区别,本质上就是**“调用 API"和"设计 DSL”**的区别:一个面向当前任务,一个面向一类问题。

2026-10-07 18:00:00 177

原创 基础项目过大厂面试:把 CRUD 讲出架构感的 4 个能力位

*✅ 深度答:**在表格组件中,为避免渲染上万条数据造成卡顿,我封装了一个基于 IntersectionObserver 和 scrollTop 监听的虚拟滚动组件,只保留视口附近的数据渲染。**聚焦工程通用能力,别追复杂业务:**状态管理(Pinia/Redux)、请求封装(Axios/Fetch)、组件抽象(配置式表单、分页表格)、性能优化(懒加载、虚拟列表)、权限控制(动态路由、按钮权限)。**简历写细节,避免空泛:**聚焦"问题 + 手段 + 结果"三段式结构,别写"完成了 xxx 模块"。

2026-10-07 09:00:00 148

原创 Agent 大结果治理:Artifact 化与分页续读

*一分钟版(面试开场):**Agent 调工具,一查经常就是几万行。核心是一个**"仓库提货单"模型**——大结果是仓库里的货,模型手里只拿提货单(Artifact 引用),要看哪件货就凭单去取,取不到(权限没了/货删了)就明确失败。**落地顺序(照这个写一遍):**先做完整性标记(三个状态,这是最关键的一个字段,模型靠它决定信不信手里的数据)→ 三档分流 → 外置存储(指纹去重 + 两步状态)→ 分页取货(重点测中文边界)→ 兜底(故意把存储搞挂,验证不报错、模型收到"不完整"标记)。

2026-10-06 18:00:00 703

原创 React 合成事件:一文吃透设计原理与 9 大面试考点

React 合成事件不是简单的 DOM 事件绑定,它隐藏了大量底层封装逻辑,提供统一、可控、性能优化的事件模型,是 React 高效运行的重要一环。图3|事件池复用机制:React 16 的坑 vs React 17 的告别。React 本身的事件就是委托的,所以无需担心绑定上百个事件影响性能——04事件池复用:React 16 的「坑」与 React 17 的告别。)上,通过事件冒泡捕获事件,再根据事件目标触发对应组件的事件回调。,本质是 React 事件系统的「注册表」,而不是 DOM 的。

2026-10-06 09:00:00 211

原创 Agent 评测体系全解析:三大维度、核心指标与四大评测方式

第二,行为执行能力侧重考核中间执行过程,包含任务拆解、多步规划、工具调用、路径优化等能力,评判执行逻辑是否高效、合理、无冗余。核心内容涵盖:用户自然语言指令、任务场景约束条件、环境初始状态、标准执行步骤、工具调用参数规范、预期执行结果、任务评判标准,同时包含常规用例、边界用例和异常错误用例。数据格式以结构化格式为主,常用 JSON、XML,统一包含场景 ID、输入文本、环境配置、标准执行链路、标准答案、扣分规则等字段,方便机器自动解析评测。通用自动化评测脚手架,支持批量跑测、指标采集、自动报告、劣化告警。

2026-10-05 18:00:00 441

原创 Agent 可观测性实战:三支柱看透黑盒智能体

Agent 是动态循环、有状态、自主决策的非线性系统,除常规指标外还需观测循环迭代、任务规划、工具调用、状态变更、记忆读写、多 Agent 通信等专属维度,核心是解决决策不可见、流程不可控、问题难定位。观测范围覆盖用户输入、LLM 推理、任务规划、循环迭代、工具调用、状态变更、记忆读写、多 Agent 通信、最终输出的全链路。核心作用是解决 Agent 黑盒问题,精准定位模型、规划、工具、状态、循环各类故障,量化效果、性能、稳定性与成本,支撑线上运维与版本迭代。流程固定、逻辑确定,常规日志即可定位;

2026-10-05 09:00:00 339

原创 前端 × AI:从 Cursor 到 Transformer,一份完整认知路径

是大模型的核心算法。**RAG(检索增强生成)**则是让大模型拥有「外脑」的机制,前端常见于 AI 文档问答、代码搜索助手。掌握从工具(GPT、Cursor)到方法(Prompt 工程)、再到协议(MCP)与底层机制(Transformer、RAG)的全链路知识,不仅能提升开发效率,也能在面试中展现出从实践到原理的系统性思维。Cursor 是「智能开发环境」,能理解整个项目结构、依赖关系,通过注释区 Prompt 精确控制生成,支持 Refactor / Explain 命令,是「对话式编程」的形态。

2026-10-04 18:00:00 396

原创 RAF 渲染帧速通:从渲染帧到性能优化

60Hz 的 16.67ms 不是全给 JS 的,还要留时间给 Style、Layout、Paint、Composite,真正能用在 JS 上的时间更少。最近整理前端性能优化相关的知识,发现 requestAnimationFrame(RAF)这个 API 看着简单,但真要讲清楚它和浏览器渲染、事件循环、性能优化的关系,还是有不少细节。还有个细节:同一帧注册的多个 RAF 回调,拿到的 timestamp 是一样的,因为这个时间戳表示的是当前渲染帧的时间,不是每个回调实际开始跑的时间。

2026-10-04 09:00:00 283

原创 React 渲染机制速通:Render 树、Fiber 树与更新调度

组成链表(替代了 React 15 的递归树),再通过 effect list 管理副作用,在 commit 阶段统一执行 DOM 更新和 hook 副作用。无论有多少子组件同时 setState,React 都会通过批量更新 + Fiber 增量渲染,只触发必要的 render——这就是它高性能的底层答案。关键认知:React 并非每次 setState 都重建整个 DOM,而是生成新的 WIP Fiber 树,通过 diff 只更新真正变化的节点。哪怕大量组件同时更新,也不会每次全量渲染 DOM。

2026-10-03 18:00:00 300

原创 提示词工程:工业级 Prompt 写法与分层组装

大厂通用的 System Prompt 得拆成八大模块:身份角色、能力工具、执行步骤、输出格式、行为准则、边界限制、异常处理,再加易错示例。第一层塞全局静态规则,第二层放筛过噪的检索上下文,第三层处理用户输入。顺序固定,标签隔开,彻底解决模型混淆边界的问题。微调成本高、周期长,换模型还得重训。Prompt 工程零数据、秒级生效,换个模型直接迁移。很多人写 Prompt 还是想到哪写到哪,其实这玩意儿不是"问问题",是"写程序"——你得用自然语言给模型立规矩。说白了,把随机性关进规则的笼子里,输出才可控。

2026-10-03 09:00:00 264

原创 多 Agent 系统拆解:从单 Agent 到 A2A 协作,11 道面试题一次讲透

CrewAI 是角色化任务编排框架,把 Agent 建模为具有角色、目标、技能的 Crew 成员,通过 Task 分配与 Process 流程(顺序或层级)驱动协作,代码直观、上手快,适合结构化流水线任务。单轮、强顺序、低延迟要求的短任务用单 Agent 直出。**多 Agent 的到来:**为解决单 Agent 高耦合、难维护、不稳定的问题,业界主流采用按业务领域垂直拆分的多 Agent 架构——不再用一个大而全的智能体包揽所有工作,而是为每个专业业务领域单独开发专属智能体,各司其职、专注单一能力。

2026-10-02 18:00:00 229

原创 Embedding 选型 × Chunk 切分:RAG 落地三部曲

离线索引层面:查解析完整性(扫描版 PDF 需 OCR、表格是否正确提取)、切片策略(过小丢上下文、过大引噪声,建议语义边界 + 10%~20% 重叠)、Embedding 模型(专业术语差就换 BGE / GTE 或领域微调)。② Overlap 并非越大越好,过大会导致 Chunk 大量重复、检索冗余、成本升高;知识库内容过时、存在错误数据、知识点缺失、Chunk 碎片化导致上下文不全、重复冗余内容干扰、跨领域无关内容混入——都会让模型基于错误、残缺信息生成虚假答案,引发幻觉。参数小、速度快、显存低;

2026-10-02 09:00:00 181

原创 向量数据库选型实战:Chroma/Qdrant/Milvus/PgVector 怎么选

Demo用Chroma快速验证,生产中小规模用Qdrant性价比最高,亿级以上上Milvus,已有Redis做热点缓存,存量PG做轻量改造。向量数据库内置ANN(近似最近邻)索引,用极小的精度损失换百倍提速,还支持过滤、分片、持久化。没有绝对好坏,关键是能力和约束匹配——先定召回率要求、延迟目标、数据规模和预算,再做评估,别只看性能榜单。文本、图片、音频经过Embedding模型变成一串数字(比如1536维),向量数据库的核心活儿就是:给定一个查询向量,快速找出语义最接近的那些。

2026-10-01 18:00:00 454

原创 MCP 完全拆解:AI Agent 的 USB 接口,一次封装处处使用

不同的 AI(Claude、ChatGPT、文心一言)是由不同公司开发的,它们的输入格式、接口规范各不相同。你想让 AI 帮你查天气,给 Claude 发请求是一种 JSON 结构,给 ChatGPT 发请求又是另一种结构。也就是说,你需要为每个 AI 单独写一套调用天气功能的代码。而 MCP,就是那个统一的规定——秦始皇书同文、车同轨的感觉。MCP(Model Context Protocol)是一个用于标准化大模型调用外部工具的开放协议。

2026-10-01 09:00:00 308

原创 A2A 协议详解:Agent 间通信标准、四大核心机制与 MCP 互补

A2A 定义"多个智能体如何相互通信与协作":通信双方是 AI 智能体与 AI 智能体(可以是不同公司、不同框架构建的),调用方向双向(任意一方均可发起请求、委派任务、同步状态、返回结果),适用于多 Agent 协同完成复杂任务的场景。它解决的核心问题是异构 Agent 的互操作:不同厂商、不同框架构建的 Agent,通过统一的 Agent Card 暴露能力、通过标准化的 Task 生命周期管理任务流转、通过 Message/Artifact 交换消息与产出物、通过 Streaming 实现实时同步。

2026-09-30 18:00:00 216

原创 AI 生成的代码怎么测才敢上线?7 道自动化闸门清单

测试的期望值是从有缺陷的实现里推导出来的,错误逻辑被原样固化进断言,两边"达成共识"——这就是测试 AI 代码时要避开的验证悖论。:测试的价值不在于"通过",而在于"有能力失败"。这类测试通常有四个特征:断言 mock 而不是系统本身(同义反复)、依赖被 stub 到"测试跑在真空里"、只测快乐路径、把函数当前返回的错误值直接抄进断言。手动就能做:找一段被 AI 测试覆盖的函数,把 > 翻成 >=,或反转一个关键条件,再跑一遍测试。这个指标靠刷行覆盖率糊弄不过去,是 AI 测试真正意义上的"信任测试"。

2026-09-30 09:00:00 163

原创 我的 Claude Code 最佳实践 & 7 个经过验证的工作流技巧

用 Claude Code(下称 CC)半年多,累计消耗数十亿 tokens。踩过不少坑,也读了大量官方文档和实践者分享,慢慢沉淀出一套自己的工作流。这篇不追求面面俱到,只讲经过长期验证、确实能提升交付质量的 7 个实践。核心思路:**CC 的开箱体验已经足够好,效率差距来自工作流的组合方式。**以下每个技巧都是在解决一个具体的工程问题,而非通用建议。01Plan 模式先行:用规格文档代替即兴编码CC 最容易踩的坑是直接开始改代码。

2026-09-29 18:00:00 182

原创 CSDN21天学习挑战赛——Python数据结构学习笔记

python数据结构学习笔记

2026-09-29 12:25:58 205

原创 【每日一题】LeetCode 2667 创建Hello World函数|把JS普通函数、匿名函数、箭头函数、高阶函数一次讲透

高阶函数定义:参数是函数,或者返回值是函数的函数,叫做高阶函数。本题中 createHelloWorld 就是高阶函数:它的返回值是另外一个函数。// f 拿到的就是内层函数对象,还没有执行f() // 此时才执行内层函数常见高阶函数:map、filter、setTimeout、防抖节流函数工厂。

2026-09-16 17:23:52 198

原创 前端速通 Agent:5 个项目,一条学习路径

当模型负责思考,Agent 负责把思考变成行动。2025 年被称为"Agent 元年"。

2026-09-16 17:22:43 328

原创 工业级 AI Agent 架构:5 层、2 范式、4 原则,一次讲透

五层:接入层是统一入口,负责接收请求、清洗校验,不做决策;调度层是任务中枢,负责拆解、编排、循环、重试、进度;核心智能层是大脑,负责意图理解、规划、工具选择、结果判断,只输出指令;能力执行层是手脚,负责工具调用、代码执行、数据处理,捕获异常;资源存储层是底座,负责上下文、记忆、状态、日志的持久化。

2026-09-16 17:20:07 207

原创 Agent Memory 完全拆解:短期、长期、RAG 与工程选型

聊了半小时,它问你「你是谁」。这不是大模型笨,是它根本没有记忆。传统大模型只靠单次上下文窗口回答问题,对话一关,前尘尽忘。A聊了半小时,它问你「你是谁」。这不是大模型笨,是它根本没有记忆。传统大模型只靠单次上下文窗口回答问题,对话一关,前尘尽忘。AI Agent 要想真正干活,必须有一套自己的记忆系统——记住你是谁、上次聊到哪、什么业务规则不能违I Agent 要想真正干活,必须有一套自己的记忆系统——记住你是谁、上次聊到哪、什么业务规则不能违反。这套系统怎么设计,是普通对话模型和智能体之间最核心的分水岭。

2026-09-16 17:17:27 281

原创 JavaScript 中的 this 指向:四种绑定规则与优先级详解

调用方式this 指向普通函数独立调用非严格模式:全局对象;undefined对象方法调用该对象(最近一层)callapplybind显式指定的对象(bind返回的函数不可再改变)new构造函数调用新创建的实例对象箭头函数定义时外层作用域的this(不可改变)理解this不看定义在哪,只看如何调用。

2026-05-10 17:36:34 469

原创 深入解析 JS 事件循环:浏览器与 Node.js 的差异全解析

浏览器的事件循环更简单:一个宏任务 + 全部微任务 → 下一个宏任务。适合处理 UI 交互和渲染。Node.js的事件循环更精细:6 个阶段 + 多优先级微任务,专为高并发 I/O 场景优化。

2026-05-10 16:53:44 589

原创 【js高频八股】防抖与节流

实现:利用计时器,如果在n秒内 事件又被触发 那么直接退出 不会影响之前程序的执行。搜索框搜索输入(一定时间后再发送请求)、文本编辑器的保存(一定时间后再自动保存)这可以使用在一些点击请求的事件上,避免因为用户的多次点击向后端发送多次请求。实现:利用定时器 如果事件在n秒内又被触发 那么清空计时器重新开始计时。触发事件的回调函数执行,如果在同一个单位时间内某事件被触发多次,秒后再执行回调,如果在这 n 秒内事件又被触发,则。是指规定一个单位时间,在这个单位时间内,只能有。

2026-05-02 11:26:52 82 1

原创 前端图片优化完全指南:从格式到加载的全面提速方案

图片占据了网页体积的60%以上,也是LCP(最大内容绘制)的主要元凶。本文将系统梳理图片优化的完整技术方案,帮助你将图片体积降低70%以上,同时提升加载速度与用户体验。

2026-04-28 21:13:41 544

原创 前端性能优化完全指南:从指标到实战

测量– 使用 Lighthouse + CrUX 确定当前基线。分析– Performance 面板找出瓶颈(长任务、大体积资源、频繁布局偏移)。优化– 按上述策略分优先级(先 LCP、再 CLS、最后 INP)。验证– 再次测量,对比改进效果。监控– 上线后通过 RUM 持续观察真实用户体验。性能优化不是一次性的任务,而是伴随产品迭代的持续过程。希望这份指南能让你在性能优化的道路上少走弯路,交付更快、更流畅、更稳定的 Web 应用。扩展阅读web-vitals JavaScript 库。

2026-04-28 20:25:50 455

原创 【JS高频八股】什么是闭包?

闭包的本质是函数加上其所处词法环境的组合。闭包内层函数 + 引用的外层函数变量。也就是一个内部函数可以访问其外部函数作用域的变量,其实外部函数已经执行完毕并销毁,内部函数依然能持有对外部作用域变量的引用。闭包是由捆绑起来(封闭的)的函数和函数周围状态(词法环境)的引用组合而成。换言之,闭包让函数能访问它的外部作用域。在 JavaScript 中,闭包会随着函数的创建而同时创建。闭包的变量存在堆中,即解释了函数调用之后为什么闭包还能引用到函数内的变量。

2026-04-28 20:15:34 373

原创 ai对话平台中的functioncalling+mcp

摘要:项目中通过MCP(模型上下文协议)和Function Calling构建了标准化工具调用架构。MCP作为AI与外部工具的通用接口,实现了工具接入的标准化管理;Function Calling则提供模型与工具间的结构化调用协议。该架构将工具能力层标准化为独立MCP服务,主服务通过MCP客户端调用工具,模型通过Function Calling决策工具选择,形成"模型决策-服务编排-工具执行-结果回填-前端展示"的闭环流程。相比传统方式,这种解耦设计具有更好的扩展性,既能通过Functi

2026-04-20 22:08:24 227

原创 ai对话平台流式响应输出怎么实现?

摘要:流式响应技术通过SSE协议实现AI问答实时输出,采用FetchAPI+ReadableStream方案进行数据分块传输与解码。核心实现包含三个关键优化:1)缓冲渲染机制,通过requestAnimationFrame实现60fps同步更新;2)中断处理四步法,包括异常捕获、数据缓存、指数退避重试和断点续传;3)心跳保活设计,通过5秒间隔空数据包维持连接。该方案有效解决了429/500/502/504等常见服务异常,在保证传输可靠性的同时,将平均响应延迟降低40%,重试成功率提升至98.7%。

2026-04-20 17:29:44 453

原创 【前端面试之ai概念】大白话讲清 Agent、MCP、Skill、Function Calling、RAG

AI智能体系统的五大核心要素协同构建了下一代人工智能架构:RAG提供实时知识检索增强,解决信息准确性问题;Function Calling赋予AI执行具体操作的能力;Skill将复杂业务流程封装为可复用模块;Agent作为中枢系统自主规划任务流程;MCP协议则标准化各组件间的交互接口。这五大要素分别解决了AI的知识获取、动作执行、能力复用、自主决策和系统互联等关键问题,共同构建了一个既能获取准确知识、又能自主执行复杂任务的智能系统生态。通过这种模块化设计,AI系统实现了从单一问答到多步骤业务处理的跨越式发展

2026-04-19 18:36:28 331

原创 AI对话为什么需要RAG

本文探讨了RAG(检索增强生成)技术如何解决大模型的知识局限问题。RAG通过检索外部知识库增强生成结果,有效应对大模型的知识时效性、数据孤岛和幻觉问题。文章分析了RAG的工作原理,包括离线索引和在线检索两阶段,比较了不同检索方案的优劣,重点推荐向量检索结合HNSW算法。针对前端实现,提出结构化展示方案,详细设计了流式输出与引用高亮的融合策略,包括数据格式、引用插入方法和渲染优化技巧,确保用户获得可信且流畅的交互体验。

2026-04-18 22:24:36 438

原创 【css学习笔记9】品优购项目

(尽量不要超过30个汉字)例如:京东(d.com)-综合网购首选正品低价,品质保障,配送及时,轻松购物!小米商城-小米5s,红米note4,小米mix,小米笔记本官方网站2)dlescription网站说明简要说明我们网站主要是做什么的。我们提,description作为网站的总体业务和主题概括,多采用"我们是。." 我们提供。. "'xxx网作为。.","电话:010..."之类语句。(专门的seo人员写)3)keywords关键字越重要放在越前面。

2025-09-13 21:30:00 1120

原创 【css学习笔记8】html5css3新特性

音频标签和视频标签使用方式基本致浏览器支持情况不同谷歌浏览器把音频和视频自动播放禁止了我们可以给视频标签添加muted属性来静音播放视频,音频不可以(可以通过avascript解决)视频标签是重点,我们常设置自动播放,不使用controls控件,循环和设置大小属性。

2025-09-13 17:30:00 893

原创 【css学习笔记7】css高级技巧

鼠标经过某个盒子的时候,提高当前盒子的层级即可(如果没有有定位,则加相对定位(保留位置),如。主要是针对背景图片的使用 多个小背景图片放到一张大图片sprites(精灵图后雪碧图)中。给图片的盒子加上外边框之后底部会默认有一个空隙 因为图片和文字默认是基线对齐。/*限制在一个块元素显示的文本的行数 超过第二行虎仔第二行末尾有省略号*有效减少服务器接收和发送请求的次数 提高页面的加载速度。移动的距离就是目标图片的xy坐标,向上向左是负值。设置或检索伸缩盒对象的子元素的排列方式*

2025-09-13 17:00:00 680

原创 【css学习笔记6】定位布局

<title>显示隐藏元素之display</title><style>.peppa {*/.george {</style>佩奇</div><div class="george">乔治

2025-09-13 16:00:00 1129

原创 【css学习笔记5】学成在线案例

1)布局定位属性:display/position/float/clear/visbility/overflow2)自身属性:witdeh/height/margin/padding/background3)文本属性:color/font/text-decoration/text-align/vertical-align/white-space/break-word。

2025-09-13 14:00:00 481

原创 【css学习笔记4】-css拓展

通常情况下我们不确定父元素会装多少内容 比如新闻内容的多少 商品上新等等 不方便给一个确定的高度 ,但是不设置高度的情况下盒子浮动又。用于创建浮动框,将其移动到一边(设定的属性值)直到另一边边缘触及包含块或另一个浮动框的边缘。脱离标准流的控制(浮)移动到指定位置(动),浮动的盒子不会保留原来的位置。是清除浮动元素的影响,浮动清除之后 父级会根据浮动的子盒子自动检测高度。给粉色的盒子加上浮动之后,第一行的位置不占用 会被第二行的盒子占掉。浮动的盒子只会影响盒子后面的标准流不会影响前面的标准流。

2025-09-13 12:30:00 861

原创 【CSS学习笔记3】css特性

行高的继承:不加单位指的是当前文字大小的倍数。

2025-09-13 12:00:00 878

空空如也

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

TA关注的人

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