了解检索增强生成 (RAG) 如何通过集成实时、可靠的外部数据来增强 AI 模型,从而获得准确、最新的响应。
Retrieval Augmented Generation (RAG) 是一个先进的框架,旨在优化 大型语言模型 (LLM) 通过引用原始训练数据之外的权威知识库来优化大型语言模型(LLM)的输出。在标准的 生成式人工智能系统中,模型完全依赖于其在训练过程中学到的 在标准的生成式人工智能系统中,模型完全依赖于它在训练过程中学到的静态信息,这可能会导致过时的答案或被称为 "幻觉 "的事实错误。 幻觉。RAG 通过以下方式弥补了这一缺陷 从可信的外部来源检索相关的最新信息,并将其作为上下文输入模型,然后再生成响应。 在生成响应之前,将其作为上下文反馈给模型。这一过程可有效地为人工智能提供依据,确保其高度准确性和相关性,而无需 准确性和相关性,而不需要昂贵的 模型重新训练。
RAG 工作流程集成了两个主要组件:检索系统和生成模型。这种协同作用改变了 如何 自然语言处理 (NLP) 任务的执行方式。
对于数据变化频繁或精度要求较高的行业,RAG 是必不可少的。
虽然 RAG 概念传统上以文本为基础,但正在扩展到 计算机视觉 (CV)。在一个 多模态模型中,系统可以检索 类似的图像或视觉元数据,以帮助进行对象检测或分类。 对象检测或分类。例如 例如,通过检索科学数据库中的参考图像来提高识别罕见生物标本的能力,以 等模型进行的视觉分析。 Ultralytics YOLO11.
必须将 RAG 与微调区分开来,因为它们解决的是不同的问题。 它们解决的是不同的问题:
在这个Python 示例中,我们模拟了一个基本的 RAG 工作流程,使用对象检测模型来 "检索 "图像的事实。 图像的相关事实。然后,这些事实会增强文本提示,使描述以经过验证的视觉数据为基础。
from ultralytics import YOLO
# Load the YOLO11 model acting as our 'retrieval' mechanism for visual facts
model = YOLO("yolo11n.pt")
# Run inference to retrieve content information from the image
results = model("https://ultralytics.com/images/bus.jpg")
# Extract detected classes to augment the prompt
detected_objects = [model.names[int(cls)] for cls in results[0].boxes.cls]
context_string = ", ".join(set(detected_objects))
# Construct the augmented prompt (RAG concept)
prompt = f"Based on the verified presence of {context_string} in the scene, describe the traffic situation."
print(f"Augmented Prompt: {prompt}")

