小白程序员必看:收藏这5种大模型文本切块策略,轻松入门AI世界!

LLM在RAG文本切块中的应用与实践 为了获得最佳的切块结果,建议尝试多次切块运行,每次传递给切块器的块大小都不同。每次尝试后,应审查结果,以确定哪种方法最适合所需的结果。通过这种方法,我们可以更有效地利用LLM来创建由独立元素组成的知识库,这些元素可以相互关联,而不会在同一个切块中重叠不同的概念。LLM 对文本切块是一个复杂但有意义的过程,它为自然语言处理中的文档分析和知识管理提供了新的思路和方法 阅读详情

本文介绍了文本切块在构建向量索引中的重要性,并详细解析了五种常见的文本切块策略:按字符长度切分、按 Token 长度切分、按句子语义切分、按段落结构切分(包括默认语法切分和自定义语法切分)以及混合方式切分。这些策略有助于控制文本块大小,避免词嵌入模型截断,并保证检索效果。文章强调了根据实际需求和模型限制选择合适的切块策略的重要性,为初学者提供了实用的指导。

1、 文本切块

在上一节内容中,我们介绍了如何将原始文档载入并完成基本的预处理。那么在正式构建向量索引之前,还有一个绕不开的环节,那就是文本切块(Chunking)。

什么叫文本切块呢?为什么要切成块(Chunk)呢?原因很简单,因为一页内容太长了,而且在非标准页的内容中,一页可能就是一个文档所有的内容。如果不进行切分处理,那么将会导致:① 词嵌入模型无法将超过长度的文本转换为向量,会采取截断处理导致语义被切断;② 文本篇幅过长会导致语义太“散”(可能整个文档的内容讲的主题很多),检索时相关内容可能被冲淡。

那文本到底该怎么切分,才能既不超出 embedding 模型限制,又能保证最终的检索效果呢?

接下来,我们将分别就常见的五种 Chunk 策略进行全面解析。

2、 切块策略

在对原始文本进行切分时,我们所遵循的首要目的不是让块过大或者过小,而是让块的语义边界更合理,这样我们在后续使用过程中才能更加准确的搜索到实际需要的内容。

2.1 按字符长度切分

在所有切块策略中,最简单的一种就是严格按一定字符数量对原始内容进行切分,例如每个片段是 500 个字符。同时,为了避免连续两个块之间的信息背景被撕裂开的可能性,相邻两个块之间还可以有一定字符的交叉重复(Overlap),以此来补偿语义连续性。

此时我们可以发现,对于块大小(Chunk size)和交叉重复部分存在着一定的跷跷板效应(Trade-off),块大小越大那么交叉重复部分便可以越小但是带来的后果就是语义可能不够集中(粒度粗);而块大小越小那么交叉重复部分便要相对更多,但是带来的后果就是数据冗余增加使得计算词嵌入的次数增加,同时 RAG 阶段更容易出现内容堆叠。

具体地,严格仅按照字符长度切分的代码实现如下:

 1 def text_splitter(docs):
2     text_splitter = CharacterTextSplitter(
3         separator="", chunk_size=500, chunk_overlap=100,
4         add_start_index=True)
5     all_splits = text_splitter.split_documents(docs)
6     for i in range(len(all_splits)):
7         print("===============")
8         page = all_splits[i].metadata['page']
9         s_index = all_splits[i].metadata['start_index']
10         print(f"## 划分好的 chunk :\n {all_splits[i].page_content}")
11         print(f"chunk 长度为:{len(all_splits[i].page_content)}")
12         print(f"根据索引从原始文档中找到的 chunk :\n{docs[page].page_content[s_index:s_index + 500]}")

在上述代码中,第3行separator是指定分割符号,默认为\n\n,因为这里我们需要严格按照字符长度切分,所以修改为空字符,此后整篇文档两会被看成连续字符串进行处理; chunk_size 和 chunk_overlap 分别指定的是每个块字符的长度和相邻两个块之间交叉重复的长度。第4行是指定是否要返回每个块在对应 page 中的起始索引。第6行便是开始进行块划分。

这里尤其需要注意的一点是相邻两个块之间有交叉重复仅对同一个 page 中的内容有效,也就是说在相邻两个 page 之间确实是被直接分开的,没有交叉重复的地方。当然,对于普通的 txt 和 html 文件,通过 TextLoader 和 BSHTMLLoader 载入后,所有的内容本身就在一个 page 中。

上述代码运行结束后,将会看到类似如下结果:

===============
## 划分好的 chunk :
前言 作为《跟我一起学机器学习》的姊妹篇,两年之后《跟我一起学深度学习》一书也终于出版了。 北宋大家张载有言:“为天地立心, 为生民立命, 为往圣继绝学,为万世开太平”,......了计算机行业及高校所追捧的对象。 但对于绝大多数初学者来讲, 想要跨入深度学习这一领域依旧存在着较高的门槛。 所以, 一本数形结合、 动机原理并重
chunk 长度为:500
根据索引从原始文档中找到的 chunk(page=0) :
前言 作为《跟我一起学机器学习》的姊妹篇,两年之后《跟我一起学深度学习》一书也终于出版了。 北宋大家张载有言:“为天地立心, 为生民立命, 为往圣继绝学,为万世开太平”,......了计算机行业及高校所追捧的对象。 但对于绝大多数初学者来讲, 想要跨入深度学习这一领域依旧存在着较高的门槛。 所以, 一本数形结合、 动机原理并重

