自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Harry的博客

把多年踩坑日记熬成技术甘露

  • 博客(391)
  • 问答 (2)
  • 收藏
  • 关注

原创 深度理解 CLIP:连接图像与语言的桥梁

CLIP,全称为Contrastive Language–Image Pre-training(对比语言-图像预训练),是一种跨模态模型。它的目标是学习一个可以同时理解图像和语言的通用视觉-语言表示空间。传统图像识别模型需要在每个任务上进行微调(fine-tuning),但 CLIP 只需简单的自然语言提示(prompt),就可以实现零样本图像分类(zero-shot classification),无需额外训练。CLIP 的提出,让图像“读懂”语言,也让语言“看见”图像。

2025-06-14 18:12:01 1320

原创 为什么大语言模型推理要分成 Prefill 和 Decode?深入理解这两个阶段的真正意义

Prefill 阶段是语言模型推理中的第一个步骤,它负责处理你输入的所有上下文内容(prompt),为后续生成打下基础。“请解释一下 Transformer 的原理。这句话会被 tokenizer 编码为一串 token,比如["请", "解释", "一下", "Trans", "##former", "的", "原理", "。"]。然后这些 token 会进入 Transformer 模型进行前向传播。重点来了 👇。

2025-04-05 17:13:06 9737

原创 Masked Attention 在 LLM 训练中的作用与原理

这篇文章将帮助你理解 Masked Attention 的作用、实现方式,以及为什么它能确保当前 token 只依赖于过去的 token,而不会泄露未来的信息。如果没有 Masked Attention,模型在训练时可以“偷看”未来的 token,导致它学到的规律无法泛化到推理阶段,从而影响文本生成的效果。虽然 Q, K, V 都计算了,但 Masking 让未来 token 的注意力分数变为 0,确保计算出的 Attention 结果不包含未来信息。,模型会学习到“作弊”策略,直接利用未来信息进行预测。

2025-03-29 11:41:23 2945

原创 KV Cache 详解:新手也能理解的 LLM 推理加速技巧

(Autoregressive)生成的,即每次生成一个 token,然后将其作为输入继续生成下一个 token。:如果序列太长,超过了 KV Cache 的存储限制,就需要丢弃最早的 tokens(类似滑动窗口)。时,每次只会生成一个新 token,然后再把这个 token 作为输入继续生成下一个 token。,只缓存计算过的 K,VK, V,每次只计算新 token 的 K,VK, V,从而提升推理效率。:如果输入的 prompt 发生变化,之前的 KV Cache 不能复用,必须重新计算。

2025-03-28 21:49:46 5953

原创 深入理解 DeepSeek MOE(Mixture of Experts)

DeepSeek MOE 是 DeepSeek 团队推出的基于 MOE 架构的模型,旨在通过稀疏专家选择提高大规模模型的计算效率,减少计算成本,同时提升推理和训练的灵活性。相比于传统 Transformer,MOE 框架的计算复杂度可以大幅下降,同时保持模型的高性能。DeepSeek MOE 通过稀疏激活、动态专家选择等策略,实现了高效的计算资源利用,适用于大规模语言模型、计算机视觉等任务。MOE 结构未来仍有很大的优化空间,将在 AI 领域发挥越来越重要的作用。

2025-02-07 22:09:20 6868

原创 理解知识蒸馏中的散度损失函数(KLDivergence/kldivloss )-以DeepSeek为例

知识蒸馏(Knowledge Distillation)是一种模型压缩技术,目标是让一个较小的模型(学生模型,Student Model)学习一个较大、性能更优的模型(教师模型,Teacher Model)的知识。这样,我们可以在保持较高准确率的同时,大幅减少计算和存储成本。

2025-02-02 12:57:42 4803

原创 DeepSeek 模型全览:探索不同类别的模型

DeepSeek 在 AI 领域的研究覆盖多个重要方向,包括 NLP、代码生成、多模态 AI、数学推理等。无论是开发者、研究人员还是 AI 爱好者,都可以从这些模型中找到适合自己需求的工具。未来,DeepSeek 可能会推出更多创新模型,让我们拭目以待!

2025-01-30 17:16:07 25111

原创 稀疏检索、密集检索与混合检索:概念、技术与应用

