Compartilhar via


Obter comentários sobre a qualidade de um aplicativo agente

Importante

Esse recurso está em uma versão prévia.

Este artigo mostra como usar o aplicativo de revisão do Databricks para coletar feedback de revisores humanos sobre a qualidade do aplicativo agente. Ele aborda as seguintes tarefas:

  • Como implantar o aplicativo de revisão.
  • Como os revisores usam o aplicativo para fornecer feedback sobre as respostas do aplicativo agente.
  • Como os especialistas podem revisar os chats registrados para fornecer sugestões de melhoria e outro feedback usando o aplicativo.

O que acontece em uma avaliação humana?

O aplicativo de revisão da Databricks prepara o LLM em um ambiente em que as partes interessadas especializadas podem interagir com ele, em outras palavras, conversar, fazer perguntas, fornecer feedback e assim por diante. O aplicativo de revisão registra todas as perguntas, respostas e comentários em uma tabela de inferência para que você possa analisar melhor o desempenho do LLM. Dessa forma, o aplicativo de avaliação ajuda a garantir a qualidade e a segurança das respostas que seu aplicativo fornece.

Os stakeholders podem conversar com o bot do aplicativo e fornecer feedback sobre essas conversas ou fornecer feedback sobre logs históricos, rastreamentos coletados ou saídas do agente.

Requisitos

  • As tabelas de inferência devem ser habilitadas no ponto de extremidade que está atendendo o agente.

  • Cada revisor humano deve ter acesso ao workspace do aplicativo de revisão ou ser sincronizado com sua conta do Databricks com o SCIM. Consulte a próxima seção, Configurar permissões para usar o aplicativo de revisão.

  • Os desenvolvedores devem instalar o SDK do databricks-agents para configurar permissões e configurar o aplicativo de revisão.

    %pip install databricks-agents
    dbutils.library.restartPython()
    

Configurar permissões para usar o aplicativo de revisão

Observação

Os revisores humanos não precisam de acesso ao workspace para usar o aplicativo de revisão.

Você pode conceder acesso ao aplicativo de revisão a qualquer usuário em sua conta do Databricks, mesmo que ele não tenha acesso ao workspace que contém o aplicativo de revisão.

  • Para usuários que não têm acesso ao workspace, um administrador de conta usa o provisionamento SCIM no nível da conta para sincronizar usuários e grupos automaticamente do provedor de identidade com a conta do Azure Databricks. Você também pode registrar manualmente esses usuários e grupos para dar a eles acesso ao configurar identidades no Databricks. Confira Sincronizar usuários e grupos do Microsoft Entra ID.
  • Para usuários que já têm acesso ao workspace que contém o aplicativo de revisão, nenhuma configuração adicional é necessária.

O exemplo de código a seguir mostra como conceder permissão aos usuários para o aplicativo de revisão de um agente. O users parâmetro usa uma lista de endereços de e-mail.

from databricks import agents

# Note that <user_list> can specify individual users or groups.
agents.set_permissions(model_name=<model_name>, users=[<user_list>], permission_level=agents.PermissionLevel.CAN_QUERY)

Para revisar um registro de bate-papo, um usuário deve ter a CAN_REVIEW permissão.

Implantar o aplicativo de revisão

Quando você implanta um agente usando o agents.deploy(), o aplicativo de revisão é habilitado e implantado automaticamente. A saída do comando mostra a URL do aplicativo de revisão. Para obter informações sobre como implantar um agente, consulte Implantar um agente para aplicativo de IA generativa.

link para o aplicativo de revisão da saída do comando do notebook

Se você perder o link para a implantação, poderá encontrá-lo usando o list_deployments().

from databricks import agents

deployments = agents.list_deployments()
deployments

Revisar a interface do usuário do aplicativo

Para abrir o aplicativo de revisão, clique na URL fornecida. A interface do usuário do aplicativo de revisão tem três guias na barra lateral esquerda:

Quando você abre o aplicativo de revisão, a página de instruções é exibida.

tela de abertura do aplicativo de revisão

Fornecer instruções aos revisores

Para fornecer texto personalizado para as instruções exibidas para os revisores, use o seguinte código:

from databricks import agents

agents.set_review_instructions(uc_model_name, "Thank you for testing the bot. Use your domain expertise to evaluate and give feedback on the bot's responses, ensuring it aligns with the needs and expectations of users like yourself.")
agents.get_review_instructions(uc_model_name)

Uma captura de tela das instruções do aplicativo de revisão especificou o exemplo do Python.

Conversar com o aplicativo e enviar revisões

Para conversar com o aplicativo e enviar revisões:

  1. Clique em Testar o bot na barra lateral esquerda.

  2. Digite sua pergunta na caixa e pressione Return ou Enter no teclado ou clique na seta na caixa. O aplicativo exibe a resposta para sua pergunta e as fontes que usou para encontrar a resposta.

  3. Examine a resposta do aplicativo e selecione Sim, Não ou Não sei.

  4. Para obter mais informações, leia as Perguntas frequentes. Marque as caixas apropriadas ou digite seus comentários no campo fornecido.

  5. Você também pode editar a resposta diretamente para fornecer uma resposta melhor. Para editar a resposta, clique em Editar resposta, faça as alterações na caixa de diálogo e clique em Salvar, conforme mostrado no vídeo a seguir.

    Como editar uma resposta

  6. Clique em Concluído para salvar suas edições.

  7. Continue fazendo perguntas para fornecer feedback adicional.