从上述输出结果我们可以看出,对于严格按照字符长度切分的策略来说,其优点是长度完全可控不会超 embedding 限制以及实现简单;但是缺点也非常明显,那就是容易切断语义、检索命中后上下文不完整。这种策略适用场景一般是简单的 demo,或者是对检索精度要求不高的系统。

以上完整代码可参见 Code/Chapter03/C02_chunk_method1.py 文件。

2.2 按 Token 长度切分

尽管通过上面的方法可以严格控制每个块的长度,但是块字符的长度并不等于实际 Token 的长度。例如在使用 Qwen3 的系列 embedding 模型中,常见片段'是什么' 将会被视为一个 Token(102021),而生僻字'鱻' 则会被拆成两个 Token (100024和119)。

因此,字符长度只是约等于 Token 长度。所以另外一种方式便是严格按照 Token 长度来对文档切分成块,核心示例代码如下:

 1 from langchain_text_splitters import Tokenizer
2from transformers import AutoTokenizer
3
4 tokenizer = AutoTokenizer.from_pretrained("../../Qwen/Qwen3-Embedding-0.6B", )
5def text_splitter(docs):
6     text_splitter = CleanTokenTextSplitter(
7         chunk_size=10, chunk_overlap=4, add_start_index=True)
8     text_splitter._tokenizer = tokenizer
9     all_splits = text_splitter.split_documents(docs)
10     for i in range(len(all_splits)):
11         print("\n===============")
12         print(f"划分好的 chunk : {all_splits[i].page_content}")
13         print(f"chunk 长度为:{len(all_splits[i].page_content)}")
14         token_ids = tokenizer.encode(all_splits[i].page_content, add_special_tokens=False)
15         print(f"chunk Token ids 为:{token_ids}")
16         print(f"chunk Token ids 长度为:{len(token_ids)}")
17         tokens = [tokenizer.decode([token_id]) for token_id in token_ids]
18         print(f"chunk Token 为:{tokens}")
19
20if __name__ == '__main__':
21     docs = load_text_file('../../data/ShenPiZi.txt')
22     text_splitter(docs)

在上述代码中,第2~4行是载入 Qwen3 对应的 tokenizer,并将其用于覆盖类 CleanTokenTextSplitter 中的 _tokenizer 成员,即第8行。第6~9行则是实例化类对象,并进行切块处理。

上述代码运行结束后将会输出类似如下结果:

===============
划分好的 chunk : 上海在哪儿?垚和鱻这两个生
chunk 长度为:13
chunk Token ids 为:[100633, 18493, 103379, 11319, 122400, 33108, 100024, 119, 105932, 21287]
chunk Token ids 长度为:10
chunk Token 为:['上海', '在', '哪儿', '?', '垚', '和', '�', '�', '这两个', '生']

===============
划分好的 chunk : 鱻这两个生僻字的读音是什么
chunk 长度为:13
chunk Token ids 为:[100024, 119, 105932, 21287, 118134, 18600, 9370, 57553, 78685, 102021]
chunk Token ids 长度为:10
chunk Token 为:['�', '�', '这两个', '生', '僻', '字', '的', '读', '音', '是什么']

===============
划分好的 chunk : 的读音是什么?壬戌之秋,
chunk 长度为:12
chunk Token ids 为:[9370, 57553, 78685, 102021, 11319, 118696, 118249, 53930, 100057, 3837]
chunk Token ids 长度为:10
chunk Token 为:['的', '读', '音', '是什么', '?', '壬', '戌', '之', '秋', ',']

从上述输出结果可以明显看出,在划分好的块当中如果以字符长度而论,那么每个块对应的长度都超过了上面设定的长度 chunk_size=10,而从 Token 长度而论,则恰好满足设定的值。

此时我们可以知道,严格验证 Token 长度进行切分的优点是不会超过 embedding API 长度上限,且更符合模型实际限制,但是缺点就是依赖 tokenizer,且不同模型 token 规则不同,中英文混排可能不稳定。这种切分策略比较适用于商业级 RAG 或有明确 token 上限的场景中。

以上完整代码可参见 Code/Chapter03/C04_chunk_method2_2.py 文件。

2.3 按句子语义切分

从上面两种切分策略可以看出,严格按照长度进行切分忽略了一个重要的因素,那就是语义。例如在限制固定长度的情况,最后一话可能就会被从中截断。因此,我们可以考虑从语义角度来进行处理。例如先按段落切分,再按换行符切分,然后是空格符切分,最后才是强制切分,即 separators=["\n\n", "\n", " ", ""]。这样就能保证语义优先,尽量保持完整表达,但长度不是严格固定的。

 1 def text_splitter_recursive(docs):
2     text_splitter = RecursiveCharacterTextSplitter(
3         chunk_size=45, chunk_overlap=5, add_start_index=True) 
4     all_splits = text_splitter.split_documents(docs)
5     for i in range(len(all_splits)):
6         print(f"划分好的 chunk:\n{all_splits[i].page_content}")
7         print(f"划分好的 chunk 长度 len(): {len(all_splits[i].page_content)}")
8         print(f"================\n")
9
10if __name__ == '__main__':
11     docs = load_text_file('../../data/Sementic.txt')
12     text_splitter_recursive(docs)

上述代码便是按照语义进行切分的实现,其中类 RecursiveCharacterTextSplitter 实例化时默认 separators=["\n\n", "\n", " ", ""],如有需要可修改,例如增加句号逗号等,优先级为从左到右。

对于如下文本来说:

我是一个段落。