随着自然语言处理(NLP)技术的飞速发展,传统的稀疏检索方法逐渐面临着密集检索技术的挑战。本文将介绍稀疏检索、密集检索与混合检索的基本概念,比较它们的优缺点,并介绍实现这些检索方法时所需的技术。随着信息检索需求的不断发展,稀疏检索、密集检索和混合检索都在各自的应用领域中发挥着重要作用。混合检索是结合稀疏检索和密集检索的优点的一种检索方法。通常,混合检索会首先使用稀疏检索(如BM25)从大量文档中快速筛选出一部分候选文档,然后再使用密集检索(如BERT)对这些候选文档进行精确排序,确保获取到最相关的文档。

2025-01-19 22:11:35 2236

原创 lora 理论篇

在深度学习中,特别是自然语言处理(NLP)领域,预训练语言模型(如GPT、BERT等)已经取得了显著的成果。然而,这些模型通常具有数亿甚至数百亿的参数,在进行特定任务的微调时,所需的计算资源和存储需求非常庞大。LoRA 的提出正是为了解决这一问题。

2024-09-01 22:26:53 1449 1

原创 Huggingface 模型转换成gguf并且量化

Llama.cpp 是一种在 CPU 和 GPU 上高效运行大型语言模型(LLM)的好方法。不过,它的缺点是需要将模型转换为 Llama.cpp 支持的格式,目前这种格式是 GGUF 文件格式。在这篇博文中,你将学习如何将 HuggingFace 的模型(llama2 7b chat)转换为 GGUF 模型。

2024-08-10 23:21:52 3364

原创 llama2 , llama3, llama3.1 中提示(prompt)的模板

注意:换行符 (0x0A) 是提示格式的一部分,为了在示例中清晰起见,它们已表示为实际的新行。基本模型支持文本补全,因此任何未完成的用户提示(没有特殊标签)都会提示模型完成它。单个消息的具有可选的 system prompt。为了在示例中清晰起见,它们已表示为实际的新行。系统提示(prompt)是可选的。换行符 (0x0A) 是提示格式的一部分,该模型期望提示末尾的助手标题开始完成它。系统提示以及用户和助手之间的多轮对话。可在此处找到生成此提示格式的代码。可在此处找到生成此提示格式的代码。

2024-05-30 22:54:16 16679

原创 llama2, llama3, llama3.1, llama4比较

Llama 3 刚刚在4月18号推出,距 Llama 2 发布正好 9 个月。它已经可以在 Meta 网站上进行聊天,可以从 Huggingface 以 safetensors 或 GGUF 格式下载。

2024-04-21 22:26:57 8602

原创 边写代码边学习之TF Attention

注意力机制(Attention Mechanism)是机器学习和人工智能领域中的一个重要概念,用于模拟人类视觉或听觉等感知过程中的关注机制。注意力机制的目标是让模型能够在处理信息时,更加关注与任务相关的部分,忽略与任务无关的信息。这种机制最初是受到人类大脑对信息处理的启发而提出的。注意力机制的基本原理如下:输入信息:首先,注意力机制接收输入信息,这可以是序列数据、图像、语音等。查询、键和值:对于每个输入,注意力机制引入了三个部分:查询(query)、键(key)、值(value)。这些部分通常是通过神经网络

2023-09-02 22:20:59 906

原创 边写代码边学习之Bidirectional LSTM

参数layer:keras.layers.RNN实例,例如keras.layers.LSTM或keras.layers.GRU。它也可以是满足以下条件的 keras.layers.Layer 实例:成为序列处理层(接受 3D+ 输入)。有一个 go_backwards、return_sequences 和 return_state 属性(与 RNN 类具有相同的语义)。有一个 input_spec 属性。通过 get_config() 和 from_config() 实现序列化。

2023-08-24 23:07:54 2229

原创 边写代码边学习之LSTM

长短期记忆网络 LSTM(long short-term memory)是 RNN 的一种变体,其核心概念在于细胞状态以及“门”结构。细胞状态相当于信息传输的路径,让信息能在序列连中传递下去。你可以将其看作网络的“记忆”。理论上讲,细胞状态能够将序列处理过程中的相关信息一直传递下去。因此,即使是较早时间步长的信息也能携带到较后时间步长的细胞中来,这克服了短时记忆的影响。信息的添加和移除我们通过“门”结构来实现,“门”结构在训练过程中会去学习该保存或遗忘哪些信息。

2023-08-06 16:32:38 1280

原创 边写代码边学习之RNN

循环(Recurrent Neural Network,RNN)是一种以序列数据为输入来进行建模的深度学习模型,它是 NLP 中最常用的模型。其结构如下图:x是输入,h是隐层单元,o为输出,L为损失函数,y为训练集的标签.这些元素右上角带的t代表t时刻的状态,其中需要注意的是,因策单元h在t时刻的表现不仅由此刻的输入决定,还受t时刻之前时刻的影响。V、W、U是权值,同一类型的权连接权值相同。

