LLM 三角原则解析:简化大模型应用开发的核心指南
在构建基于大语言模型(LLM)的应用时,许多开发者容易陷入过度关注模型本身的误区。实际上,10% 的复杂度来自于模型本身,而 90% 的工作在于以数据为驱动的工程化作业。将 LLM 应用到实际产品中,不仅需要代码功底,更需要工程上的精磨细打。
1、LLM 三角原则概念
LLM 三角原则是一套构建高效 LLM 本地应用的基本指南,由'3+1'个基础组成,即三个核心要素加一个范式。这套原则为开发者提供了清晰的框架和方向,帮助打造出既健壮又可靠的 LLM 应用。
1.1 关键点
该原则包含三个重要维度:模型、工程集成和上下文数据,并通过**标准操作程序(SOP)**进行精细调整。简单来说,把这三部分通过 SOP 进行标准化处理,就是打造高效强大 LLM 应用的秘诀。
2、标准操作程序(SOP)
标准操作程序(SOP)是确保工作质量一致性的关键。在构建 LLM 应用时,我们将模型视为新手,通过 SOP 指导它像专家一样完成任务。
'没有 SOP,再厉害的 LLM 也难以保持一贯的高质量。'
2.1 认知建模
制定 SOP 的第一步是观察业务专家的工作方式。我们需要模仿他们的思考过程,记录每一步操作,形成详尽的操作指南。
隐性认知过程挖掘
隐性认知过程往往难以察觉,但对结果影响巨大。例如'业务特定定义',不同人员对同一术语的理解可能截然不同。我们可以通过访谈来明确这些定义:
- 当需要分析业务问题时,通常遵循什么流程?
- 如何确保解决方案完全符合需求?
- 是否存在特定的判断标准或阈值?
将这些隐性知识显性化后,可以绘制流程图。特别是当流程包含条件选择和分支时,图表能更直观地展示环节,确保执行者理解无误。
2.2 SOP 实施建议
在设计初期,不必过多关注实现细节,应先对整个流程进行模拟。随着对问题理解的深入,可根据新认识调整模型。与其他原则不同,认知建模是一个独立的过程,建议在动手编写代码之前完成。
3、工程集成
工程集成是实施 SOP 并最大化模型效用的关键。我们需要思考哪些技术工具能帮助执行和完善 SOP,确保模型有效满足需求。
3.1 LLM 应用架构设计
LLM 应用架构描述了任务完成的各个流程。每个步骤独立承担特定任务,有些依靠固定代码,有些依赖 LLM(Agents)。
在设计架构时,需明确以下关键属性:
- 输入和输出:每一步需要什么输入?Agent 的输出格式是什么?
- 质量保证:什么样的响应算'足够好'?是否需要人工介入检查?
- 自主级别:对模型独立工作的信任程度是多少?
- 触发器:决定下一步行动的条件是什么?
- 非功能性要求:响应时间、业务监控需求等。
- 故障转移控制:应对系统性和代理性故障的措施。
- 状态管理:是否需要持久化存储?如何检索或保存状态?
3.2 代理(Agents)与工具集
LLM Agents 是调用 LLM 的独立组件。根据是否使用工具,可分为自主 Agent 和非自主 Agent。
工具调用示例
一些 LLM Agents 可以利用预定义的工具执行计算或搜索。以下是一个简单的工具调用 Prompt 模板示例:
prompt = """
你扮演的是一个助手,可以使用以下工具:
- calculate(expression: str) -> str - 用于计算数学表达式
- search(query: str) -> str - 用于在库存中搜索项目
接到一个输入后,你需要以 YAML 格式回应,其中包括以下键:`func`(字符串类型) 和 `arguments`(映射类型) 或 `message`(字符串类型)。
给定输入:{user_input}
"""