作为机器学习方向的一个重要分支,深度学习在近年来的发展可谓是大放异彩。
随着深度学习技术地不断发展,与之相关的技术应用已经深入渗透到了我们日常生活的方方面面,从医疗保健、金融服务到零售、交通再到智能助理、智能家居等等,尤其是在以 GPT 为代表的大语言模型出现以后,深度学习技术的影子更是无处不在。
如今,利用 ChatGPT 来作为日常生产力工具更是成为了一种共识。

上述代码运行结束后将会输出类似如下结果:

划分好的 chunk:
我是一个段落。
划分好的 chunk 长度 len(): 7
================

划分好的 chunk:
作为机器学习方向的一个重要分支,深度学习在近年来的发展可谓是大放异彩。
划分好的 chunk 长度 len(): 35
================

划分好的 chunk:
随着深度学习技术地不断发展,与之相关的技术应用已经深入渗透到了我们日常生活的方方面面,从
划分好的 chunk 长度 len(): 44
================

根据结果可以再次印证, RecursiveCharacterTextSplitter 默认会优先按段落、换行切,不够再按字符切,所以在第3行中 chunk_size 和 chunk_overlap 并不是完全等同于字符串的长度,只是一个近似长度。同时,如果切分的分隔符恰好满足 "\n\n", "\n", " ",即符合语义切分条件,那么两个块之间没有 overlap 部分。例如上面第几个块之间没有重复部分,尽管 chunk_overlap=5,因为满足"\n" 切分。

此时可以看出,这种切分策略的优点是检索结果更自然且语义完整度更高;但是缺点就是长度不稳定且差异可能较大。这种切分策略就比较适合适合对教材、说明文档等文件进行处理。

以上所有完整示例代码,可参见 Code/Chapter03/C05_chunk_method3.py 文件。

2.4 按段落结构切分

除了按照以不同分隔符从语义的角度来进行切分以外,对于具有特殊标记的文件,例如 Markdown文件,我们还可以按目录结构进行切分。这样我们可以让一个小节的内容就是一个块。

2.4.1 默认语法切分

具体地,核心示例代码如下:

 1 from langchain_text_splitters import MarkdownHeaderTextSplitter
2
3def text_splitter_markdown(docs):
4     headers_to_split_on = [("#", "一级标题"), ("##", "二级标题"), ("###", "三级标题")]
5     text_splitter = MarkdownHeaderTextSplitter(headers_to_split_on)
6     all_splits = text_splitter.split_text(docs[0].page_content)
7     for i in range(len(all_splits)):
8         data = all_splits[i]
9         print(f"划分好的 chunk 目录信息:\n{data.metadata}")
10         print(f"划分好的 chunk 内容:\n{data.page_content}")
11         print(f"划分好的 chunk 长度 len(): {len(data.page_content)}")
12         print(f"================\n")
13
14if __name__ == '__main__':
15     docs = load_text_file('../../data/markdown.md')
16     text_splitter_markdown(docs)

在上述代码中,第4行代码是给定一个规则,即如何匹配各个级别的标题。第5~6行则是开始对 Markdown 文件进行分块处理。

对于如下文本来说:

# 第一章 跟我一起学深度学习
作为机器学习方向的一个重要分支,深度学习在近年来的发展可谓是大放异彩。
## 第 1.1 节 简介
随着深度学习技术地不断发展,与之相关的技术应用已经深入渗透到了我们日常生活的方方面面,从医疗保健、金融服务到零售、交通再到智能助理、智能家居等等,尤其是在以 GPT 为代表的大语言模型出现以后,深度学习技术的影子更是无处不在。
如今,利用 ChatGPT 来作为日常生产力工具更是成为了一种共识。
### 第 1.1.1 节 说明
例如在本书的成文过程过中 ChatGPT 就为我们提供了不少的灵感和启示,部分内容也是在 ChatGPT 的辅助下所完成,而这在 10 年乃至 5 年前都是难以想象的。

也正因如此,对于这些热门应用背后技术的探索便逐渐成为了计算机行业及高校所追捧的对象。但对于绝大多数初学者来讲,想要跨入深度学习这一领域依旧存在着较高的门槛。所以,一本数形结合、 动机原理并重、 细致考究的入门书籍对于初学者来讲就显得十分必要了。

上述代码运行结束后将会输出类似如下结果:

划分好的 chunk 目录信息:
{'一级标题': '第一章 跟我一起学深度学习'}
划分好的 chunk 内容:
作为机器学习方向的一个重要分支,深度学习在近年来的发展可谓是大放异彩。
划分好的 chunk 长度 len(): 35
================

划分好的 chunk 目录信息:
{'一级标题': '第一章 跟我一起学深度学习', '二级标题': '第 1.1 节 简介'}
划分好的 chunk 内容:
随着深度学习技术地不断发展,与之相关的技术应用已经深入渗透到了我们日常生活的方方面面,从医疗保健、金融服务到零售、交通再到智能助理、智能家居等等,尤其是在以 GPT 为代表的大语言模型出现以后,深度学习技术的影子更是无处不在。
如今,利用 ChatGPT 来作为日常生产力工具更是成为了一种共识。
划分好的 chunk 长度 len(): 148
================

划分好的 chunk 目录信息:
{'一级标题': '第一章 跟我一起学深度学习', '二级标题': '第 1.1 节 简介', '三级标题': '第 1.1.1 节 说明'}
划分好的 chunk 内容:
例如在本书的成文过程过中 ChatGPT 就为我们提供了不少的灵感和启示,部分内容也是在 ChatGPT 的辅助下所完成,而这在 10 年乃至 5 年前都是难以想象的。  
...

