Consultar documentos ingeridos mediante la API de inferencia
Importante
Esta es una característica en versión preliminar. Esta información se relaciona con una función preliminar que puede modificarse sustancialmente antes de su lanzamiento. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Para consultar el corpus después de configurar e ingerir los documentos, proporcione los siguientes detalles:
Autenticación
Debe agregar un encabezado de autorización a su solicitud. Además, necesitas obtener un token para tu aplicación. Vea el siguiente ejemplo para saber cómo generar un token en la muestra.
{'Content-Type': 'application/json', 'Authorization': 'Bearer {token}'}
Preguntar a la API de nivel superior
Vaya al grupo de recursos implementado y busque api_management_name
.
https://{api_management_name}.azure-api.net/inference/v1/Ask
Campos de solicitud
La solicitud contiene los siguientes campos de nivel superior:
Nombre del campo | Tipo | Requerido | Descripción/Ejemplo |
---|---|---|---|
consulta | cadena | Sí | Ejemplo: ¿Cuándo publicará Campbell Soup sus resultados? |
filter | cadena | No | Una página web para aprender sobre el filtrado de búsqueda de inteligencia artificial Azure. https://learn.microsoft.com/azure/search/search-filters |
Mensaje del sistema | cadena | No | Su mensaje del sistema. Nota: Este mensaje del sistema reemplaza nuestro mensaje del sistema estándar y podría afectar el rendimiento. No recomendamos su uso. |
Campos respuesta
Nombre del campo | Tipo | Descripción |
---|---|---|
mensaje | cadena | El resultado de la consulta |
CitasResultado | Objeto CitationsResult | Una cita dentro del mensaje que apunta a una cita específica de un archivo asociado con Asistente o el mensaje. |
Objeto CitationsResult
Nombre del campo | Tipo | Descripción |
---|---|---|
Citas | Diccionario. Clave: cadena, valor: objeto de cita | La clave representa el documento, por ejemplo, doc1. |
intención | Matriz de cadenas | Intenciones reconocidas. |
Objeto de cita
Nombre del campo | Tipo | Descripción |
---|---|---|
contenido | Lista de fragmentos | El contenido del fragmento devuelto |
título | cadena | El título del documento |
Dirección URL | Cadena | La URL del documento |
Nombre del archivo | Cadena | El nombre del archivo |
Número de página | Int | El número de página del fragmento |
Identificación del fragmento | Cadena | El identificador del fragmento |
Posibles filtros
Nombre del campo | Tipo | Comentarios |
---|---|---|
Ruta de archivo | Cadena | filepath eq 'morningstar ford report.pdf' |
Número de página | Int32 | |
contiene_imagen | booleano | |
título | Cadena | |
Metadatos del documento/autor | Cadena | |
documento_metadatos/resumen | Cadena | |
metadatos_del_documento/palabras_clave | Cadena | |
metadatos_del_documento/fecha_de_creación | Desplazamiento de fecha y hora | Utilice este campo para filtrar por determinados criterios, por ejemplo, los últimos tres meses: document_metadata/creation_date ge 2023-12-19T00:00:00Z |
metadatos_del_documento/título | Cadena | |
metadatos_del_documento/metadatos_adicionales/trimestre_financiero | Cadena | |
metadatos_del_documento/metadatos_adicionales/año_financiero | Cadena | |
metadatos_del_documento/metadatos_adicionales/organizacion | Cadena |
Probar la API
Puede probar la API de inferencia utilizando el servicio de administración de API Azure en el portal Azure. Debe utilizar la API punto de conexión en su código para consultar los datos. Los siguientes pasos explican todo el proceso de prueba de la API:
Nota
La URL de API Management Gateway está disponible en la página Descripción general de API Management.
- En el portal Azure, vaya a su grupo de recursos y Seleccionar al recurso Administración de API .
- En el recurso Administración de API, vaya a APIs > APIs > Inferencia > v1. Debería ver la API ASK de análisis de documentos financieros.
- Seleccionar Prueba > Publicar PREGUNTA.
Solicita un token de acceso para el registro de la aplicación que creaste.
a. Utilice la CLI Azure e inicie sesión en el inquilino que incluye la implementación, como un usuario con permisos para llamar a la API.
Ejecute el siguiente comando:
az account get-access-token --resource <app-reg cli id>
Aquí,
app-reg cli-id
significa el ID de la aplicación (cliente).Debería recibir un respuesta similar al siguiente comando:
{ "accessToken": "<JWT-Token>" "expiresOn": "2024-11-11 16:13:11.000000", "expires_on": 1731334391, "subscription": "<subscription_id>", "tenant": "<tenant_id>" "tokenType": "Bearer" }
b. Para acceder a la API, incluya el token JWT en la solicitud. Copie el token JWT del comando respuesta y agréguelo como encabezado de autorización en la solicitud.
az
El valor del encabezado debe ser Bearer<JWT-Token>
. Cambie elquery
valor aHi
y Seleccionar Enviar.Debería recibir un respuesta similar al siguiente mensaje HTTP:
c. Para probar la API, cambie el valor a una cadena de texto que podría generar un respuesta según el contenido de los documentos ingeridos y Seleccionar
query
Enviar .Pruebe el proceso de realizar la llamada API directamente desde su código. El siguiente código Python fragmento de código muestra cómo puedes usar la API en tu código.
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())