O diagrama a seguir a ilustra esse fluxo de trabalho.

  1. Usando o aplicativo de revisão, o revisor conversa com o aplicativo agente.
  2. Usando o aplicativo de revisão, o revisor fornece feedback sobre as respostas do aplicativo.
  3. Todas as solicitações, respostas e feedback são registrados em tabelas de inferência.

Execute o aplicativo de revisão onde especialistas interagem com o aplicativo agente e fornecem comentários.

Disponibilizar logs de chat para avaliação por revisores especializados

Quando um usuário interage com o aplicativo usando a API REST ou o aplicativo de revisão, todas as solicitações, respostas e feedback adicionais são salvos em tabelas de inferência. As tabelas de inferência estão localizadas no mesmo catálogo e esquema do Catálogo do Unity em que o modelo foi registrado e são nomeadas <model_name>_payload, <model_name>_payload_assessment_logs e <model_name>_payload_request_logs. Para obter mais informações sobre essas tabelas, incluindo esquemas, consulte Tabelas de inferência aprimoradas por agente.

Para carregar esses logs no aplicativo de revisão para avaliação por revisores especializados, você deve primeiro encontrar o request_id e habilitar as revisões para esse request_id da seguinte maneira:

  1. Localize os request_ids a serem revisados na tabela de inferência <model_name>_payload_request_logs. As tabelas de inferência estão no mesmo catálogo e esquema do Catálogo do Unity em que o modelo foi registrado.

  2. Use um código semelhante ao seguinte para carregar os logs de revisão no aplicativo de revisão:

    from databricks import agents
    
    agents.enable_trace_reviews(
      model_name=model_fqn,
      request_ids=[
          "52ee973e-0689-4db1-bd05-90d60f94e79f",
          "1b203587-7333-4721-b0d5-bba161e4643a",
          "e68451f4-8e7b-4bfc-998e-4bda66992809",
      ],
    )
    
  3. A célula de resultado inclui um link para o aplicativo de revisão com os logs selecionados carregados para revisão.

Aplicativo de revisão com logs de chat carregados para revisão especializada

Revisão por especialistas de logs das interações dos usuários com o aplicativo

Para revisar os logs de chats anteriores, os logs devem ter sido habilitados para revisão. Consulte Disponibilizar logs de chat para avaliação por revisores especializados.

  1. Na barra lateral esquerda do aplicativo de revisão, selecione Chats para revisar. As solicitações habilitadas são exibidas.

    Chats habilitados para revisão

  2. Clique em uma solicitação para exibi-la para revisão.

  3. Verifique a solicitação e a resposta. O aplicativo também mostra as fontes usadas como referência. Você pode clicar neles para revisar a referência e fornecer feedback sobre a relevância da fonte.

  4. Para fornecer comentários sobre a qualidade da resposta, selecione Sim, Não ou Não sei.

  5. Para obter mais informações, leia as Perguntas frequentes. Marque as caixas apropriadas ou digite seus comentários no campo fornecido.

  6. Você também pode editar a resposta diretamente para fornecer uma resposta melhor. Para editar a resposta, clique em Editar resposta, faça as alterações na caixa de diálogo e clique em Salvar. Consulte Conversar com o aplicativo e enviar revisões para assistir a um vídeo de demonstração do processo.

  7. Clique em Concluído para salvar suas edições.

O diagrama a seguir a ilustra esse fluxo de trabalho.

  1. Usando o aplicativo de revisão ou o aplicativo personalizado, os revisores conversam com o aplicativo agente.
  2. Todas as solicitações e respostas são registradas em tabelas de inferência.
  3. O desenvolvedor de aplicativos usa enable_trace_reviews([request_id]) (onde request_id é da tabela de inferência) para postar logs de chat papo para revisar o aplicativo <model_name>_payload_request_logs.
  4. Usando o aplicativo de revisão, as avaliações de especialistas registram e fornecem feedback. Os comentários dos especialistas são registrados em tabelas de inferência.

Execute uma revisão de rastreamento na qual os revisores interagem com o aplicativo de revisão ou a API REST para fornecer comentários.

Observação

Se você tiver o Firewall de Armazenamento do Microsoft Azure habilitado, entre em contato com sua equipe de conta do Azure Databricks para habilitar tabelas de inferência para seus pontos de extremidade.

Use mlflow.evaluate() na tabela de logs de solicitação

O notebook a seguir ilustra como usar os logs do aplicativo de revisão como entrada para uma rodada de avaliação usando mlflow.evaluate().

Executar avaliação no caderno de logs de solicitação

Obter notebook