从上述输出结果可以看出,此时每一个块对应的就是该标题下的所有内容,并且同时我们还能根据 metadata 属性来获得每个块对应的完整目录信息,这对于后续 RAG 检索可谓是非常友好。

此时可以看出,这种切分策略的优点是结构清晰、章节语义完整以及检索结果逻辑更强;但缺点是容易超过 Token 限制,长章节 embedding 可能报错。这种切分策略的适用场景通常有技术书、API 文档、课程内容和知识库系统等,但必须配合长度限制兜底机制。

以上所有完整示例代码,可参见 Code/Chapter03/C06_chunk_method4_1.py 文件。

2.4.2 自定义语法切分

从上面的示例用法我们可以发现,什么是一级标题、什么是二级标题的语法是我们按照 Markdown 的默认语法指定的,那如果被载入文件采用的是另外一套语法体系该如何处理呢?

例如在实际场景中可能会是下面这样的情况(如直接把 word 文件转换成 txt 文件):

第一章 机器学习
机器学习基础概念介绍。
1.1 什么是有监督学习
定义:有监督学习也叫做有指导学习,它是指模型在训练过程中需要通过真实值来对训练过程进行指导的学习过程。在有监督模型的训练过程中,每次输入模型的数据都是形如(x,y)这样的样本对,而模型最终学到的就是从输入x到输出y这样的映射关系。
1.1.1 常见有监督算法
常见有监督算法有:线性回归、逻辑回归、决策树、贝叶斯算法等。
1.2 什么是无监督学习
定义:无监督学习......
第二十章 深度学习
深度学习基础概念介绍。
20.1 什么是卷积操作?
定义:卷积操作是指.....
20.10.1 常见的卷积神经
常见的卷积神经网络有:LeNet5、ResNet等。

可以发现,这些都不是标准 Markdown 标题,但如果仍旧需要按段落结构切分,那么就要用到自定义的语法方式了。

此时,如果我们希望"第x章 xxx" 表示 一级标题,“x.x xxx” 表示二级标题,“x.x.x xxxx” 表示三级标题,那么可以通过定义相关正则表达式实现,核心示例代码如下:

 1 def text_splitter_markdown(docs):
2     header_patterns = [(1, r"^\s*第\S+章.*"),
3         (2, r"^\s*\d+\.\d+(?!\.)\s+.+$"),
4         (3, r"^\s*\d+\.\d+\.\d+(?!\.)\s+.+$")]
5     text_splitter = RegexTextSplitter(header_patterns)
6     all_splits = text_splitter.split_text(docs[0].page_content)
7     for i in range(len(all_splits)):
8         data = all_splits[i]
9         print(f"划分好的 chunk 目录信息:\n{data.metadata}")
10         print(f"划分好的 chunk 内容:\n{data.page_content}")
11         print(f"划分好的 chunk 长度 len(): {len(data.page_content)}")
12         print(f"================\n")
13
14if __name__ == '__main__':
15     docs = load_text_file('../../data/word.txt')
16     text_splitter_markdown(docs)

在上述代码中,第24行便是配置的正则表达式来配置三级目录,如有更多则继续追加。第56行则是开始按规则进行切分。

对于上面的示例文本,上述代码运行结束后将会输出类似如下结果:

划分好的 chunk 目录信息:
{'1 级标题': '第一章 机器学习'}
划分好的 chunk 内容:
机器学习基础概念介绍。
划分好的 chunk 长度 len(): 11
================

划分好的 chunk 目录信息:
{'1 级标题': '第一章 机器学习', '2 级标题': '1.1 什么是有监督学习'}
划分好的 chunk 内容:
定义:有监督学习也叫做有指导学习,它是指模型在训练过程中需要通过真实值来对训练过程进行指导的学习过程。在有监督模型的训练过程中,每次输入模型的数据都是形如(x,y)这样的样本对,而模型最终学到的就是从输入x到输出y这样的映射关系。
划分好的 chunk 长度 len(): 115
================

划分好的 chunk 目录信息:
{'1 级标题': '第一章 机器学习', '2 级标题': '1.1 什么是有监督学习', '3 级标题': '1.1.1 常见有监督算法'}
划分好的 chunk 内容:
常见有监督算法有:线性回归、逻辑回归、决策树、贝叶斯算法等。
划分好的 chunk 长度 len(): 30
================

划分好的 chunk 目录信息:
{'1 级标题': '第一章 机器学习', '2 级标题': '1.2 什么是无监督学习'}
划分好的 chunk 内容:
定义:无监督学习......
划分好的 chunk 长度 len(): 14
================

划分好的 chunk 目录信息:
{'1 级标题': '第二十章 深度学习'}
划分好的 chunk 内容:
深度学习基础概念介绍。
划分好的 chunk 长度 len(): 11
================

划分好的 chunk 目录信息:
{'1 级标题': '第二十章 深度学习', '2 级标题': '20.1 什么是卷积操作?'}
划分好的 chunk 内容:
定义:卷积操作是指.....
划分好的 chunk 长度 len(): 14
================

划分好的 chunk 目录信息:
{'1 级标题': '第二十章 深度学习', '2 级标题': '20.1 什么是卷积操作?', '3 级标题': '20.10.1 常见的卷积神经'}
划分好的 chunk 内容:
常见的卷积神经网络有:LeNet5、ResNet等。
划分好的 chunk 长度 len(): 26
================

从上述输出结果可以看出,按照自定义的正则表达式,我们已经完全实现了根据目录来进行切分的要求。