2023-08-05 18:28:51 1034

原创 边写代码边学习之批归一化(BatchNormalization)

归一化(Normalization)是指将不同类型、不同取值范围等不同的数据按照一定的规则统一转化为相同的范围,使得数据在同一数值区间内比较、处理更加合理、有意义。归一化可以消除数据特征之间的量纲差异,使得每个特征在权重计算中起到相同的作用,同时还可以增加算法的收敛速度,提高模型的预测精度。使结果值映射到[0 ,1]之间。,这种方法给予原始数据的均值(mean)和标准差(standard deviation)进行数据的标准化。经过处理的数据符合标准正态分布,即均值为0,标准差为1.,其中为均值,

2023-08-05 12:06:29 690

原创 InstructGPT怎么准备和标记数据集

(2) RM 数据集,带有用于训练的模型输出的标签器排名 我们的 RM, RM 数据集有 33k 个训练提示(来自 API 和 labeler-written),对于 RM,回想一下,对于每个提示,我们收集了 K 个输出(从 4 到 9)的排名,并在所有的 }K} 上训练模型,所以我们训练模型的排名对的数量是一个顺序2个数量级大于提示的数量。最后,我们还在表 11 中报告了用于我们的 SFT 模型的承包商编写的演示的长度,包括承包商编写的和标签商编写的提示。他们收集的数据涵盖广泛的类别和用例。

2023-05-01 18:40:03 1989

原创 [论文阅读]InstructGPT(Training language models to follow instructions with human feedback)

语言模型(language models)越大大并不意味着它能更好地理解用户的意图。例如,大型语言模型生成输出不真实、有毒或根本对用户没有帮助。换句话说,这些模型没有准确的理解用户想法。在此论文中,展示了一种有效的方法通过微调使语言模型与用户在各种任务上的意图保持一致与人类反馈。从一组的提示和提示开始通过 OpenAI API 提交,我们收集了已标记的范文数据集所需的模型行为,我们用它来使用有监督的方法来微调 GPT-3学习。

2023-03-31 11:55:40 1809 1

原创 GPT系列的总结以及GPT4

Generative Pre-trained Transformers (GPT) 是一种用于生成类人文本的深度学习模型。常见用途包括GPT 模型有无穷无尽的应用,您甚至可以根据特定数据对其进行微调,以创造更好的结果。通过使用转换器,您将节省计算、时间和其他资源的成本。

2023-03-27 22:16:04 2129

原创 GraphRAG 适合用在什么场景?一文讲清楚(附案例)

RAG:从文档中检索相关文本 → 输入给大模型生成答案GraphRAG:将知识构建为“图”(Graph)→ 利用实体和关系进行检索和推理也就是说,GraphRAG不仅知道“有哪些信息”,还知道这些信息之间的关系。GraphRAG可以通过“社区检测”(community detection)对信息进行分组,从而生成更高质量总结。如果你的问题依赖“关系”,而不仅仅是“内容”,就应该考虑 GraphRAG。

2026-03-23 22:42:03 300

原创 为什么在有 Bash 工具的情况下,Coding Agent 仍然需要 read_file / write_file

如果 Agent 已经拥有bash工具,可以执行任意 shell 命令,那么为什么还要提供read_filewrite_fileedit_file这样的文件操作工具?从能力角度来看,bash几乎可以完成所有事情。因此理论上,一个只拥有bash工具的 Agent 依然可以:读取代码修改代码创建文件运行程序执行测试这些工具并不是为了增加能力,而是为了。本文将解释为什么。

2026-03-15 21:43:43 300

原创 为 OpenClaw 添加 Tavily 搜索插件(替代 Brave API)

摘要:由于Brave取消免费API,社区开发了Tavily搜索插件作为替代方案。该插件专为AIAgent优化,提供结构化、低噪音的搜索结果。安装只需两步:通过CLI安装插件并配置API密钥。插件提供5个搜索工具,包括网页搜索、内容提取和自动研究报告等功能,安装后Agent将自动优先使用Tavily进行搜索。

2026-03-05 16:33:04 6314 5

原创 macOS 完整卸载 OpenClaw 指南(含深度清理)

