-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsample-summary.json
More file actions
90 lines (90 loc) · 5.22 KB
/
Copy pathsample-summary.json
File metadata and controls
90 lines (90 loc) · 5.22 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
{
"input": "我想学RAG,我是初学者,学到能够通过AI应用开发面试的程度",
"stage": "review_pass",
"elapsed_s": 179.5,
"error": "",
"posts": [
{
"title": "RAG基础概念",
"topic_indices": [
0,
1,
2,
3,
4
],
"topic_count": 5,
"word_estimate": 2800
}
],
"topics": [
{
"title": "RAG基础概念",
"key_points": [
"RAG核心思想:理解大语言模型的知识截止日限制和幻觉问题,以及为什么\"检索+生成\"双阶段架构能弥补这些缺陷",
"RAG基础工作流:掌握\"用户查询→检索相关文档→拼接上下文→大模型生成回答\"的完整链路原理"
]
},
{
"title": "文档处理与向量嵌入",
"key_points": [
"文档加载器选型:了解PyMuPDF、Unstructured、LangChain文档加载器等工具处理PDF/Word/HTML等不同格式文档的差异",
"文本分块策略:理解固定长度分块、语义分块、递归字符文本分割器的原理与适用场景",
"文本嵌入模型:理解embedding模型将文本转为向量表示的基本原理,以及OpenAI `text-embedding-3-small`、`text-embedding-3-large`与开源模型BGE、E5的选型对比"
]
},
{
"title": "检索技术与相似度计算",
"key_points": [
"向量数据库基础:理解向量数据库的核心能力——向量的存储、索引构建和近似最近邻搜索(ANN),对比Milvus、Pinecone、Chroma、Weaviate、Qdrant的适用场景",
"余弦相似度计算:掌握余弦相似度公式(cosine similarity = A·B/|A||B|)及为何它是衡量向量方向一致性的首选指标",
"检索结果重排序:掌握用Cross-Encoder模型(如Cohere Rerank、BGE Reranker)对检索结果逐对打分,大幅提升Top-K结果质量的方法"
]
},
{
"title": "增强生成与上下文管理",
"key_points": [
"Prompt模板设计与变量注入:理解将检索到的文档块拼接为系统提示词中`{context}`变量的标准做法",
"上下文窗口管理:掌握当检索结果超出大模型上下文长度限制时,使用token计数器和滑动窗口策略进行截断的方法",
"引用溯源实现:掌握在生成回答中标注\"据[文档2]所述...\"并在结尾列出引用来源的工程实现方法"
]
},
{
"title": "系统评估与架构决策",
"key_points": [
"RAG评估指标体系:理解忠实度(faithfulness)、答案相关性(answer relevance)、上下文精度(context precision)、上下文召回率(context recall)四个核心评估维度",
"Agent式RAG架构:理解将RAG流程的控制权交给大模型智能体(Agent),由模型自主决定\"是否检索→检索什么→是否继续检索\"的迭代式检索范式",
"RAG与微调(Fine-tuning)的选用判断:理解何时该用RAG(知识频繁更新、需要引用来源)何时该用微调(风格固化、领域专业术语偏好)的决策原则"
]
}
],
"review_action": "accept",
"review_assessment": "结构✓ | 第1主题✓、第2主题✓、第3主题✓、第4主题✓、第5主题✓ | 3个minor问题(不阻断)",
"review_issues": [
{
"paragraph": "全文",
"type": "深度匹配",
"severity": "minor",
"description": "正文字数1443字,低于目标范围2000-2400字,且计划中只有2个核心知识点,未达到清单要求的“每主题深入覆盖3个核心知识点(每个约800字)”。虽然内容覆盖了已有计划,但字数与知识点数量均不满足目标。",
"suggestion": "扩充内容至2000字以上,建议增加一个核心知识点(如“RAG与微调的区别”或“检索阶段与生成阶段的协同细节”),并展开每个知识点的案例类比和代码示例。",
"split_suggestion": null
},
{
"paragraph": "代码示例",
"type": "术语解释",
"severity": "minor",
"description": "首次出现的专业术语“Embedding”(如 `OpenAIEmbeddings`)未提供任何解释或类比。对于入门人员,理解这段代码需要知道Embedding是什么以及它在检索中的作用。",
"suggestion": "在代码前或代码后补充一句解释,例如:“Embedding将文本转为向量,使得相似文本在向量空间中距离更近。”",
"split_suggestion": null
},
{
"paragraph": "知识点一的代码示例(`import chromadb`之后的部分)",
"type": "事实准确性",
"severity": "minor",
"description": "代码示例使用Chroma的旧版API(`client.create_collection()`直接创建集合),而Chroma最新版本(0.5.x+)要求客户端创建集合时必须指定`embedding_function`参数,否则会报错。示例直接运行会失败,与当前最新API签名不一致。",
"suggestion": "更新代码示例,添加`embedding_function`参数,例如使用`from chromadb.utils import embedding_functions`并传入默认的`embedding_functions.DefaultEmbeddingFunction()`;或在代码前注明使用的Chroma版本(如`pip install chromadb==0.4.0`)。",
"split_suggestion": null
}
],
"content_length": 11897
}