了解如何通过提示串联将复杂的人工智能任务分解为可靠的工作流。探索如何Ultralytics 与大型语言模型集成,构建高级人工智能代理。
提示串联是人工智能(AI)开发中的一种高级架构模式,通过将复杂任务分解为一系列更小、更易管理的子任务。在此工作流中,某一步骤的输出(通常由大型语言模型(LLM)或计算机视觉系统生成)将作为后续步骤的输入。 与试图一次性解决多维问题的单一整体式提示不同,链式处理使开发者能够构建更可靠、可测试且功能强大的应用程序。这种模块化方法对于创建能够推理、浏览网页或与物理环境交互的复杂AI智能体至关重要。
从本质上讲,提示串联技术旨在解决基础模型在上下文窗口和推理能力方面的局限性。当模型被要求在单次请求中执行过多不同操作时(例如"分析这张图片,提取文本,将其翻译成西班牙语,并格式化为表格"),基础模型往往力不从心 当模型被要求在单次请求中执行过多独立操作时(例如:"分析这张图片,提取文本,将其翻译成西班牙语,并格式化为JSON发票"),出错概率会增加。通过将任务拆分为流水线处理,开发者可验证每个阶段的准确性。
高效的链式操作通常会使用用Python编写的"粘合代码" Python或由LangChain等编排库管理的 胶水代码来处理步骤间的数据转换。这使得不同技术能够实现融合,例如将 物体检测的视觉敏锐度与生成式文本模型的 语言流畅性相结合。
提示链技术在弥合不同数据模态间的鸿沟时尤为强大,使多模态模型能够在动态的工业和商业环境中高效运作。
以下示例展示了链条中的首个"环节":利用 计算机视觉(CV)生成结构化数据 作为下游提示的上下文基础。
from ultralytics import YOLO
# Load the YOLO26 model (natively end-to-end and highly efficient)
model = YOLO("yolo26n.pt")
# Step 1: Run inference to 'see' the environment
results = model("https://ultralytics.com/images/bus.jpg")
# Step 2: Format visual detections into a natural language string
det_names = [model.names[int(c)] for c in results[0].boxes.cls]
prompt_context = f"The scene contains: {', '.join(det_names)}. Please describe the likely activity."
# The 'prompt_context' variable is now ready to be sent to an LLM API
print(prompt_context)
要实现有效的机器学习(ML)架构, 有必要区分提示串联与人工智能领域中 其他类似术语:
通过利用提示串联技术,团队能够构建集逻辑处理、数据检索与动作识别于一体的强大应用程序。为管理支撑这些串联流程的数据集并训练视觉模型Ultralytics 提供了一站式解决方案,涵盖标注、训练及部署全流程。