Partilhar via


Obter feedback sobre a qualidade de um aplicativo agentic

Importante

Esta funcionalidade está em Pré-visualização Pública.

Este artigo mostra como usar o aplicativo de revisão Databricks para coletar feedback de revisores humanos sobre a qualidade do seu aplicativo agentic. Abrange o seguinte:

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

O que acontece numa avaliação humana?

O aplicativo de revisão Databricks prepara o LLM em um ambiente onde as partes interessadas especializadas podem interagir com ele - em outras palavras, ter uma conversa, 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 revisão ajuda a garantir a qualidade e a segurança das respostas que seu aplicativo fornece.

As partes interessadas podem conversar com o bot do aplicativo e fornecer feedback sobre essas conversas ou fornecer feedback sobre logs históricos, rastreamentos selecionados ou saídas do agente.

Requisitos

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

  • Cada revisor humano deve ter acesso ao espaço de trabalho do aplicativo de revisão ou ser sincronizado com sua conta 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 para configurar permissões databricks-agents e o aplicativo de revisão.

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

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

Nota

Os revisores humanos não precisam de acesso ao espaço de trabalho para usar o aplicativo de revisão.

Você pode conceder acesso ao aplicativo de revisão a qualquer usuário em sua conta Databricks, mesmo que eles não tenham acesso ao espaço de trabalho que contém o aplicativo de revisão.

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

O exemplo de código a seguir mostra como dar permissão aos usuários para o aplicativo de revisão para 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 rever um registo de chat, um utilizador tem de ter a CAN_REVIEW permissão.

Implantar o aplicativo de revisão

Quando você implanta um agente usando agents.deploy()o , o aplicativo de revisão é automaticamente habilitado e implantado. 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.

Ligação para rever a aplicação a partir da saída do comando do bloco de notas

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

from databricks import agents

deployments = agents.list_deployments()
deployments

Rever a IU da aplicação

Para abrir o aplicativo de revisão, clique no URL fornecido. 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.

Rever o ecrã de abertura da aplicação

Fornecer instruções aos revisores

Para fornecer texto personalizado para as instruções exibidas para 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.

Converse com o aplicativo e envie avaliações

Para conversar com o aplicativo e enviar avaliaçõ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 sua resposta à sua pergunta e as fontes que ele usou para encontrar a resposta.

    Nota

    Se o agente usar um retriever, as fontes de dados serão identificadas pelo campo doc_uri definido pelo esquema retriever definido durante a criação do agente. Consulte Definição do esquema do recuperador.

  3. Reveja a resposta da aplicação e selecione Sim, Não ou Não sei.

  4. O aplicativo pede informações adicionais. 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 seus comentários.

  7. Continue fazendo perguntas para fornecer feedback adicional.

O diagrama a seguir ilustra esse fluxo de trabalho.

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

Execute o aplicativo de revisão no qual os especialistas conversam com o aplicativo agentic e fornecem feedback.

Disponibilizar logs de bate-papo 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 comentários adicionais são salvos em tabelas de inferência. As tabelas de inferência estão localizadas no mesmo catálogo e esquema do Unity Catalog onde o modelo foi registrado e são nomeadas <model_name>_payload, <model_name>_payload_assessment_logse <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 e habilitar as request_id revisões da request_id seguinte maneira:

  1. Localize o request_ids a ser revisado na <model_name>_payload_request_logs tabela de inferência. A tabela de inferência está no mesmo catálogo e esquema do Unity Catalog onde 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.

Revise o aplicativo com logs de bate-papo carregados para revisão de especialistas

Revisão especializada de logs de interações de outros usuários com o aplicativo

Para revisar logs de bate-papos anteriores, os logs devem ter sido habilitados para revisão. Consulte Disponibilizar logs de bate-papo para avaliação por revisores especializados.

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

    Chats ativados para revisão

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

  3. Analise a solicitação e a resposta. O aplicativo também mostra as fontes que usou como referência. Você pode clicar sobre eles para rever a referência e fornecer feedback sobre a relevância da fonte.

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

  5. O aplicativo pede informações adicionais. 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 por chat com o aplicativo e enviar avaliações para um vídeo que mostra o processo.

  7. Clique em Concluído para salvar seus comentários.

O diagrama a seguir ilustra esse fluxo de trabalho.

  1. Usando o aplicativo de revisão ou o aplicativo personalizado, os revisores conversam com o aplicativo agentic.
  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 está na tabela de inferência) para postar logs de bate-papo <model_name>_payload_request_logs para revisar o aplicativo.
  4. Usando o aplicativo de revisão, o especialista registra e fornece feedback. O feedback de especialistas é registrado em tabelas de inferência.

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

Nota

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

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

O bloco de anotações a seguir ilustra como usar os logs do aplicativo de revisão como entrada para uma execução de avaliação usando mlflow.evaluate()o .

Executar avaliação no bloco de anotações de logs de solicitação

Obter o bloco de notas