以上所有完整示例代码,可参见 Code/Chapter03/C06_chunk_method4_2.py 文件。

2.5 按混合方式切分

到此,我们已经完整介绍了4种块切分方式,不过真正成熟的 RAG 系统不会只用一种方式,而是多种方式混合切分。例如最常见的就是“结构优先 ,长度兜底”这样的策略。这样做的优势是保留了章节语义的同时不会超 embedding 上限,且检索质量稳定,这是工业界常用方案。

对于先按目录结构切块,再对超长小节字符长度语义递归切分示例代码如下:

 1 def text_splitter_mixture(docs):
2     headers_to_split_on = [("#", "一级标题"), ("##", "二级标题"), ("###", "三级标题")]
3     text_md_splitter = MarkdownHeaderTextSplitter(headers_to_split_on)
4     all_md_splits = text_md_splitter.split_text(docs[0].page_content)
5     text_rec_splitter = RecursiveCharacterTextSplitter(
6         chunk_size=20, chunk_overlap=3, add_start_index=True)
7     all_rec_splits = text_rec_splitter.split_documents(all_md_splits)
8     for i in range(len(all_rec_splits)):
9         data = all_rec_splits[i]
10         print(f"划分好的 chunk 目录信息:\n{data.metadata}")
11         print(f"划分好的 chunk 内容:\n{data.page_content}")
12         print(f"划分好的 chunk 长度 len(): {len(data.page_content)}")
13         print(f"================\n")

在上述代码运行结束以后,将会得到类似如下结果:

划分好的 chunk 目录信息:
{'一级标题': '第一章 跟我一起学深度学习', 'start_index': 0}
划分好的 chunk 内容:
作为机器学习方向的一个重要分支,深度学习
划分好的 chunk 长度 len(): 20
================

划分好的 chunk 目录信息:
{'一级标题': '第一章 跟我一起学深度学习', 'start_index': 17}
划分好的 chunk 内容:
度学习在近年来的发展可谓是大放异彩。
划分好的 chunk 长度 len(): 18
================

划分好的 chunk 目录信息:
{'一级标题': '第一章 跟我一起学深度学习', '二级标题': '第 1.1 节 简介', 'start_index': 0}
划分好的 chunk 内容:
随着深度学习技术地不断发展,与之相关的技
划分好的 chunk 长度 len(): 20
================
....

从上出结果可以看出,对于原始 markdown 文件的第一章内容“作为机器学习方向的一个重要分支,深度学习在近年来的发展可谓是大放异彩。”,由于超过了上面设定的长度20,所以被切分成了两个块,大家可以将上面前两个块的结果和第2.4.1节输出结果的第一个块进行对比。

以上所有完整示例代码,可参见 Code/Chapter03/C08_chunk_method5.py 文件。

到此,我们就介绍了5种文本分块策略,虽然看起来比较多但在实际情况中,我们仍旧需要根据效果来进行调整,后续章节我们也将继续介绍。

那么如何学习大模型 AI ?

对于刚入门大模型的小白,或是想转型/进阶的程序员来说,最头疼的就是找不到系统、全面的学习资源,要么零散不成体系,要么收费高昂,白白浪费时间走弯路。今天就给大家精心整理了一份全面且免费的AI大模型学习资源包,覆盖从入门到实战、从理论到面试的全流程,所有资料均已整理完毕,免费分享给各位!

核心包含:AI大模型全套系统化学习路线图(小白可直接照做)、精品学习书籍+电子文档、干货视频教程、可直接上手的实战项目+源码、2026大厂面试真题题库,一站式解决你的学习痛点,不用再到处搜集拼凑!

👇👇扫码免费领取全部内容👇👇

在这里插入图片描述

1、大模型系统化学习路线

学习大模型,方向比努力更重要!很多小白入门就陷入“盲目看视频、乱刷资料”的误区,最后越学越懵。这里给大家整理的这份学习路线,是结合2026年大模型行业趋势和新手学习规律设计的,最科学、最系统,从零基础到精通,每一步都有明确指引,帮你节省80%的无效学习时间,少走弯路、高效进阶。
在这里插入图片描述

2、大模型学习书籍&文档

理论是实战的根基,尤其是对于程序员来说,想要真正吃透大模型原理,离不开优质的书籍和文档支撑。本次整理的书籍和电子文档,均由大模型领域顶尖专家、大厂技术大咖撰写,涵盖基础入门、核心原理、进阶技巧等内容,语言通俗易懂,既有理论深度,又贴合实战场景,小白能看懂,程序员能进阶,为后续实战和面试打下坚实基础。

在这里插入图片描述

3、AI大模型最新行业报告

无论是小白了解行业、规划学习方向,还是程序员转型、拓展业务边界,都需要紧跟行业趋势。本次整理的2026最新大模型行业报告,针对互联网、金融、医疗、工业等多个主流行业,系统调研了大模型的应用现状、发展趋势、现存问题及潜在机会,帮你清晰了解哪些行业更适合大模型落地,哪些技术方向值得重点深耕,避免盲目学习,精准对接行业需求。值得一提的是,报告还包含了多模态、AI Agent等前沿方向的发展分析,助力大家把握技术风口。

在这里插入图片描述

4、大模型项目实战&配套源码

对于程序员和想落地能力的小白来说,“光说不练假把式”,只有动手实战,才能真正巩固所学知识,将理论转化为实际能力。本次整理的实战项目,涵盖基础应用、进阶开发、多场景落地等类型,每个项目都附带完整源码和详细教程,从简单的ChatPDF搭建,到复杂的RAG系统开发、大模型部署,难度由浅入深,小白可逐步上手,程序员可直接参考优化,既能练手提升技术,又能丰富简历,为求职和职业发展加分。

