启用测量:支持基础结构
本文详细介绍了测量质量所需的基础结构以及 Databricks 如何提供这些基础结构。 测量质量并不容易,需要投入大量的基础设施。
详细跟踪日志记录
RAG 应用程序逻辑的核心是链中的一系列步骤。 若要评估和调试质量,需要实现检测工具,用于跟踪链的输入和输出、链的每个步骤和每个步骤关联的输入和输出。 你实现的检测工具在开发环境和生产环境中应该以相同的方式工作。
在 Databricks 中,MLflow Tracing 提供了此功能。 使用 MLflow 跟踪日志记录,可以在生产环境中检测代码,并在开发环境和生产环境中获得相同的跟踪结果。 生产环境跟踪结果会作为推理表的一部分进行记录。
利益干系人评审 UI
通常,作为开发人员,你可能不是正在开发的应用程序内容的领域专家。 为了从可评估应用程序输出质量的人类专家那里收集反馈,你需要一个界面,让他们能够与应用程序早期版本进行交互,并提供详细的反馈。 此外,还需要一种加载特定应用程序输出的方法,以便利益干系人可以评估其质量。
此界面必须以结构化的方式跟踪应用程序的输出和关联的反馈,并将完整的应用程序跟踪结果和详细反馈存储在数据表中。
在 Databricks 中,代理评估评审应用提供了此功能。
质量、成本和延迟指标框架
你需要一种方法来定义指标,这些指标能够全面测量链的每个组件和端到端应用程序的质量。 理想情况下,框架除了支持自定义之外,还提供一套现成的标准指标,因此可以添加用于测试业务特定方面的质量的指标。
在 Databricks 中,代理评估提供了一个现成的实现,该实现使用托管的 LLM 判定模型,可获得必要的质量、成本和延迟指标。
评估工具
你需要一种方法来快速高效地从链中获取评估集中每个问题的输出,然后根据相关指标对每个输出进行评估。 此工具必须尽可能高效,因为你将在每次尝试提高质量的实验后运行评估。
在 Databricks 中,代理评估提供了一个与 MLflow 集成的评估工具。
评估集管理
评估集是一组动态变化的问题,你将在应用程序的开发和生产生命周期过程中以迭代方式对其进行更新。
在 Databricks 中,可以将评估集作为增量表进行管理。 使用 MLflow 进行评估时,MLflow 将自动记录所用评估集版本的快照。
试验跟踪框架
在应用程序开发过程中,你将尝试许多不同的试验。 借助试验跟踪框架,就能够记录每个试验,并跟踪其指标与其他试验的对比。
在 Databricks 中,MLflow 提供了试验跟踪功能。
链参数化框架
许多尝试的试验都要求保存链的代码常量,同时迭代代码使用的各种参数。 你需要一个可让你实现这一点的框架。
在 Databricks 中,MLflow 模型配置提供了这些功能。
联机监视
部署后,需要一种方法来监视应用程序的运行状况并持续监视质量、成本和延迟情况。
在 Databricks 中,模型服务提供了应用程序运行状况监视,Lakehouse Monitoring 则持续将输出发送到仪表板,并监视质量、成本和延迟。