RAG 处理表格与结构化数据
表格是 RAG 的硬骨头——切分破坏结构、向量丢语义、检索找不到。本文讲清表格 RAG 的完整方案:表格检测与抽取、切分策略(整表/行级)、结构化存储 vs 向量、Text-to-SQL 模式,以及混合检索,让 RAG 能真正处理含表格的文档。
Articles
沉淀 AI、Web、云原生和独立开发经验。
表格是 RAG 的硬骨头——切分破坏结构、向量丢语义、检索找不到。本文讲清表格 RAG 的完整方案:表格检测与抽取、切分策略(整表/行级)、结构化存储 vs 向量、Text-to-SQL 模式,以及混合检索,让 RAG 能真正处理含表格的文档。
AI 应用的可访问性有两层含义:产品本身要无障碍,以及 AI 能赋能无障碍。本文讲清 AI 产品的 a11y 要点——语义 HTML/键盘/ARIA/动态内容可访问、AI 生成 UI 的 a11y 把控、AI 赋能(图像描述/语音/简化文本),以及一套自动+人工的 a11y 测试流程。
测试欠债是每个团队的痛,AI 生成测试能大幅缓解——但也能制造一堆无意义测试和虚假覆盖率。本文讲清 AI 生成测试的正确姿势:哪些测试适合交给 AI、生成→验证→接受的工作流、避免覆盖率陷阱、工具选型(Claude Code/Codium/自建),以及 AI 测试替代不了的部分。
用户的原始提问往往不是好的检索词——有指代、太模糊、是多问合一。Query 改写是 RAG/搜索里 ROI 极高的一步。本文系统讲清五种改写(指代消解/子问题分解/HyDE/Multi-query/同义扩展)、各自的适用场景、工程实现与成本,以及改写本身也要评估。
AI 能写代码后,程序员的瓶颈从"写"转移到"想清楚要什么"。Spec 驱动开发(先写规格再让 AI 实现)正是为此而生。本文讲清什么是 spec 驱动、spec 该写什么(需求/约束/验收/不要做的)、spec→plan→iterate 工作流,以及 spec 作为文档、测试、契约的多重价值。
AI 帮你写代码,也可能帮你引入漏洞、幻觉依赖、不合规许可证——这是新的供应链风险。本文讲清 AI 编程引入的四类风险(AI 生成漏洞/幻觉依赖/许可证/模型供应链),以及防护:SCA、许可证审查、AI code review、沙箱、依赖治理,让你放心用 AI 写生产代码。
向量检索(bi-encoder)快但精度有限,cross-encoder 准但慢到不能做召回。ColBERT 的 late-interaction 给了第三条路——精度近 cross、速度近 bi。本文讲清三种检索模型的权衡、ColBERT 的 late-interaction 原理、它适合什么场景,以及工程落地(RAGatouille/ColBERTv2)。
语音 AI 从"玩具"进入了产品级——实时转写、语音对话、配音、实时翻译都已可用。本文讲清语音 AI 的能力栈(ASR/TTS/语音助手)、典型产品场景、工程要点(流式 ASR、低延迟 TTS、VAD、打断处理),以及多模态语音交互的现状与坑。
单个 Agent 跑得通,不等于能服务多用户、多任务。本文讲清 Agent 服务的并发模型(每请求一 Agent vs Agent 池)、资源管理(模型 API 并发限/工具并发)、调度(优先级/队列/限流)、多用户状态隔离,把 Agent 从"单线程 demo"推到"能扛流量的服务"。
AI 应用的故障源比传统软件多——模型 API 挂、向量库挂、工具挂、自家服务挂。本文讲清韧性设计:降级、熔断、重试、兜底,多模型多供应商容灾,数据备份(向量库/记忆/会话),以及监控+混沌演练,让你的 AI 应用在故障下不裸奔。
LLM 单独理解代码有局限——它看的是文本,不懂精确结构。把 AST(抽象语法树)和 LLM 结合,能做更精准的代码搜索、重构、审查、补全。本文讲清为什么需要 AST、AST + LLM 的组合模式、tree-sitter/LSP 工具链,以及它如何让 AI 编程工具更可靠。
调试是程序员最耗时的工作之一,AI 能大幅加速——但用错了也只会得到一堆"检查一下网络"的废话。本文讲清 AI 调试的正确姿势:贴对信息(报错/堆栈/最小复现)、适合 AI 的 bug 类型、不适合的(并发/性能/系统级)、给 AI 的上下文工程,以及工具(Claude Code/IDE)的高效用法。