+1 支持“上下文工程”而非“提示工程”。
人们将提示与日常使用中给 LLM 的简短任务描述联系在一起。而在每个工业级 LLM 应用中,上下文工程是一门精细的艺术和科学,旨在为下一步在上下文窗口中填充恰到好处的信息。说它是科学,因为正确做到这一点涉及任务描述和解释、少样本示例、RAG、相关(可能多模态)数据、工具、状态和历史、压缩……信息太少或形式错误,LLM 就没有合适的上下文来实现最佳性能。信息太多或太不相关,LLM 的成本可能会上升,性能可能会下降。做好这一点非常不简单。说它是艺术,因为其中涉及围绕 LLM 心理的直觉引导,关乎人的精神。
在上下文工程本身之上,LLM 应用还必须:
- 将问题恰当地分解为控制流
- 恰当地填充上下文窗口
- 将调用分派给合适类型和能力的 LLM
- 处理生成-验证的 UI/UX 流程
- 还有更多——护栏、安全、评估、并行、预取……
因此,上下文工程只是新兴的厚实软件层中的一小部分,该软件层将单个 LLM 调用(以及更多)协调成完整的 LLM 应用。“ChatGPT 包装器”这个术语已经过时,而且真的、真的不对。