RAG 用到的模型
时间: 2025-06-21 13:55:11 浏览: 9
### RAG架构中使用的模型
RAG(检索增强生成)架构是一种结合了检索和生成的混合方法,旨在提升生成式AI应用中的响应质量。在RAG架构中,模型的选择至关重要,因为它直接影响到最终生成结果的质量[^1]。
通常情况下,RAG架构会使用两种主要类型的模型:一种是用于创建查询嵌入(embeddings)的模型,另一种是用于生成最终响应的大型语言模型(LLM)。具体来说,查询会被传递给一个嵌入模型,该模型会生成查询的向量表示。这些向量随后被用来从知识库中检索相关信息[^1]。
在生成最终响应阶段,检索到的信息会被整合到提示(prompt)中,并传递给选定的LLM进行处理。目前支持的LLM包括Cloud Insta和Anthropic的Cloud Version Two等。此外,RAG架构的设计模式已经被简化,使得开发者能够更轻松地接入各种生成式AI组件。例如,通过RAG解决方案,可以与LangChain、Llama Index或Amazon Bedrock等功能集成[^2]。
选择合适的RAG框架时,需要考虑多个因素,包括但不限于框架的功能、易用性以及与现有技术栈的兼容性。市场上存在多种RAG框架,如Haystack、FlashRAG和R2R等,每种框架都有其独特的优势和适用场景[^3]。
以下是一个简单的代码示例,展示如何使用RAG架构中的模型:
```python
from transformers import AutoTokenizer, AutoModel
# 加载嵌入模型
embedding_model = AutoModel.from_pretrained("sentence-transformers/all-MiniLM-L6-v2")
tokenizer = AutoTokenizer.from_pretrained("sentence-transformers/all-MiniLM-L6-v2")
# 创建查询嵌入
def create_embedding(query):
inputs = tokenizer(query, return_tensors="pt", truncation=True, padding=True)
with torch.no_grad():
embeddings = embedding_model(**inputs).pooler_output
return embeddings
query = "What is the capital of France?"
query_embedding = create_embedding(query)
```
###
阅读全文
相关推荐


















