2025RAG基本的选择与系统设计_第1页
2025RAG基本的选择与系统设计_第2页
2025RAG基本的选择与系统设计_第3页
2025RAG基本的选择与系统设计_第4页
2025RAG基本的选择与系统设计_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

RAG基本范式的选择与系RAGSemanticSearchKGRAG我们为什么需要世界在改变,现实世界的数据分布在改变(DistributionshiftConceptDrift主流LLM是以transformer架构驱动的⾃回归模型(事情正在起变化,后⾯细说Pθ(x)=∏pθ(xi|prompt,理论上说,通过调整prompt,我们可以让LLM输出任何tokenLLM的两个问题都可以通过调整promptRAGPrompt通过检索的⽅式选择PromptEngineeringSQL,搜索引擎,VectorDatabase,ElasticSearch新知识—对抗Distribution相关⽂件—SemanticSearch Semantic起源⾃Metric将⽂件投射到⼀个⾼维度测度空间(MetricMetricDistanceFunction:与⾃⼰距离为0,两个不同的点距离⼤于0Semantic⾮测度距离亦可使⽤(CosineDistance投射函数(EmbeddingModel)SemanticSemanticSearch到底是在做什么传统数据库⽀持通过Index但传统数据库不⽀持通过Index判断该数据与Query我们能否⽤⽂件本身来做SemanticDocumentasSemanticSearch的本质是直接以⽂件本身为直接⽐对⽂件与Query(的可以最⼤限度的确定⽂件与Query的适配性(RetrieveandRerankMulti-Vector例⼦:建⽴⼀个关于RustEmbedding模型的训练数据中,⾃然语⾔的数量远远⼤于也就是说,Embedding模型对⾃然语⾔的理解远胜于Query⽤⾃然语⾔做Rust的index(Documentas向量:⾃然语⾔(代码注释,readme,docstring ⽤⾃然语⾔做代码的Index,再⽤Embedding向量做⾃然语⾔的QueryEmbeddingLLM可⽤LLM帮助总结(HypotheticalquestioningSemanticSemanticSearch到底是在做什么SemanticSemanticSearch到底是在做什么SemanticSemanticSearch为什么看上去⾏将就⽊?各种树,图,Hashtable,Entity-relationship不同类型的数据适合不同类型的数据结构(InductiveNaiveRAG本身没有任何系统结构!(ANN的结构不是系统的结构基于SemanticSearchEngineeringistheArtofTrade-如何选择如何选择LossContrastiveContrastivesample(Y-1项不相似的情况下,⼤于mGreedy只在不相似的时候考虑Margin(Y项),且在这时不管其他相似“推“⼩⽽密,相隔约m的(Intra-ClasVariance)回⾳室型社交媒体,CC互联⽹如何选择如何选择LossTriplet

L=max(d(a,p)−d(a,n)+m,Anchor,Positiveand让positive-anchor的距离和negative-anchor的距离相隔⾄少如何选择如何选择LossTriplet

L=max(d(a,p)−d(a,n)+m,只在乎positive和negative与anchor只在相对距离⼩于m时产⽣不会强迫相似的Sample可以接受更⼤的同类⽅差(Intra-ClasTriplet

L=max(d(a,p)−d(a,n)+m,只在乎positive和negative与anchor只在相对距离⼩于m不会强迫相似的Sample可以接受更⼤的同类⽅差(Intra-Clas其余的诸多LossFunction如何选择Distant如何选择DistantMetricEg.EuclideanNon-MetricEg.Cosine为什么Cosine不是Metric

dEuclidean(X,Y)∑(xi−Cosine∑(xi−

A⋅∥A∥⋅与⾃⼰距离为0,0(Positivity),距离对称,三⻆不等式(Triangle从圆⼼出发的B不满⾜x=[1,0];y=[0,1];z=[1,1],那么d(xy)=1,d(xz)=d(yz)≈0.292<

d(xy)Cosine计算简易只考虑⽅向,⽆所谓特别适合那些只需考虑⽅向的场景,如Netflix,Spotify只在0到1之间,不会Euclidean计算相对复杂需考虑两个点在空间中的距离(有点像word2vec,KingManQueen可能会Overflow,⾼维空间内也可能会如何选择如何选择DistantMetricDistance⽤深度学习模仿正统MetricContrastive越南语(低资源中⽂(⾼资源如果d(vi,cn)<mandd(cn,img)<m那么必然:d(vi,img)<两边之和⼤于第三边(三⻆不等式EmbeddingEmbeddingLLMVSLLM的InductiveBias不是太适合可以⽤Repetition“Largescaletrainingtrumpsinductivebias”—Encoder的InductiveBias更合适做EncoderEmbeddingEmbeddingEmbeddingEmbeddingPerformance/Costtrade-off>Datadomain>Lossfunction>Distance如果有⾜够多的数据进⾏继续训练,Loss和DistanceMetic如何选择Vector如何选择Vector如何选择Vector如何选择Vector如何选择Vector如何选择Vector如何选择Vector如何选择VectorHash-basedLocalitysensitivehashing,SpectralHashing多次Hashing将相似的Sample放进同⼀个BucketCollision,碰撞与传统Hashing完全不同,传统HashingMilvus,FAISSRetrieval速度极快,可以Scale如何选择Vector如何选择VectorTree-basedVectorForest,DT-ST将数据库以树的结构储存(多为BinarySearch相似的数据点⼤概率在同⼀个Node或Annoy(Spotify)Graph-basedNode为数据点本身,Edge更相似的数据更容易被EdgeTraverse找最相似的Milvus,Zilliz,Qdant,Chroma对⾼维度数据极其友好(所以如此流⾏),(相对)省内存不知道该⽤什么,就⽤如何选择Vector如何选择VectorInvertedFileIndexing将VectorSpaceVoronoi每个区域都有⼀个找到离Query最近的k个Centroid然后就在那kLanceDB,PGVector迅速缩⼩范围,然后KNN.构建过程可能会很⻓,可能需要ProductQuantization给Semantic给SemanticSearch⼀个结构HierarchicalIndexChain给Semantic给SemanticSearch⼀个结构Context给Semantic给SemanticSearch⼀个结构Context给Semantic给SemanticSearch⼀个结构SemanticSearch可以与其他Retrieval⽅法共⽤HybridVectorIndex(Hierarchical,contextenrichment⼈类的Query可⽤LLMEmbeddingModel的新也可以⽣成很多QueryStep-backNofreelunchAgentRetrieval系需要QueryKnowyourusecase,Knowyourdata,Soyoucanknowyourtrade-充分了解你的数据还有⼀种数据结构极其普遍,实体及他们的关系(Entitiesandtheir我们完全可以⽤SemanticSearchKG如何选择SemanticSearch和 BuiltforGlobalQuery-Focused完美适配于实体+过程中⼤量使⽤LLM⼤约是NaiveVectorRAG的1000KG和SemanticSearchLazyGraphLazyGraphSemanticSearchisa“Bestfirst”GraphRAGisa“Breadth-first”如何⽤SemanticSearch的优势补⾜GraphLazyGraph⽆需提前总结,IndexingCost成本与NaiveVectorRAG类似,是KGRAG的QueryCost也与NaiveVectorRAG可以轻松Scale何时⽤KG数据可⽤实体

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论