探索检索增强生成(RAG)如何通过实时数据优化大型语言模型(LLM)。学习Ultralytics 构建多模态管道,实现视觉检索增强生成。
检索增强生成(RAG)是人工智能领域的一项先进技术,通过调用训练数据之外的权威知识库来优化大型语言模型(LLM)的输出结果。传统生成模型仅依赖初始训练阶段获取的静态信息,这可能导致答案过时或产生被称为"幻觉"的自信错误。 RAG通过从外部来源(如企业数据库、实时新闻或技术手册)检索相关且最新的信息,并在生成响应前将其作为上下文输入模型,从而弥补了这一缺陷。该过程确保人工智能的输出不仅在语言上连贯,更具备事实准确性并基于具体数据。
RAG系统的架构通常包含两个主要阶段:检索和生成。该工作流使开发者能够在无需频繁进行高成本重新训练的情况下维护基础模型。
虽然RAG传统上基于文本,但多模态学习的兴起催生了"视觉RAG"。在此场景中,计算机视觉模型充当检索机制,通过分析图像或视频流提取结构化文本数据——例如物体名称、数量或活动信息——随后将这些数据输入大型语言模型(LLM)以解答关于视觉场景的问题。
例如,开发者可以使用YOLO26在图像中detect ,并将物体列表传递给文本模型以生成描述性报告。
from ultralytics import YOLO
# Load the YOLO26 model for state-of-the-art detection
model = YOLO("yolo26n.pt")
# Perform inference to 'retrieve' visual facts from an image
results = model("https://ultralytics.com/images/bus.jpg")
# Extract class names to build a text context for an LLM
detected_classes = [model.names[int(c)] for c in results[0].boxes.cls]
context_string = f"The scene contains: {', '.join(detected_classes)}."
print(context_string)
# Output example: "The scene contains: bus, person, person, person."
RAG正通过使人工智能代理能够安全访问专有或实时数据,推动各行业转型。
区分RAG与微调至关重要,因为 它们解决的是不同的问题。