使用 Review App 的聊天界面测试应用版本

MLflow 审阅应用包括一个内置的聊天界面,允许域专家以交互方式测试 GenAI 应用程序并提供即时反馈。 使用聊天 UI 作为评估应用氛围的一种方式。

查看应用聊天 UI

何时使用聊天 UI 测试

聊天界面测试适用于当您想要以下情况时:

  • 测试与领域专家之间的对话流程和多轮互动
  • 收集有关应用程序响应和行为的专家反馈
  • 在生产部署之前验证安全环境中的更新

先决条件

  • 必须安装 MLflow 和所需的包。 本指南中所述的功能需要 MLflow 3.1.0 或更高版本。 运行以下命令来安装或升级 MLflow SDK,包括 Databricks 集成所需的附加内容:

    pip install --upgrade "mlflow[databricks]>=3.1.0" openai "databricks-connect>=16.1"
    
  • 您的开发环境必须连接到记录您的 GenAI 应用程序运行轨迹的 MLflow 实验

  • 域专家需要以下权限才能使用评审应用的聊天 UI:

    • 帐户访问权限:必须在 Databricks 帐户中预配,但不需要访问工作区。

      对于没有工作区访问权限的用户,帐户管理员可以:

      • 使用帐户级 SCIM 预配从标识提供者同步用户
      • 在 Databricks 中手动注册用户和组
    • 终结点访问CAN_QUERY 模型服务终结点的权限。

使用聊天 UI 设置和收集反馈

MLflow Review 应用的聊天 UI 连接到 GenAI 应用程序的已部署版本,使域专家能够与应用聊天并提供即时反馈。 按照以下步骤设置聊天 UI 并收集反馈:

  1. 使用代理框架打包应用,并使用 Agent Framework 作为模型服务终结点进行部署。

  2. 将终结点添加到试验的评审应用:

    注释

    以下示例将 Databricks 托管 LLM 添加到评审应用。 将终结点替换为步骤 1 中的应用终结点。

    from mlflow.genai.labeling import get_review_app
    
    # Get review app for current MLflow experiment
    review_app = get_review_app()
    
    # Connect your deployed agent endpoint
    review_app.add_agent(
        agent_name="claude-sonnet",
        model_serving_endpoint="databricks-claude-3-7-sonnet",
    )
    
    print(f"Share this URL: {review_app.url}/chat")
    
  3. 配置后,请与域专家共享评审应用 URL。 他们将能够:

  • 通过 Web 浏览器访问聊天界面
  • 通过键入问题与应用程序交互
  • 使用内置反馈控件在每个响应后提供反馈
  • 继续对话以测试多个交互

审查应用内容呈现

聊天 UI 使用域专家查询作为输入、实时代理终结点响应作为输出,并将结果存储在 MLflow 跟踪中。 无需提供自定义标记架构,因为此方法使用固定的反馈问题。

“审阅应用”会自动呈现 MLflow 跟踪中的不同内容类型:

  • 检索的文档跨度内的RETRIEVER文档呈现以供显示
  • OpenAI 格式消息:呈现以下 OpenAI 聊天对话的 MLflow 跟踪的输入和输出:
    • outputs 包含 OpenAI 格式 ChatCompletions 对象的
    • inputsoutputs包含具有 messages听写
      • messages如果数组包含 OpenAI 格式工具调用,则它们也会呈现
  • 字典:作为听写的 MLflow 跟踪的输入和输出呈现为相当打印的 JSON

否则,每个跟踪的 input 根范围和 output 根范围的内容将用作主要内容以供审阅。

查看聊天反馈

所有通过聊天 UI 收集的交互和反馈都会自动捕获为 MLflow 中的记录。

若要查看聊天交互中的轨迹,请执行以下步骤:

  1. 导航到 MLflow UI
  2. 查找与您的审阅应用会话相关的实验
  3. 浏览日志以查看完整的对话历史记录
  4. 查看每个响应所附的反馈意见

后续步骤