img

5、大模型大厂面试真题

2026年大模型面试已从单纯考察原理,转向侧重技术落地和业务结合的综合考察,很多程序员和新手因为缺乏针对性准备,明明技术不错,却在面试中失利。为此,我精心整理了各大厂最新大模型面试真题题库,涵盖基础原理、Prompt工程、RAG系统、模型微调、部署优化等核心考点,不仅有真题,还附带详细解题思路和行业踩坑经验,帮你精准把握面试重点,提前做好准备,面试时从容应对、游刃有余。

img

6、四阶段精细化学习规划(附时间节点,可直接照做)

结合上述资源,给大家整理了一份可直接落地的四阶段学习规划,总时长约2个月,小白可循序渐进,程序员可根据自身基础调整节奏,高效掌握大模型核心能力,快速实现从“入门”到“能落地、能面试”的跨越。

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范
  • …
第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署
  • …
第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建
  • …
第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型

  • 带你了解全球大模型

  • 使用国产大模型服务

  • 搭建 OpenAI 代理

  • 热身:基于阿里云 PAI 部署 Stable Diffusion

  • 在本地计算机运行大模型

  • 大模型的私有化部署

  • 基于 vLLM 部署大模型

  • 案例:如何优雅地在阿里云私有部署开源大模型

  • 部署一套开源 LLM 项目

  • 内容安全

  • 互联网信息服务算法备案

  • …

👇👇扫码免费领取全部内容👇👇

在这里插入图片描述

3、这些资料真的有用吗?

这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。

资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。
在这里插入图片描述
在这里插入图片描述

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】

在这里插入图片描述

文本切块技术(Splitter) 将长文本分解成适当大小的片段,以便于嵌入、索引和存储,并提高检索的精确度。可以从模型card和config文件中得知。通过子文本块检索父文本块。上下窗口为3的滑动窗口。从摘要到细节的文档索引。 阅读详情

相关推荐

从 0 到 1,实战 Power BI 电商销售可视化看板全流程

本文详细介绍了从零开始使用Power BI构建电商销售可视化看板的全流程,涵盖数据准备、建模、可视化设计及高级功能应用。通过实战案例展示如何将复杂销售数据转化为直观图表,帮助电商从业者快速掌握销售趋势、热销产品和用户画像等关键信息,提升数据分析效率。

weixin_29061041的博客 485

分块的艺术:提升 RAG 效果的关键

聪明人往往很“懒”,但这种“懒”其实是高效的体现。他们总能找到解决复杂问题的最佳路径,用最少的力气获得最大的成果。在RAG系统中,这种高效的实现往往是通过“分块”来实现的。你可以把它想象成把一本厚书分成几章——这样一来,阅读和理解就轻松多了。同样地,分块技术把大段复杂的文本拆分成更小、更容易处理的片段,让AI能更快、更准确地理解和处理信息。不过,在深入探讨分块之前,咱们得先聊聊它背后的“大框架”——检索增强生成,也就是RAG。这个技术可是分块能发挥作用的关键哦!

Androiddddd的博客 1412

Jlink除了调试还能干啥?用JFlash SPI给W25Q64烧录固件的5个实用技巧

本文深入探讨了Jlink的隐藏功能,特别是通过JFlash SPI高效烧录W25Q64的5个进阶技巧。从硬件连接优化到批量处理脚本,再到数据安全验证,这些技巧能显著提升烧录速度和稳定性,适用于量产环境。文章还提供了详细的参数配置和脚本示例,帮助工程师充分发挥Jlink的潜力。

weixin_29164843的博客 409

从入门到进阶!RAG 文本切块的 21 种实用策略:代码附实现 + 场景细拆解 + 优劣深分析

从入门到进阶!RAG 文本切块的 21 种实用策略:代码附实现 + 场景细拆解 + 优劣深分析

2301_76168381的博客 1675

Altium Designer操作技巧(12)——如何进行邮票孔拼版?

【摘要】本文详细介绍了PCB设计中邮票孔拼板的全流程操作方法。首先解释了邮票孔拼板的定义、核心目的(提高贴片效率、方便生产)和适用场景(异形板、V-CUT无法实现的情况)。重点阐述了关键设计参数,包括孔径、数量、间隙等规范要求,并提供了两种具体操作方案:传统复制粘贴法和新版阵列放置法。文章通过图文详细演示了从PCB复制、邮票孔添加、板框定义到定位孔和Mark点设置的完整步骤,最后强调了对称性、非金属化孔等设计要点,以及需要与板厂确认工艺参数等注意事项。

u012526819的博客 1677

金智维KRPA实战:Excel自动化数据处理全流程解析

本文详细解析了金智维KRPA在Excel自动化数据处理中的全流程应用,涵盖COM接口和文件读写两种核心技术方案,以及销售报表生成、数据清洗和可视化仪表盘等实战案例。通过企业级应用的异常处理、性能优化和安全合规实践,显著提升数据处理效率和准确性,助力企业降本增效。

weixin_30329623的博客 598

大模型知识问答: 文本分块要点总结

用较大chunk_size去字符切分文本,然后对大文本块用LLM做总结,作为摘要块加入向量数据库中。能在一定程度解决前面提到的问题1。

机器学习社区 2417

复制幻灯片到另一个PPT编程

