Condividi tramite


Ottenere feedback sulla qualità di un’agentic application

Importante

Questa funzionalità è disponibile in anteprima pubblica.

Questo articolo illustra come usare l'app di recensione di Databricks per raccogliere feedback da utenti che lasciano recensioni sulla qualità dell'agentic application. Riguarda le aree seguenti:

  • Come distribuire l'app di recensione.
  • Come i revisori usano l'app per fornire commenti e suggerimenti sulle risposte dell'agentic application.
  • In che modo gli esperti possono esaminare le chat registrate per fornire suggerimenti per migliorare e altri feedback usando l'app.

Cosa succede in una valutazione umana?

L'app di revisione di Databricks esegue le fasi dell'LLM in un ambiente in cui gli stakeholder esperti possono interagire con esso, in altre parole, avere una conversazione, porre domande, fornire feedback e così via. L'app di revisione registra tutte le domande, le risposte e il feedback in una tabella di inferenza, in modo da poter analizzare ulteriormente le prestazioni di LLM. In questo modo, l'app di revisione consente di garantire la qualità e la sicurezza delle risposte fornite dall'applicazione.

Gli stakeholder possono chattare con il bot dell'applicazione e fornire commenti e suggerimenti su tali conversazioni o feedback sui log cronologici, sulle tracce curate o sugli output dell'agente.

Requisiti

  • Le tabelle di inferenza devono essere abilitate nell'endpoint che gestisce l'agente.

  • Ogni revisore umano deve avere accesso all'area di lavoro per le app di revisione o essere sincronizzato con l'account Databricks con SCIM. Vedere la sezione successiva Configurare le autorizzazioni per usare l'app di revisione.

  • Gli sviluppatori devono installare l'SDK databricks-agents per configurare le autorizzazioni e configurare l'app di recensione.

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

Configurare le autorizzazioni per l'uso dell'app di revisione

Nota

I revisori umani non richiedono l'accesso all'area di lavoro per usare l'app di revisione.

È possibile concedere l'accesso all'app di revisione a qualsiasi utente nell'account Databricks, anche se non ha accesso all'area di lavoro che contiene l'app di revisione.

  • Per gli utenti che non hanno accesso all'area di lavoro, un amministratore dell'account usa il provisioning SCIM a livello di account per sincronizzare automaticamente utenti e gruppi dal provider di identità all'account Azure Databricks. È anche possibile registrare manualmente questi utenti e gruppi per concedere loro l'accesso quando si configurano le identità in Databricks. Consultare Sincronizzare utenti e gruppi da Microsoft Entra ID.
  • Per gli utenti che hanno già accesso all'area di lavoro che contiene l'app di revisione, non è necessaria alcuna configurazione aggiuntiva.

L'esempio di codice seguente illustra come concedere agli utenti l'autorizzazione per l'app di revisione per un agente. Il users parametro accetta un elenco di indirizzi di posta elettronica.

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)

Per esaminare un log di chat, un utente deve disporre dell'autorizzazione CAN_REVIEW .

Distribuire l'app di recensione

Quando si distribuisce un agente usando agents.deploy(), l'app di recensione viene abilitata e distribuita automaticamente. L'output del comando mostra l'URL per l'app di recensione. Per informazioni sulla distribuzione di un agente, vedere Distribuire un agente per un'applicazione di IA generativa.

collegamento per esaminare l'app dall'output del comando del Notebook

Se si perde il collegamento alla distribuzione, è possibile trovarlo usando list_deployments().

from databricks import agents

deployments = agents.list_deployments()
deployments

Esaminare l'interfaccia utente dell'app

Per aprire l'app di recensione, fare clic sull'URL fornito. L'interfaccia utente dell'app di recensione include tre schede nella barra laterale sinistra:

Quando si apre l'app di recensione, viene visualizzata la pagina delle istruzioni.

schermata di apertura dell'app di recensione

Fornire istruzioni ai revisori

Per fornire testo personalizzato per le istruzioni visualizzate per i revisori, usare il codice seguente:

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)

Screenshot delle istruzioni dell'app di recensione specificate nell'esempio Python.

Chattare con l'app e inviare recensioni

Per chattare con l'app e inviare recensioni:

  1. Fare clic su Testa il bot nella barra laterale sinistra.

  2. Digitare la domanda nella casella e premere Invio o Invio sulla tastiera oppure fare clic sulla freccia nella casella.

    L'app visualizza la risposta alla domanda e le origini usate per trovare la risposta.

    Nota

    Se l'agente utilizza un retriever, le fonti di dati vengono identificate dal campo doc_uri impostato dallo schema del retriever definito durante la configurazione dell'agente. Consulta lo schema del recuperatore impostato.

  3. Esaminare la risposta dell'app e selezionare , No o Non lo so.

  4. L’app chiede altre informazioni. Selezionare le caselle appropriate o digitare i commenti nel campo specificato.

  5. È anche possibile modificare direttamente la risposta per fornirne una migliore. Per modificare la risposta, fare clic su Modifica risposta, apportare le modifiche nella finestra di dialogo e fare clic su Salva, come illustrato nel video seguente.

    come modificare una risposta

  6. Fare clic su Fine per salvare il feedback.

  7. Continuare a porre domande per fornire feedback aggiuntivi.

