
自然语言处理
文章平均质量分 92
曼城周杰伦
行走在路上的AI工程师
展开
-
自然语言处理:第一百一十章 Dify 分段模式中的父子模式
在 Dify 的 v0.15.0 版本中引入了新的分段模式——父子模式。官方介绍使用该模式可以在一定程度上增强知识库的检索能力和理解能力,从而显著提高 AI 生成回答的质量和准确度。原创 2025-04-23 15:00:00 · 1234 阅读 · 0 评论 -
自然语言处理:第一百零九章 单卡4090微调DeepSeek-R1-32B
在 24G 显存的单卡 4090 上微调训练 deepseek-ai/DeepSeek-R1-Distill-Qwen-32B;即使该模型的权重文件大小已经达到 62G,这是因为 unsloth 和 lora 的量化微调和部分参数微调优化可以大幅节约显存占用。因为设置了**max_steps=**60 限制了只执行60步以便快速完成实验。去掉这个参数后,SFTTrainer 即可根据数据量自动计算微调步数了。本次训练在贝联云算力平台( https://cloud.lccomputing.com )上完成。原创 2025-04-23 09:36:48 · 512 阅读 · 0 评论 -
自然语言处理:第一百零八章 大模型使用Safetensors不好吗?为什么还有GGUF
GGUF(GPTQ for GPUs Unified Format)是一种针对大语言模型(LLM)权重文件的统一格式,旨在简化和标准化不同模型格式之间的转换和加载。随着大语言模型的快速发展,不同的框架(如Hugging Face Transformers、TensorFlow、PyTorch等)和优化工具(如GPTQ、LoRA、INT8/INT4量化)可能生成不同格式的模型文件。GGUF格式的引入有助于统一这些格式,使得模型的加载和使用更加方便。原创 2025-04-16 15:00:00 · 977 阅读 · 0 评论 -
自然语言处理:第一百零七章 2025年值得关注的21个RAG开源项目
— 此功能允许 RAG 系统通过与用户的多次交互不断完善查询和生成内容,从而提升用户满意度和系统的整体准确率。:基于灵活的代码库,支持多种检索与生成策略,无需微调模型即可实现低内存占用、易于部署和极佳的可扩展性。:通过多步检索与生成,用户可自定义组件,打造高度定制化系统,以应对复杂和不断变化的数据需求。:通过查询扩展、模式和单元格检索,为语言模型提供关键信息,从而提高生成响应的准确性和效率。:支持多步检索与生成,用户可以自选和配置各个组件,打造高度定制化的 RAG 系统。原创 2025-04-16 09:32:03 · 783 阅读 · 0 评论 -
自然语言处理:第一百零六章 RAG常见13种分块策略大总结(一览表)
分块策略在RAG中至关重要,目的是提高效率、相关性和上下文保持。分块能减少计算开销,增加检索相关信息的可能性,同时保持信息完整性。但也存在风险,如上下文丢失、冗余和不一致性。选择策略需考虑文档类型(结构化 vs 非结构化)、查询复杂性、资源可用性和期望结果(速度 vs 准确性 vs 上下文)。以下是13种独特分块策略的详细描述,按策略名称、描述、优点、缺点和实施建议。原创 2025-04-09 15:00:00 · 538 阅读 · 0 评论 -
自然语言处理:第一百零五章 不要盲目再使用DeepSeek R1和QWQ这些推理模型做RAG了
我们发现了一些例子,说明 DeepSeek R1 生成的嵌入与专门的嵌入模型 Alibaba-NLP/gte-Qwen2-7B-instruct 相比有多糟糕,Qwen 2 是 MTEB 排行榜上目前最好的嵌入模型。在配备 80GB DRAM 的 Nvidia A100 上比较 vllm 和句子转换器时,我们发现与句子转换器相比,使用 vLLM 为 Qwen2 模型生成嵌入的速度提高了 5.5 倍。然后,我们对这两个模型使用相同的查询,并在相应模型生成的向量数据库中找到前 5 个最相似的嵌入。原创 2025-04-09 10:00:00 · 938 阅读 · 0 评论 -
自然语言处理:第一百零四章 生产环境vLLM 部署 DeepSeek,如何调优,看这里
vLLM 是一个快速且易于使用的 LLM 推理和服务库。vLLM(VeryLargeLanguageModelServing)是由加州大学伯克利分校团队开发的高性能、低延迟的大语言模型(LLM)推理和服务框架。它专为大规模生产级部署设计,尤其擅长处理超长上下文(如8k+ tokens)和高并发请求,同时显著优化显存利用率,是当前开源社区中吞吐量最高的LLM推理引擎之一。高吞吐量:采用先进的服务器吞吐量技术。内存管理:通过PagedAttention高效管理注意力键和值内存。请求批处理。原创 2025-04-02 16:00:00 · 1653 阅读 · 0 评论 -
自然语言处理:第一百零三章 私有化部署DeepSeek等大模型的性能估计
如果你也在这波DeepSeek R1私有化部署的浪潮里,你的老板可能会让你预估下部署一个XX版本的模型需要什么样的硬件资源,TPS是多少。为此,你也许会上网搜索各种测试,你可能会看到这样的图:这些测评基本上都是机构或者网友基于自己的机器测出来的值,有没有什么方法能够让我们快速估计出一个值作为整体的考量,即使它没有那么精准?今天,我会带大家一起梳理一下。原创 2025-04-02 10:00:00 · 1477 阅读 · 0 评论 -
自然语言处理:第一百零二章 如何去掉DeepSeek R1思考过程
本人项目地址大全:Victor94-king/NLP__ManVictor: CSDN of ManVictor写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!大多数情况下,我们希望AI能直接给出答案,而不是在输出中展示“思考过程”。DeepSeek-R1会在回答前生成一个 标签,表示其推理过程。如果这个过程过长,用户可能会感到冗余,甚至影响使用体验。那么, 能否去掉De原创 2025-03-26 17:09:12 · 1241 阅读 · 0 评论 -
自然语言处理:第一百零一章 十大DeepSeek免费使用平台
硅基流动是一家AI模型服务商,提供了R1、V3满血版以及DS多尺寸模型,还包括GLM、Qwen、Hunyuan、Yi、FLUX、Llama、SD等知名模型。华为云、阿里云、京东云、腾讯云、火山引擎、华为昇腾社区、联通云、百度智能云等云厂商都已接入DeepSeek,并提供了一定的免费体验额度。选择Siliconflow API后,把硅基流动的API密钥粘贴进去,选择模型deepseek-aiDeepSeek-R1,点保存,然后就可以了。下拉勾选模型,找到Siliconflow API(硅基流动的英文名)。原创 2025-03-26 08:55:40 · 738 阅读 · 0 评论 -
自然语言处理:第一百章 大模型领域常用百词解释
一种技术,通过训练一个小模型(学生模型)来模仿大模型(教师模型)的行为,以达到减少计算复杂度和资源消耗的目的。能力密度定义为目标模型的有效参数大小与实际参数大小的比率,旨在衡量模型的实际效能与其理论最大效能之间的差距。它能够处理大量的语言数据并生成高质量的文本,通过大规模的数据集训练来学习语言的复杂模式。:指机器学习模型在不同群体之间的表现是否公正。:去除神经网络中冗余的权重或神经元,包括非结构化剪枝(逐个权重)和结构化剪枝(如整个通道、滤波器或层),以达到压缩模型的目的,简化模型结构,便于硬件实现。原创 2025-03-19 16:00:00 · 851 阅读 · 0 评论 -
自然语言处理:第九十九章 私有化RAG封神组合:Dify+RagFlow知识库
我的解决方案是修改ragflow的默认端口,可以参考我的ragflow配置(如下:在docker-compose.yml里面把ragflow映射到主机的端口改掉,改成容器的80端口映射到主机的8000端口,433端口映射到主机的4333端口)PS:由于我的dify和ragflow都部署在同一个主机的docker中,所以dify可以通过主机的内网ip访问ragflow的知识库。首先我们需要解决一个问题,就是在本地的ragflow和dify的页面默认的访问端口是有冲突的(用的都是80和443端口)。原创 2025-03-19 10:00:00 · 1188 阅读 · 0 评论 -
自然语言处理:第九十八章 私有化RAG封神组合:Dify+Fastgpt知识库
Dify 之前有介绍过。原创 2025-03-12 15:30:00 · 886 阅读 · 0 评论 -
自然语言处理:第九十七章 知识蒸馏发展
在人工智能(AI)领域,随着大型语言模型(LLMs)的兴起,大型语言模型(LLMs)展现出了令人惊叹的能力,从智能聊天到复杂的文本生成,从精准的图像识别到高效的数据分析,它们正深刻地改变着人们的生活和工作方式。然而,这些强大模型的背后也存在诸多问题,如高昂的计算成本、有限的可访问性、数据隐私风险等。在这样的背景下,知识蒸馏(原创 2025-03-12 10:30:00 · 791 阅读 · 0 评论 -
自然语言处理:第九十六章 AI智能客服解决方案
模型训练:rag、提示词工程和微调是模型训练迭代的主流方式,根据训练时间、成本和场景选择,通俗的来说,rag能快速在大量的行业知识和特定场景信息里去查找相关内容 ,提示词是让智能客服更好的理解“需求”,把话说的更能让“机器人”理解,微调以预训练大模型为基础,用特定领域或场景数据再训练,让模型更贴合特定场景。基于前文的场景分析和客服业务流程分析,即从宏观角度,与直接聚焦在客服业务,可以充分分析人工智能对客服业务的需求支撑,下图蓝色的标记为主要的人工智能设计的范围,根据实际业务需求进行优化,下图仅为示例。原创 2025-03-07 15:00:00 · 1238 阅读 · 0 评论 -
自然语言处理:第九十五章 为什么有KV Cache而没有Q Cache?
KV Cache 在已经成为了 LLM 推理系统中必须要用到的一个优化技术。KV Cache 的想法很简单,即。原创 2025-03-07 10:12:53 · 600 阅读 · 0 评论 -
自然语言处理:第九十四章 PPO&GRPO详解
在强化学习(RL)中,如果我们只知道“做对了能拿多少分”,那往往还不够,因为**单纯追求高分**可能带来种种副作用,比如过度搜索、模型不稳定、甚至“走捷径”而偏离合理范围。为了解决这些问题,人们在 RL 中设计了许多机制——Critic(价值函数)、Clip 操作、Reference Model、以及最近流行的 GRPO(Group Relative Policy Optimization)等。为了把这些概念讲得更生动,我们不妨打个比方: **把 RL 模型的训练过程想象成小学里的考试场景** 。原创 2025-02-26 15:30:00 · 757 阅读 · 0 评论 -
自然语言处理:第九十三章 大模型解码参数详解beam search/top-k/top-p/温度系数(转载
本人项目地址大全:Victor94-king/NLP__ManVictor: CSDN of ManVictor写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!我们都知道GPT在推理时是每步根据当前的序列预测下一个token。假设我们输入 “I am a”,GPT会对这个序列进行编码得到embedding,并预测下一个单词的概率。这里我们引出两个基本的问题:首先回答第一个原创 2025-02-26 10:00:00 · 1094 阅读 · 0 评论 -
自然语言处理:第九十二章 chatBI 经验(转载)
随着大语言模型(LLMs)为基础的人工智能技术持续发展,它可以为商业智能(BI)领域带来哪些新的机遇?首先,让我们简要回顾一下BI领域所经历的几个关键阶段:① 第一阶段(报表式BI产品): 用户提出数据需求,再由数据研发取数后通过图表组件渲染实现可视化,这是一种按需开发方式。虽然这类产品能够满足用户的基本数据查询需求,但它们开发成本较高,且静态报表的应用场景有限,缺乏灵活性,导致边际效益较低。② 第二阶段(自助式BI产品):在这一阶段,BI产品在宽数据集上支持用户通过拖拉拽的方式自助搭建报表。原创 2025-02-17 19:00:00 · 1766 阅读 · 0 评论 -
自然语言处理:第九十章 如何使用Jina API进行语义切分
从下图可以看出,使用Jina Segment API,最终的问答结果,相比Baseline还是有一定差距的,从概述中《汉书》的切分效果也可以看出,Jina会把标题和正文切割开,而在RAG场景中,标题的作用一般是非常大的,我们在。Jina Segment API提供语义切分能力,更重要的是,它是免费的,不过国内用户需要注意自己的网络是否能够访问。下图是官方网站提供的对《汉书》的切分效果,可以看出,对于文言文,也可以有比较好的切分结果。的实验中也验证了这一点。原创 2025-02-17 14:11:32 · 349 阅读 · 0 评论 -
自然语言处理:第八十九章 如何提升Function Calling准确性
❝Hammer模型提出了一种创新的Function Calling模型训练方法,其中核心思想之一是通过函数和参数命名的调整来增强模型的鲁棒性,减少因命名模糊性或不一致性引发的错误。原创 2025-01-16 15:00:00 · 825 阅读 · 0 评论 -
自然语言处理:第八十八章 如何生成Function Calling微调数据?
img为了确保生成的函数调用符合API的预定义格式,需要定义一个严格的Schema。Schema规定了每个API的参数类型、结构以及可能的取值范围。微调过程中,模型需要学会在调用API时严格遵循这些Schema。searchRestaurants(location="北京", type="意大利餐馆", rating=4.5, price_range="适中")原创 2025-01-16 09:12:13 · 933 阅读 · 0 评论 -
自然语言处理:第八十七章 微软开源MarkitDown,RAG文档解析就这么解决了~
使用 pip: pip install markitdown。或者,从源代码安装它:pip install -e .RAG有这么一个说法:“垃圾进,垃圾出”,文档解析与处理以获取高质量数据至关重要。,一款将各种文件转换为 Markdown 的实用程序(用于索引、文本分析等)。原创 2025-01-08 15:00:00 · 664 阅读 · 0 评论 -
自然语言处理:第八十六章 Deepspeed各阶段配置你了解么?
DeepSpeed是由微软基于PyTorch研发的开源深度学习优化库,主要目的是降低大模型训练的门槛,提升训练效率,并帮助开发者更有效地管理和优化大模型的训练和部署任务。3D并行:数据并行、模型并行、流水线并行以及三者的混合使用。Zero Redundancy Optimizer(零冗余优化器):包括ZeRO-0、ZeRO-1、ZeRO-2、ZeRO-3、ZeRO-Infinity等不同级别的优化。:支持将数据、梯度、优化器状态等下沉到CPU和NVMe,以减少GPU内存压力。自定义混合精度训练。原创 2025-01-08 10:00:00 · 2192 阅读 · 0 评论 -
自然语言处理:第八十五章 Qwen2-VL多模态比赛实践(转载)
多模态大模型越来越火,效果也越来越好,比如Qwen2-VL效果就不错,其支持不同尺寸图片理解、视频理解,其目前已经开源,且最大开源到了72B。关于其技术报告,官方已经发了paper,大家可以自行阅读,而笔者主要想通过实操来看一下其实际效果以及提前踩一些坑,给大家提供一些具体的demo代码,方便大家迅速上手,甚至以此为开端上手所有多模态模型。原创 2025-01-04 14:22:50 · 1031 阅读 · 0 评论 -
自然语言处理:第八十四章 Markdown文档如何切分?
在解析(1)使用MinerU将PDF转换为Markdown中我们提到了将各种文档解析为Markdown的好处,本文我们接着上一篇文章处理后的Markdown,讲解如何对Markdown文档进行切分。在很多文档中,标题都是非常重要的信息,例如企业内部的办理流程,稍微规范点的文档,标题里面都会体现重点信息的。既然转成了Markdown,标题肯定是保留下来了,本文将首先介绍基于Markdown标题的切分方法,以及另外一种常规的Markdown切分方法。原创 2025-01-04 12:15:37 · 1199 阅读 · 0 评论 -
自然语言处理:第八十三章 Prompt格式到底多重要?
MediaTek Research的研究团队最近在这一领域取得了重要突破,他们从提示格式优化、数据集成策略到多语言支持等多个维度,系统性地提升了LLM的函数调用能力。这两种策略的实验结果令人深思。研究者分析认为,指令跟随数据帮助模型建立了更好的语义理解能力,这种基础能力的提升反过来增强了模型理解和使用函数接口的能力。这种设计将原本隐含在生成过程中的决策明确化,强制模型在生成具体回答或函数调用之前,先对查询的性质做出判断。这一结果证明,只要采用合适的翻译策略,函数调用能力是可以有效地迁移到其他语言的。原创 2024-12-28 10:33:33 · 707 阅读 · 0 评论 -
自然语言处理:第八十二章 大模型如何估算显存
在本文中,我们介绍的评估方法,都是基于Transformer架构推算的,该评估方法不适合Transformer以外的其他体系结构。同时,目前存在大量的框架、模型和优化技术,估计运行大型语言模型的确切内存可能很困难。然而,本文可作为估计执行 LLM 推理和训练所需内存资源的起点。训练时的显存计算公式:总显存 = 模型大小 + KV缓存 + 激活 + (优化器状态 + 梯度) * 可训练参数数量此外在微调中,由于优化器状态和梯度的计算,显存需求会更高。原创 2024-12-28 10:31:36 · 963 阅读 · 0 评论 -
自然语言处理:第八十一章 用Milvus向量数据库实现GraphRAG
本文带领大家深入了解了GraphRAG技术,这是一种融合知识图谱来强化RAG应用的创新手段。GraphRAG特别擅长处理那些需要跨信息片段进行多步骤推理和全面回答问题的复杂任务。结合Milvus向量数据库后,GraphRAG能够高效地在庞大的数据集中探索复杂的语义联系,从而得出更精准、更深刻的分析结果。这种强强联合的解决方案,使GraphRAG成为众多实际通用人工智能(GenAI)应用中的得力助手,为理解和处理复杂信息提供了强有力的支持。原创 2024-12-24 10:30:00 · 1136 阅读 · 0 评论 -
自然语言处理:第八十章 RAG分块策略:主流方法(递归、jina-seg)+前沿推荐(Meta-chunking、Late chunking、SLM-SFT)
大多数常用的数据分块方法(chunking)都是基于规则的,采用 fixed chunk size(译者注:将数据或文本按照固定的大小进行数据分块)或 overlap of adjacent chunks(译者注:让相邻的数据块具有重叠内容,确保信息不会丢失。) 等技术。对于具有多个层级结构的文档,可以使用 Langchain 提供的 RecursiveCharacterTextSplitter,这种方法允许将文档按照不同的层级进行分割。原创 2024-12-20 15:00:00 · 747 阅读 · 0 评论 -
自然语言处理:第七十九章 RAG落地应用中的挑战与解决方案
系统使用大模型生成多个查询变体,如“我想找一个有免费Wi-Fi的海滩附近的酒店”、“我想找一个海滩附近有免费Wi-Fi的酒店”等,然后对这些变体进行检索,确保返回的酒店列表符合用户的查询条件。系统首先使用大模型解析出关键属性“黑色”、“皮质”、“迷你裙”和“价格 < 20美元”,然后通过这些属性在数据库中进行精确检索,确保返回的商品列表符合用户的查询条件。系统首先使用宽泛的条件“普通感冒”进行检索,然后根据用户的进一步提问(如“普通感冒的症状”)进行更具体的检索,确保返回的信息与用户的查询高度相关。原创 2024-12-20 10:00:00 · 1131 阅读 · 0 评论 -
自然语言处理:第七十八章 RAG框架总结主流框架推荐
本人项目地址大全:Victor94-king/NLP__ManVictor: CSDN of ManVictor写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!设想你正致力于构建一个智能问答系统,该系统旨在从庞大的知识库中迅速而精确地提取关键信息,并据此生成自然流畅的回答。然而,随着数据规模的不断扩大,系统面临着严峻的挑战:检索效率逐渐下滑,生成内容的质量亦趋于下降。这正原创 2024-12-11 16:00:00 · 1970 阅读 · 0 评论 -
自然语言处理:第七十七章 scalling law = 幂律?
Meta 在 LLaMA 的观点是:给定模型的目标性能,并不需要用最优的计算效率在最快时间训练好模型,而应该在更大规模的数据上,训练一个相对更小模型,这样的模型在推理阶段的成本更低,尽管训练阶段的效率不是最优的(同样的算力其实能获得更优的模型,但是模型尺寸也会更大)。具体而言,确定模型尺寸后,Scaling Law 给到的只是最优的数据量,或者说是一个至少的数据量,实际在训练中观察在各个指标上的性能表现,只要还在继续增长,就可以持续增加训练数据。横轴是归一化之后的计算量,假设 GPT4 的计算量为 1。原创 2024-12-11 10:58:30 · 688 阅读 · 0 评论 -
自然语言处理:第七十六章 手写正弦编码和旋转位置编码
上述代码中的一些变量的含义这里就不作介绍了,懂得都懂。原创 2024-12-08 15:17:44 · 259 阅读 · 0 评论 -
自然语言处理:第七十四章 深度解读GraphRAG(转载)
检索增强生成(Retrieval Augmented Generation,RAG)是一种连接外部数据源以增强大语言模型(LLM)输出质量的技术。这种技术帮助 LLM 访问私有数据或特定领域的数据,并解决幻觉问题。因此,RAG 已被广泛用于许多通用的生成式 AI(GenAI)应用中,如 AI 聊天机器人和推荐系统。一个基本的 RAG 通常集成了一个向量数据库和一个 LLM,其中向量数据库存储并检索与用户查询相关的上下文信息,LLM 根据检索到的上下文生成答案。原创 2024-12-06 16:00:00 · 859 阅读 · 0 评论 -
自然语言处理:第七十三章 优化RAG的十大Trick
检索到的结果可能包含冗余或不必要的信息,这可能会妨碍LLMs生成准确的结果。而且较长的prompt会减慢推理过程。因此,在检索增强(RAG)流程中,高效地摘要检索也是非常重要的。提取式:将文本分割成句子,然后根据重要性对它们进行评分和排序,选取重要的句子。例如:BM25, Contriever,Recomp (extractive)抽象式:压缩多个文档中的信息,重新表述并生成连贯的摘要.例如:SelectiveContext,LongLLMlingua,Recomp (abstractive)原创 2024-12-06 10:00:00 · 1598 阅读 · 0 评论 -
自然语言处理:第七十一章 RAG中表格应该如何处理?
目前,检索增强生成(RAG)系统成为了将海量知识赋能于大模型的关键技术之一。然而,如何高效地处理半结构化和非结构化数据,尤其是文档中的表格数据,仍然是 RAG 系统面临的一大难题。转载 2024-12-03 09:30:00 · 2243 阅读 · 0 评论 -
自然语言处理:第七十二章 微软推出超越自己GraphRAG的LazyGraphRAG
今年7月,微软首次开源了超大知识索引GraphRAG,仅4个多月的时间在Github已超过19000颗星,成为目前最火的RAG框架之一。但GraphRAG在处理全局数据查询时成本非常高,尤其是应用在那些大参数的AI模型中格外明显,查询的过程中也存在延迟、不准确等问题。11月底微软研究院推出了LazyGraphRAG,这是一种新型的图谱增强生成增强检索(RAG)方法。这种方法显著降低了索引和查询成本,同时在回答质量上保持或超越竞争对手,使其在多种用例中具有高度的可扩展性和高效性。关键要点:原创 2024-12-03 15:13:55 · 932 阅读 · 0 评论 -
自然语言处理:第七十章 Langchain的长文本总结处理方案
本人项目地址大全:Victor94-king/NLP__ManVictor: CSDN of ManVictor原文地址: 如何从头训练大语言模型: A simple technical report - 知乎写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!随着大型语言模型(LLM)技术的飞速发展,模型支持的token数量不断增加,从最初的4k、8k扩展到现在的16k、3原创 2024-12-01 11:00:00 · 1245 阅读 · 0 评论 -
自然语言处理:第六十九章 大模型推理框架神器 - VLLM部署篇
VLLM和TGI一样也是大模型部署应用非常广泛的一个库,下面我以。原创 2024-11-29 17:00:00 · 1583 阅读 · 1 评论