Obter feedback sobre a qualidade de um aplicativo autêntico

Prévia

Este recurso está em Prévia pública.

Este artigo mostra como usar o aplicativo de avaliação Databricks para obter feedback de avaliadores humanos sobre a qualidade do seu aplicativo autêntico. Ele abrange o seguinte:

  • Como implantar o aplicativo de avaliação.

  • Como os revisores usam o aplicativo para fornecer feedback sobre as respostas do aplicativo agente.

  • Como os especialistas podem analisar os bate-papos dos registros para dar sugestões de melhoria e outros comentários usando o aplicativo.

O que acontece em uma avaliação humana?

O aplicativo de revisão da Databricks apresenta 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 avaliação logs todas as perguntas, respostas e feedback em uma tabela de inferência para que o senhor 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.

As partes interessadas podem bater papo com o bot do aplicativo e fornecer feedback sobre essas conversas, ou fornecer feedback sobre o histórico logs, rastreamentos selecionados ou resultados do agente.

Requisitos

  • As tabelas de inferência devem estar ativadas no endpoint que está servindo o agente.

  • Cada avaliador humano deve ter acesso ao aplicativo de avaliação workspace ou estar sincronizado com o seu Databricks account com SCIM. Consulte a próxima seção, Configurar permissões para o aplicativo de revisão workspace.

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

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

Configure permissões para o workspace do aplicativo de revisão

Se seus avaliadores já tiverem acesso ao site workspace que contém o aplicativo de avaliação, o senhor não precisará fazer nada.

Se os revisores ainda não tiverem acesso, os administradores da conta poderão utilizar o provisionamento SCIM em nível de conta para sincronizar usuários e grupos automaticamente do seu provedor de identidade para sua conta do Databricks. Também é possível registrar manualmente esses usuários e grupos configurando identidades no Databricks. Isso possibilita que eles sejam incluídos como revisores qualificados. Consulte Sincronizar usuários e grupos do seu provedor de identidade.

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)

Os especialistas que revisam o chat logs devem ter permissões CAN_REVIEW.

implantado o aplicativo de revisão

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

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

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

from databricks import agents

deployments = agents.list_deployments()
deployments

Revise a IU do aplicativo

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

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

revise a tela de abertura do aplicativo

Fornecer instruções aos revisores

Para fornecer texto personalizado para as instruções exibidas aos revisores, use o código a seguir:

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 em 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 a resposta à sua pergunta e as fontes usadas para encontrar a resposta.

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

  4. O aplicativo solicita 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 suas 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 avaliação, o revisor conversa com o aplicativo do agente.

  2. Usando o aplicativo de avaliação, o revisor fornece feedback sobre as respostas do aplicativo.

  3. Todas as solicitações, respostas e feedback são registros em tabelas de inferência.

executar o aplicativo de avaliação no qual os especialistas conversam com o aplicativo autêntico e fornecem feedback.

Disponibilizar os registros 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 avaliação, todas as solicitações, respostas e feedback adicional 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 em que o modelo foi registrado e são denominadas <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 especialistas, o senhor deve primeiro encontrar o request_id e habilitar as revisões para esse request_id da seguinte forma:

  1. Localize os request_ids a serem revisados na tabela de inferência <model_name>_payload_request_logs. A tabela de inferência está no mesmo catálogo e esquema do Unity Catalog 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 análise com o chat logs carregado para análise de especialistas

Análise especializada de registros das interações de outros usuários com o aplicativo

Para revisar logs de chats anteriores, o logs deve estar habilitado para revisão. Consulte Disponibilizar os registros de bate-papo para avaliação por revisores especializados.

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

    bate-papos ativados para análise
  2. Clique em uma solicitação para exibi-la para análise.

  3. Analise 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 feedback sobre a qualidade da resposta, selecione Sim, Não ou Não sei.

  5. O aplicativo solicita 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 suas alterações na caixa de diálogo e clique em Salvar. Consulte Converse com o aplicativo e envie avaliações para um vídeo que mostre 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 avaliação ou o aplicativo personalizado, os revisores conversam com o aplicativo do agente.

  2. Todas as solicitações e respostas são registros em tabelas de inferência.

  3. O desenvolvedor do aplicativo usa enable_trace_reviews([request_id]) (onde request_id é da tabela de inferência <model_name>_payload_request_logs) para postar o bate-papo logs para revisar o aplicativo.

  4. Usando o aplicativo de análise, o especialista analisa o site logs 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 apresentar feedback.

Use mlflow.evaluate() na tabela de registros de solicitações

O seguinte Notebook ilustra como usar o logs do aplicativo de revisão como entrada para uma execução de avaliação usando mlflow.evaluate().

Execute a avaliação no Notebook de log de solicitações

Abra o bloco de anotações em outra guia