如果 OpenClaw 或其 gateway 以 LaunchAgent 形式启动,需要清理对应的。完成后,如果你仍想“卸载干净”,再继续下面的深度清理步骤。Gateway service(网关 / 后台服务)如果以上都清理完毕,基本可以认为已经“干净卸载”。子命令在不同 macOS 版本略有差异。如果路径来自 Homebrew(例如。macOS app(应用本体)官方推荐路径下的组件被完整移除。Workspace(工作区)已注册的后台服务被正确注销。若无输出,说明目录已移除。

2026-03-04 14:16:55 3693

原创 Anthropic 的 Contextual Retrieval:让 RAG 更懂“上下文”

Anthropic 的本质上是在传统 RAG 的基础上加入“语境意识”,用 AI 生成的简短上下文来帮助检索,让模型更清楚地理解片段的背景和含义。相比传统方法,它能显著提高检索的准确性与可用性,是构建高质量 RAG 系统时一个强有力的技术升级。参考资料。

2026-02-27 21:49:50 595

原创 让 AI 更聪明、更高效地调用工具-Programmatic Tool Calling”和“Tool Search Tool”

✔️减少 token 消耗— 中间步骤不用进入模型上下文✔️更快的响应效率— 代码执行一次性完成多步逻辑✔️复杂工作流更可控— 可以写条件判断、循环、分支逻辑✔️更适合大数据处理场景— 查询多个来源、批量数据处理等。

2026-02-27 21:39:40 704

原创 从插件割裂到协议标准化:LSP 的诞生背景、原理与实践

插件时代协议时代编辑器深度耦合语言实现编辑器与语言能力解耦每个平台重复实现能力跨编辑器复用插件 API 各不相同统一协议规范LSP 的意义不仅在于“代码补全更方便”,而在于:它把 IDE 生态从框架绑定,升级为协议驱动。这也是它能够长期存在并持续扩展的根本原因。如果从系统设计角度抽象,LSP 本质上是:一个标准化的“语言能力 RPC 层”。

2026-02-22 13:41:46 965

原创 深度理解 Subagent(子代理)——让 AI 更聪明、更高效地分工协作

Subagent(子代理)是由一个“主代理”在特定条件下自动创建出来的独立 AI 单元,专注处理特定子任务。它与主对话会话分离,有自己的上下文、系统提示、工具权限和工作流程。上下文污染:主对话上下文容易被大量细节/中间思考信息刷屏。Subagent 保持隔离上下文,只把最终结果返回主线程。任务分工:不同技能的子任务由专门子代理处理,类似把工作交给“专家”。比喻一下,传统 Chat 就像一个多面手独自搞定所有事情,而 Subagent 架构则像一个由多个专家组成的小团队,各自分工合作。

2026-02-04 17:53:28 1153

原创 深入理解 Claude 的 Agent Skills:让 AI 不只是聪明,更懂场景

简单来说,Agent Skills 是一组可复用的模块化能力,它们包含具体的说明、元数据和可选资源(比如脚本、模板等),能够扩展 Claude 的功能。Skills 能让 Claude 在遇到特定任务时自动触发并加载相关逻辑,而不需要每次都重复写提示语。让 Claude 更专业 (Specialize Claude):为特定领域或任务定制专属能力减少重复工作 (Reduce repetition):一次创建,自动复用能力可组合 (Compose capabilities)

2026-01-11 22:49:38 938 1

原创 OpenRouter:让我们更自由地使用大模型(以及文档理解)

用户上传一份几十页的 PDF:“帮我总结这份报告的核心结论”“第 3 章的风险点有哪些?你不需要:手写 OCR自己切页、分段、索引再把文本喂给模型一次请求即可完成。OpenRouter 并不是在创造更强的模型,把“如何使用模型”这件事,变得更自由、更工程化。它让我们可以:在模型之间自由切换在文本与真实世界文档之间无缝衔接把复杂度留在基础设施层把注意力留给业务本身对于认真做 AI 工程的团队来说,这是一层非常值得提前引入的能力。参考资料。

2026-01-03 20:05:23 1832

原创 深入解读 AI 编程工具 — Cursor

而 Cursor 的首个版本在 2023 年 3 月推出。仅仅两年时间,Anysphere 就完成了。

2026-01-03 18:08:46 4406

原创 编写清晰代码的四大原则:DRY、KISS、YAGNI 与 SOLID(含 Python 正反例)

清洁代码并不是靠“技巧”,而是靠持续做出正确的设计决策。DRY 让你少踩维护的坑KISS 让代码保持清晰YAGNI 防止系统臃肿SRP 保证结构健康这些原则不是教条,而是写代码时的“思考框架”。这是否真的让代码更简单、更清晰了?

2026-01-02 16:25:27 871

原创 文本总结的实现:从理论到实践

抽取式总结(Extractive Summarization)原理:从原文中抽取最重要的句子或片段,组成总结。优点:生成内容真实,不容易出现语义错误。缺点:总结可读性可能较差,缺少自然衔接。生成式总结(Abstractive Summarization)原理:使用模型生成新的文本,总结原文的主要意思。优点:可生成自然流畅、可读性高的摘要。缺点:生成结果可能存在事实错误(hallucination)。在现代 NLP 应用中,生成式总结尤其受到关注,尤其是结合大语言模型(LLM)的方法。

2025-09-19 18:10:10 677

原创 用 pymupdf4llm 打造 PDF → Markdown 的高效 LLM 数据管道(附实战对比)

如果你在做文档处理 + LLM 应用,推荐直接用,它的优势在于:输出 Markdown,结构保留度高支持分页、分块,非常适合 RAG图片、表格、列表、样式都能提取与 LlamaIndex 等生态无缝对接一句话总结:👉它是目前最实用的 PDF → LLM 数据转换工具之一。

2025-09-18 18:21:48 1665

原创 [RAG] 使用pypandoc 做文档转换

pypandoc是Pandoc的 Python 封装库,提供了一个非常简洁的 API,可以在多种文档格式之间进行转换。ODT → RTFPDF → TXT…等等把复杂格式的文件快速转成干净的 Markdown 或纯文本,方便后续切分、向量化和检索。pypandoc在 RAG 场景下,起到格式转换器的作用:把 PDF、Word、HTML 等文件统一成 Markdown/纯文本保持语义结构,减少格式干扰让后续的向量化和检索更高效有了 pypandoc,RAG 的数据预处理更轻松!

2025-09-18 12:10:14 1131

原创 检索融合方法- Distribution-Based Score Fusion (DBSF)

DBSF 是一种基于统计分布的分数融合方法通过 μ±3σ 截断 + 标准化 + 相加,实现多检索器结果的稳健融合适合分布差异大没有明确权重先验的场景实现简单,可用 Python 自定义,也可以使用如LlamaIndexQdrantUpstash等系统内置功能。

2025-09-15 23:17:20 1217

原创 利用大语言模型在 Bitbucket 上实现自动代码 Review

比如 GPT-5-mini 或专门的代码 LLM,可以显著优化这一流程。注意:LLM 并不能完全替代人工审核。:LLM 能理解代码逻辑和意图,而不仅仅是语法,能发现潜在的逻辑错误或边界问题。:小型 PR 可在几秒钟内得到初步 review,帮助开发者快速迭代。,而 LLM 负责重复性、指导性任务,显著提升开发效率和代码质量。:相比人工,LLM 可以提供一致、可重复的 review 反馈。:将 diff 发送给 LLM,生成结构化 review 建议。:仅发送修改部分给 LLM,减少成本,提高反馈相关性。

2025-09-14 16:27:19 853

原创 大模型中的位置编码详解

绝对位置编码简单,但无法处理长序列和相对位置信息。相对位置编码更强大,但实现复杂。RoPE 通过旋转实现位置感知,兼具直观性和高效性,已成为当前大模型的事实标准。随着 LLM 的发展,位置信息的建模方式也在不断演进,而 RoPE 可能会在相当长的一段时间里继续主导大模型的设计。

2025-09-10 18:23:58 1024

原创 ONNX:跨框架、跨平台的深度学习模型标准

ONNX 是一个开放的深度学习模型交换格式,由微软和 Facebook 在 2017 年提出。跨框架:PyTorch、TensorFlow、MXNet 等训练的模型,都可以导出为 ONNX 格式。跨平台:ONNX Runtime 支持 CPU、GPU、移动端、嵌入式设备。高效推理:支持图优化、算子融合、量化等加速技术。可以把 ONNX 想象成AI 模型的 PDF:不管你用什么框架训练,ONNX 文件都能在不同平台和硬件上运行。# 简单的全连接模型。

2025-09-10 15:28:37 1165

原创 为什么 LangChain 要重写 __or__:一窥 LCEL 的设计哲学

这行看似简单的语句,其实背后隐藏了的设计巧思。本文就带你拆解其中的奥秘:为什么 LangChain 要重写__or__,它解决了什么问题?

2025-09-09 22:19:47 521

空空如也

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

TA关注的人

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