请确保将源PPT文件和目标PPT文件的文件名修改为你实际使用的文件名。运行上述代码后,目标PPT将包含源PPT中的所有幻灯片和形状。这里假设源PPT文件名为"source.pptx",目标PPT文件名为"target.pptx"。方法将每个幻灯片的布局添加到目标PPT中。是一个强大的库,可以用于创建、修改和操作PPT文件。要将一个PPT中的幻灯片复制到另一个PPT,可以使用Python的。这段代码遍历源PPT的每个幻灯片,并使用。步骤 3: 打开源PPT和目标PPT。这将保存修改后的目标PPT文件。

ByteSparkX的博客 1322

大模型入门必看:5个核心概念小白程序员轻松掌握,建议收藏!

人工智能的核心目标,就是让机器具备像人类一样的思考、学习和解决实际问题的能力。简单说,就是让机器“变聪明”,能够替代人类完成一些需要智力参与的任务,比如对话交互、图像识别、逻辑推理等。机器学习是实现人工智能的核心方法之一,核心逻辑是让机器自主学习数据中的规律,无需人类手动编写复杂规则就能完成任务。举个小白也能懂的例子:如果想让机器认出“猫”,不用手动告诉它“猫有尖耳朵、长胡子、有毛”这些规则,只需给它投喂海量的猫的图片数据。

AI_Wall_e的博客 203

g2o&PCL 四阶多项式拟合

g2o&PCL 四阶多项式拟合

dayuhaitang1的博客 140

C# Modbus协议全解析 万字长文|RTU/TCP/UDP完整实战(寄存器映射+多从站组网+NModbus4工业级代码)

你做C#工业上位机开发,Modbus协议是绕不开的终极核心,没有之一!Modbus是由施耐德在1979年发布的工业级串行通信协议,经过40余年的发展,已经成为工业自动化领域的通用标准协议—— 小到温湿度传感器、智能电表、小型PLC,大到变频器、伺服驱动器、DCS集散控制系统,99%的工业设备都原生支持Modbus协议(RTU/TCP二选一,多数全支持)。很多开发者觉得Modbus「知识点杂、协议分支多、组网难」,本质是只掌握了零散的读写代码,没吃透。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 1063

收藏!Java程序员转型AI大模型工程师全指南,小白也能轻松入门

对于Java程序员而言,转型AI大模型领域并非“从零开始”的挑战,而是基于现有优势的“技术升级”。你所具备的工程化思维、大型系统架构经验、扎实的编程基础,都是AI大模型落地过程中不可或缺的核心素质。转型的关键在于:明确目标方向,避免盲目学习;注重实践落地,积累项目经验;发挥自身优势,形成差异化竞争力。避免“重理论轻实践”:AI是一门实践性极强的学科,不要只看教程不写代码,建议每周至少投入10小时进行项目实操。

大模型教程的博客 874

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

收藏!Java程序员必看:转向AI大模型的3大理由与落地指南

转型不是“颠覆过去”,而是“升级未来”。你多年的Java经验不是负担,而是支撑你在AI领域走得更远的基石。最后送4句忠告:\1. 别被“数学门槛”吓住:做工程化方向,不用死磕深度学习算法,先把“模型用起来”比什么都重要;\2. 坚持“Java为主,AI为辅”:先立足你的Java优势,再扩展AI技能,形成“别人替代不了”的竞争力;\3. 多混技术社区:加入HuggingFace中文社区、优快云 AI技术群,和同行交流,获取最新的学习资源和岗位信息;

EnjoyEDU的博客 1136

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

收藏!5个生产级大模型实战项目(从入门到大师),小白/程序员必练,轻松逆袭AI架构师

这个项目不用掌握复杂的算法,核心是理解“资源约束下的AI优化”——你不再是简单调用API,而是学会管理模型量化、控制内存压力、优化电池消耗,这些都是移动AI开发的核心能力,也是小白入门大模型工程化的最佳切入点。练完这个项目,你就能搭建属于自己的第一个生产级AI应用,积累可展示的实战经验,为后续进阶打下基础。------这个项目的核心是“智能体循环”,它要求你不仅会调用大模型写代码,还要懂工程化的调试、迭代和安全控制。

youmaob的博客 979

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

收藏!26年必火的AI大模型应用开发,小白&程序员入门指南

说白了就是:先搞懂“怎么用”,再探究“为什么能用”,最后钻研“怎么用得更好”。接下来,就按“小白→进阶→大神”的梯度,给大家拆解具体学习方向。

m0_48891301的博客 816

人工智能学习路径:AI入门必看,非常详细收藏这一篇就够了!

人工智能包括机器学习和深度学习深度学习,而自然语言处理和计算机视觉正是人工智能领域热门的方向。**路径一:**如果你希望快速学习完进行项目实践,请直接学习深度学习,不过编程和数学基础还是要有的(之后如果遇到不懂的地方,单独学不懂的地方就可以了)**路径二:**一步一个脚印,扎扎实实从基础学起,逐步提高学习难度(后附学习大纲)在深入学习人工智能之前,你需要对这个行业有一个初步的了解,包括当前的发展趋势和关键技术。这样,你就能为接下来的学习做好准备。机器学习领域包含了众多算法,这些算法往往基于数学理论。

2401_85375151的博客 2609

大模型入门必看:小白程序员收藏这份保姆级教程,轻松跟课,少走弯路!