Il diagramma seguente illustra questo flusso di lavoro:

  1. Usando l'app di recensione, i revisori chatrano con l'agentic application.
  2. Usando l'app di recensione, il revisore fornisce commenti e suggerimenti sulle risposte dell'applicazione.
  3. Tutte le richieste, le risposte e il feedback vengono registrate nelle tabelle di inferenza.

Eseguire l'app di recensione in cui gli esperti chat con l'agentic application e fornire commenti e suggerimenti.

Rendere disponibili i log di chat per la valutazione da parte dei revisori esperti

Quando un utente interagisce con l'app usando l'API REST o l'app di recensione, tutte le richieste, le risposte e il feedback aggiuntivo vengono salvate nelle tabelle di inferenza. Le tabelle di inferenza si trovano nello stesso catalogo di Unity Catalog e nello stesso schema in cui il modello è stato registrato e sono denominate <model_name>_payload, <model_name>_payload_assessment_logs e <model_name>_payload_request_logs. Per altre informazioni su queste tabelle, inclusi gli schemi, vedere Tabelle di inferenza avanzata dall'agente.

Per caricare questi log nell'app di recensione per la valutazione da parte di revisori esperti, è prima necessario trovare le recensioni request_id e abilitare le verifiche come request_id indicato di seguito:

  1. Individuare gli oggetti request_id da recensire nella tabella di inferenza <model_name>_payload_request_logs. La tabella di inferenza si trova nello stesso Unity Catalog e nello stesso schema in cui è stato registrato il modello.

  2. Usare codice simile al seguente per caricare i log di recensione nell'app di recensione:

    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. La cella del risultato include un collegamento all'app di recensione con i log selezionati caricati per la recensione.

Esaminare l'app con i log di chat caricati per la recensione di esperti

Esame esperto dei log delle interazioni di altri utenti con l'app

Per esaminare i log delle chat precedenti, è necessario che i log siano stati abilitati per la recensione. Vedere Rendere disponibili i log delle chat per la valutazione da parte dei revisori esperti.

  1. Nella barra laterale sinistra dell'app di revisione selezionare Chat da esaminare. Vengono visualizzate le richieste abilitate.

    chat abilitate per la recensione

  2. Fare clic su una richiesta per visualizzarla per la recensione.

  3. Esaminare la richiesta e la risposta. L'app mostra anche le origini usate per riferimento. È possibile fare clic su questi elementi per esaminare il riferimento e fornire commenti e suggerimenti sulla rilevanza dell'origine.

  4. Per fornire commenti e suggerimenti sulla qualità della risposta, selezionare , No o Non lo so.

  5. L’app chiede altre informazioni. Selezionare le caselle appropriate o digitare i commenti nel campo specificato.

  6. È anche possibile modificare direttamente la risposta per fornirne una migliore. Per modificare la risposta, fare clic su Modifica risposta, apportare le modifiche nella finestra di dialogo e fare clic su Salva. Vedere Chattare con l'app e inviare recensioni per visualizzare un video che mostra il processo.

  7. Fare clic su Fine per salvare il feedback.

Il diagramma seguente illustra questo flusso di lavoro:

  1. Usando l'app di recensione o l'app personalizzata, i revisori chattano con l'agentic application.
  2. Tutte le richieste e le risposte vengono registrate nelle tabelle di inferenza.
  3. Lo sviluppatore di applicazioni usa enable_trace_reviews([request_id]) (dove request_id è dalla tabella di inferenza <model_name>_payload_request_logs) per pubblicare i log delle chat per esaminare l'app.
  4. Usando l'app di recensione, i l’esperto esamina i log e fornisce feedback. Il feedback degli esperti viene registrato nelle tabelle di inferenza.

Eseguire una verifica di traccia in cui i revisori interagiscono con l'app di recensione o l'API REST per fornire feedback.

Nota

Se è stato abilitato il firewall di Archiviazione di Azure, contattare il team dell'account Azure Databricks per abilitare le tabelle di inferenza per gli endpoint.

Usare mlflow.evaluate() nella tabella dei log delle richieste

Il notebook seguente illustra come usare i log dell'app di revisione come input per un'esecuzione di valutazione usando mlflow.evaluate().

Notebook: Eseguire la valutazione sui log delle richieste

Ottenere il notebook