Condividi tramite


Eseguire query sui documenti inseriti utilizzando l'API di inferenza

Importante

Questa è una funzionalità di anteprima. Queste informazioni si riferiscono a una funzionalità non definitiva che potrebbe essere sostanzialmente modificata prima del rilascio. Microsoft non offre alcuna garanzia, esplicita o implicita, relativamente alle informazioni fornite.

Per interrogare il corpus dopo che i documenti sono stati configurati e acquisiti, fornire i seguenti dettagli:

Autenticazione

Devi aggiungere l'intestazione di autorizzazione alla tua richiesta. Inoltre, è necessario ottenere un token per la propria applicazione. Per sapere come generare un token nel campione, vedere l'esempio seguente. 

{'Content-Type': 'application/json', 'Authorization': 'Bearer {token}'}

Chiedi API di livello superiore

Vai al gruppo di risorse distribuito e trova api_management_name.

https://{api_management_name}.azure-api.net/inference/v1/Ask

Campi di richiesta

La richiesta contiene i seguenti campi di primo livello:

Nome del campo Tipo Necessario Descrizione/Esempio
domandare corda Esempio: quando Campbell Soup pubblicherà i guadagni?  
 
filtro corda No Una pagina web per imparare a filtrare la ricerca AI Azure. https://learn.microsoft.com/azure/search/search-filters  
 
Messaggio di sistema corda No Il messaggio del tuo sistema. Nota: Questo messaggio di sistema sostituisce il nostro messaggio di sistema standard e potrebbe influire sulle prestazioni. Ne sconsigliamo l'utilizzo.  
 

Campi risposta

Nome del campo Tipo Descrizione
messaggio corda Il risultato della query
citazioniRisultato CitazioniOggetto risultato Una citazione all'interno del messaggio che punta a una citazione specifica da un file associato a Assistente o al messaggio.  

CitazioniOggetto risultato

Nome del campo Tipo Descrizione
citazioni Dizionario. Chiave: stringa, valore: oggetto Citazione La chiave rappresenta il documento, ad esempio doc1.  
intento Matrice di stringhe Intenzioni riconosciute.   

Oggetto di citazione

Nome del campo Tipo Descrizione
contenuto Elenco dei pezzi Il contenuto del blocco restituito
titolo corda Il titolo del documento
url Stringa L'URL del documento
Nome file Stringa Il nome del file
Numero di pagina Int Il numero di pagina del pezzo
ID pezzo Stringa L'ID del pezzo

Filtri possibili

Nome del campo Tipo Commenti
Percorso file Stringa filepath eq 'morningstar ford report.pdf'  
numero_pagina Int32   
contiene_immagine booleano   
titolo Stringa   
metadati_documento/autore Stringa   
metadati_documento/riepilogo Stringa   
metadati_documento/parole chiave Stringa   
metadati_documento/data_creazione Offset data/ora Utilizzare questo campo per filtrare in base a determinati criteri, ad esempio gli ultimi tre mesi: document_metadata/creation_date ge 2023-12-19T00:00:00Z
metadati_documento/titolo Stringa   
document_metadata/additional_metadata/trimestre_finanziario Stringa   
document_metadata/additional_metadata/anno_finanziario Stringa   
metadati_documentali/metadati_aggiuntivi/organizzazione Stringa   

Prova l'API

È possibile testare l'API di inferenza utilizzando il servizio di gestione API Azure sul portale Azure. Per interrogare i dati è necessario utilizzare l'API endpoint nel codice. I seguenti passaggi spiegano l'intero processo di test dell'API:

Nota

L'URL dell'API Management Gateway è disponibile nella pagina Panoramica di API Management.

  1. Sul portale Azure, vai al tuo gruppo di risorse e Seleziona la risorsa Gestione API .

Screenshot della pagina che mostra i dettagli del gruppo di risorse

  1. Nella risorsa Gestione API, vai a API > API > Inferenza > v1. Dovresti vedere l'API ASK per l'analisi dei documenti finanziari.

Screenshot della schermata di gestione API

  1. Seleziona Test > Pubblica CHIEDI.

Screenshot della schermata di gestione API con il metodo POST evidenziato

  1. Richiedi un token di accesso per la registrazione dell'app che hai creato.

    a. Utilizzare la CLI Azure e accedere al tenant che include la distribuzione, come utente con autorizzazioni per chiamare l'API.

    Eseguire il seguente comando: az account get-access-token --resource <app-reg cli id>

    Qui, app-reg cli-id indica l' ID dell'applicazione (client).

    Dovresti ricevere un risposta simile al seguente output del comando:

    { 
     "accessToken": "<JWT-Token>" 
     "expiresOn": "2024-11-11 16:13:11.000000", 
     "expires_on": 1731334391, 
     "subscription": "<subscription_id>", 
     "tenant": "<tenant_id>" 
     "tokenType": "Bearer" 
    }
    

    b. Per accedere all'API, includere il token JWT nella richiesta. Copia il token JWT dal comando risposta e aggiungilo come intestazione di autorizzazione nella richiesta. az Il valore dell'intestazione dovrebbe essere Bearer <JWT-Token>. Cambia il valore query in Hi e Seleziona Invia.

    Screenshot della schermata di gestione API con corpo della richiesta evidenziato

    Dovresti ricevere un risposta simile al seguente messaggio HTTP:

    Screenshot dell'HTTP risposta alla richiesta inviata

    c. Per testare l'API, modifica il valore query in una stringa di testo che potrebbe generare un risposta in base al contenuto dei documenti acquisiti e Seleziona Invia.

  2. Prova il processo di chiamata API direttamente dal tuo codice. Il seguente codice Python frammento mostra come utilizzare l'API nel codice.

from azure.identity import DefaultAzureCredential 
import requests 
# Get Credentials 
credentials = DefaultAzureCredential() 
# Get the access token 
access_token = credentials.get_token("<App Registration Scope>",tenant_id="<your tenant id>") 
# Define the URL, headers, and payload 
url = "https://<api managment url>/inference/v1/Ask" 
headers = { 
    "Content-Type": "application/json", 
    "Authorization": f"Bearer {access_token.token}" 
} 
payload = { 
    "query": "<your query>" 
} 
# Execute the POST request 
response = requests.post(url, headers=headers, json=payload) 
# Print the response 
print(response.status_code) 
print(response.json())