近期科技圈传来重磅消息:行业巨头英特尔宣布大规模裁员2万人,传统技术岗位持续萎缩的同时,另一番景象却在AI领域上演——AI相关技术岗正开启“疯狂扩招”模式!据行业招聘数据显示,具备3-5年大模型相关经验的开发者,在大厂就能拿到50K×20薪的高薪待遇,薪资差距肉眼可见!业内资深HR预判:不出1年,“具备AI项目实战经验”将正式成为技术岗投递的硬性门槛。在行业迭代加速的当下,“温水煮青蛙”式的等待只会让自己逐渐被淘汰,与其被动应对,不如主动出击,抢先掌握AI大模型核心原理+落地应用技术+项目实操经验。

2602_95350457的博客 384

小白程序员必看:收藏这份大模型学习指南,轻松入门AI技术!

本文详细介绍了大语言模型(LLM)的三种核心架构:自编码模型(如BERT)、自回归模型(如GPT)和序列到序列模型(如T5),并解释了它们的技术原理、应用场景和代表模型。文章以通俗易懂的方式解析了ChatGPT的原理,融合了自回归模型和人类反馈的机制。此外,还提供了学习大模型的方法和建议,适合初学者入门及深入学习。

2401_85375186的博客 1168

2025程序员转行AI大模型全攻略:后端开发轻松转型大模型应用开发,零基础突围路线图!非常详细建议收藏!

当传统CRUD开发逐渐被AI代码生成取代,大模型全栈工程师正成为新一代技术话语权的掌控者。腾讯混元实验室负责人直言:_“未来三年,不懂LLM的程序员将面临降维打击”_2。转型不是选择题,而是生存战。无论你是:苦于内卷的Java老手 → 用LangChain重铸后端价值迷茫的前端开发者 → 成为AI交互设计先锋数据管道工程师 → 转型向量索引架构师。

jennycisp的博客 9032

收藏!小白程序员必看:详解RAG中的五种分块策略,轻松入门大模型学习

每种分块策略都有其优势和权衡。内容类型(结构化 vs 非结构化)嵌入模型的能力计算资源限制对检索精度的要求近期科技圈传来重磅消息:行业巨头英特尔宣布大规模裁员2万人,传统技术岗位持续萎缩的同时,另一番景象却在AI领域上演——AI相关技术岗正开启“疯狂扩招”模式!据行业招聘数据显示,具备3-5年大模型相关经验的开发者,在大厂就能拿到50K×20薪的高薪待遇,薪资差距肉眼可见!业内资深HR预判:不出1年,“具备AI项目实战经验”将正式成为技术岗投递的硬性门槛。

2601_95334846的博客 238

【必收藏】2026小白&程序员大模型入门指南,从0到1吃透AI大模型(新手友好)

如今,AI的发展速度越来越快,大模型已经从“前沿技术”,变成了小白学习、程序员工作的“必备工具”。前两天熊猫翻招聘软件时发现,很多公司(尤其是互联网、科技类公司),已经开始将“熟练使用大模型”作为招聘要求,不管是应届生还是职场人,掌握AI技能,都能提升自己的竞争力。最后想和大家说一句:技术的发展,从来不会取代人,但不会运用新技术的人,一定会被掌握新技术的人超越。2025年,AI大模型的普及速度会更快,不管你是刚入门的小白,还是深耕多年的程序员,都建议尽早学习、尽早实践,把AI变成自己的“加分项”。

EnjoyEDU的博客 795

小白程序员必收藏!AI大模型自学路线图,助你轻松入门并实践_自学AI大模型学习路线推荐

本文为想要自学AI大模型的新手小白们提供了系统的学习路线,包括打好数学与编程基础、入门机器学习、深入深度学习、探索大模型、进阶与应用等阶段。文章详细介绍了每个阶段的理论学习资源(如书籍、在线课程)和实践项目(如Kaggle竞赛、GitHub项目),并强调了社区参与和持续学习的重要性。通过遵循这条路线,新手可以逐步掌握AI大模型的核心知识,提升实战能力。

2401_85343303的博客 1254

Java程序员收藏必看:轻松入门大模型,抢占AI时代风口!

对于正在迷茫择业、想转行提升,或是刚入门的程序员、编程小白来说,有一个问题几乎人人都在问:未来10年,什么领域的职业发展潜力最大?答案只有一个:人工智能(尤其是大模型方向)当下,人工智能行业正处于爆发式增长期,其中大模型相关岗位更是供不应求,薪资待遇直接拉满——字节跳动作为AI领域的头部玩家,给硕士毕业的优质AI人才(含大模型相关方向)开出的月基础工资高达5万—6万元;即便是非“人才计划”的普通应聘者,月基础工资也能稳定在4万元左右。

xxue345678的博客 763

小白程序员必看:收藏这三大大模型推理框架,轻松入门AI Agent世界

2022 年由谷歌提出的基础推理范式,核心是让大模型将复杂问题拆解为一系列连续的、线性的中间推理步骤,逐步推导最终答案,替代 “问题→答案” 的直接输出模式,模拟人类解决简单问题的线性思考过程。核心关键词:线性单链、分步推导、无外部交互、纯思维推理。2022 年由普林斯顿大学与谷歌联合提出的交互推理范式,核心是将 “思维推理(Reasoning)” 与 “外部行动(Acting)” 结合,形成 “思考→行动→观察→再思考” 的闭环,让大模型通过与外部工具 / 环境的交互获取信息、验证假设,最终解决问题。

2601_95390439的博客 358
上一篇: 收藏!小白也能看懂:AI大模型应用开发工程师如何改变未来?
下一篇: 大模型应用开发入门指南:小白转行必备,收藏学习不迷路!
冻感糕人~
博客等级 码龄3年 8926粉丝 2384原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值