Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este início rápido mostra como usar a API REST de Compreensão de Conteúdo para obter dados estruturados de conteúdo multimodal em arquivos de documento, imagem, áudio e vídeo.
Pré-requisitos
- Para começar, você precisa de uma assinatura ativa do Azure. Se você ainda não tiver uma conta do Azure, poderá criar uma conta gratuitamente.
- Depois de ter sua assinatura do Azure, crie um Recurso da Fábrica da Microsoft no portal do Azure. Certifique-se de criá-lo em uma região com suporte.
- Configure implantações de modelo padrão para o recurso de Compreensão de Conteúdo. Definir padrões cria uma conexão com os modelos de Foundry que você usa para solicitações de Compreensão de Conteúdo. Use um dos seguintes métodos:
- Vá para a página de configurações de Compreensão de Conteúdo
- Selecione o botão "+ Adicionar recurso" no canto superior esquerdo
- Selecione o recurso Foundry que você deseja usar e clique em Avançar e, em seguida, Salvar
- Certifique-se de deixar a opção "Habilitar implantação automática para modelos obrigatórios se não houver padrões disponíveis." marcada. Isso garante que seu recurso esteja totalmente configurado com os modelos GPT-4.1, GPT-4.1-mini e text-embedding-3-large obrigatórios. Diferentes analisadores predefinidos exigem modelos diferentes.
- Neste guia, usamos a ferramenta de linha de comando cURL. Se ele não estiver instalado, você poderá baixar a versão apropriada para seu ambiente de desenvolvimento.
Comece com um analisador predefinido
Os analisadores definem como o conteúdo é processado e os insights extraídos. Oferecemos analisadores predefinidos para casos de uso comuns. Você pode personalizar analisadores predefinidos para atender melhor às suas necessidades específicas e casos de uso. Este guia de início rápido usa analisadores predefinidos de fatura, imagem, áudio e vídeo para ajudá-lo a começar.
Enviar um arquivo para análise
Antes de executar o seguinte comando cURL, faça as seguintes alterações na solicitação HTTP:
- Substitua
{endpoint}e{key}pelos valores correspondentes da instância do Foundry no portal do Azure.
Solicitação POST
Este exemplo usa o prebuilt-invoice analisador para extrair dados estruturados de um documento de fatura.
curl -i -X POST "{endpoint}/contentunderstanding/analyzers/prebuilt-invoice:analyze?api-version=2025-11-01" \
-H "Ocp-Apim-Subscription-Key: {key}" \
-H "Content-Type: application/json" \
-d '{
"inputs":[{"url": "https://github.com/Azure-Samples/azure-ai-content-understanding-python/raw/refs/heads/main/data/invoice.pdf"}]
}'
Resposta POST
O cabeçalho de resposta inclui um Operation-Location campo, que você usa para recuperar os resultados da operação de análise assíncrona.
HTTP/1.1 202 Accepted
Transfer-Encoding: chunked
Content-Type: application/json
request-id: aaa-bbb-ccc-ddd
x-ms-request-id: aaa-bbb-ccc-ddd
Operation-Location: {endpoint}/contentunderstanding/analyzerResults/{request-id}?api-version=2025-11-01
api-supported-versions: 2024-12-01-preview,2025-05-01-preview,2025-11-01
x-envoy-upstream-service-time: 800
apim-request-id: {request-id}
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
x-ms-region: West US
Date: Fri, 31 Oct 2025 05:30:17 GMT
Connection: close
Importante
Copie a URL de Localização de Operação do cabeçalho de resposta. Você usará essa URL na próxima etapa para recuperar os resultados da análise.
Obter o resultado da análise
Use o Operation-Location da POST resposta e recupere o resultado da análise.
Solicitação GET
curl -i -X GET "{endpoint}/contentunderstanding/analyzerResults/{request-id}?api-version=2025-11-01" \
-H "Ocp-Apim-Subscription-Key: {key}"
Resposta GET
A resposta JSON 200 (OK) inclui um campo status indicando o status da operação. Se a operação não estiver concluída, o valor de status será Running ou NotStarted. Nesses casos, você deve enviar a solicitação GET novamente, manualmente ou por meio de um script. Espere um intervalo de um segundo ou mais entre as chamadas.
{
"id": "ce05fb5a-579e-4f0b-afb5-3532bcddeaee",
"status": "Succeeded",
"result": {
"analyzerId": "prebuilt-invoice",
"apiVersion": "2025-11-01",
"createdAt": "2025-11-13T20:04:55Z",
"warnings": [],
"contents": [
{
"path": "input1",
"markdown": "CONTOSO LTD.\n\n\n# INVOICE\n\nContoso Headquarters\n123 456th St\nNew York, NY, 10001\n\nINVOICE: INV-100\n\nINVOICE DATE: 11/15/2019\n\nDUE DATE: 12/15/2019\n\nCUSTOMER NAME: MICROSOFT CORPORATION...",
"fields": {
"AmountDue": {
"type": "object",
"valueObject": {
"Amount": {
"type": "number",
"valueNumber": 610,
"spans": [
{
"offset": 1522,
"length": 7
}
],
"confidence": 0.773,
"source": "D(1,7.3628,8.0459,7.9272,8.0459,7.9272,8.2070,7.3628,8.2070)"
},
"CurrencyCode": {
"type": "string",
"valueString": "USD"
}
}
},
"BalanceForward": {
"type": "object",
"valueObject": {
"Amount": {
"type": "number",
"valueNumber": 500,
"spans": [
{
"offset": 1474,
"length": 7
}
],
"confidence": 0.901,
"source": "D(1,7.3628,7.7445,7.9278,7.7467,7.9272,7.9092,7.3622,7.9070)"
},
"CurrencyCode": {
"type": "string",
"valueString": "USD"
}
}
},
"BillingAddress": {
"type": "string",
"valueString": "123 Bill St, Redmond WA, 98052",
"spans": [
{
"offset": 325,
"length": 12
},
"..."
],
"confidence": 0.712,
"source": "D(1,0.5805,3.9471,1.2858,3.9478,1.2856,4.1115,0.5803,4.1108);..."
},
"BillingAddressRecipient": {
"type": "string",
"valueString": "Microsoft Finance",
"spans": [
{
"offset": 307,
"length": 17
}
],
"confidence": 0.815,
"source": "D(1,0.5734,3.7392,1.8060,3.7521,1.8043,3.9201,0.5717,3.9072)"
},
"CountryRegion": {
"type": "string",
"valueString": "USA"
},
"CustomerAddress": {
"type": "string",
"valueString": "123 Other St, Redmond WA, 98052",
"spans": [
"..."
],
"confidence": 0.744,
"source": "..."
},
"CustomerAddressRecipient": {
"type": "string",
"valueString": "Microsoft Corp",
"spans": [
"..."
],
"confidence": 0.437,
"source": "..."
},
"CustomerId": {
"type": "string",
"valueString": "CID-12345",
"spans": [
"..."
],
"confidence": 0.936,
"source": "..."
},
"CustomerName": {
"type": "string",
"valueString": "MICROSOFT CORPORATION",
"spans": [
"..."
],
"confidence": 0.46,
"source": "..."
},
"CustomerTaxId": {
"type": "string",
"confidence": 0.912
},
"DueDate": {
"type": "date",
"valueDate": "2019-12-15",
"spans": [
"..."
],
"confidence": 0.97,
"source": "..."
},
"InvoiceDate": {
"type": "date",
"valueDate": "2019-11-15",
"spans": [
"..."
],
"confidence": 0.939,
"source": "..."
},
"InvoiceId": {
"type": "string",
"valueString": "INV-100",
"spans": [
"..."
],
"confidence": 0.733,
"source": "..."
},
"LineItems": {
"type": "array",
"valueArray": [
{
"type": "object",
"valueObject": {
"Date": {
"type": "date",
"valueDate": "2021-03-04",
"spans": [
"..."
],
"confidence": 0.894,
"source": "..."
},
"Description": {
"type": "string",
"valueString": "Consulting Services",
"spans": [
"..."
],
"confidence": 0.589,
"source": "..."
},
"ProductCode": {
"type": "string",
"valueString": "A123",
"spans": [
"..."
],
"confidence": 0.879,
"source": "..."
},
"Quantity": {
"type": "number",
"valueNumber": 2,
"spans": [
"..."
],
"confidence": 0.939,
"source": "..."
},
"QuantityUnit": {
"type": "string",
"valueString": "hours",
"spans": [
"..."
],
"confidence": 0.85,
"source": "..."
},
"TaxAmount": {
"type": "object",
"valueObject": {
"Amount": {
"type": "number",
"valueNumber": 6,
"spans": [
"..."
],
"confidence": 0.522,
"source": "..."
},
"CurrencyCode": {
"type": "string",
"valueString": "USD"
}
}
},
"TaxRate": {
"type": "number",
"confidence": 0.915
},
"TotalAmount": {
"type": "object",
"valueObject": {
"Amount": {
"type": "number",
"valueNumber": 60,
"spans": [
"..."
],
"confidence": 0.972,
"source": "..."
},
"CurrencyCode": {
"type": "string",
"valueString": "USD"
}
}
},
"UnitPrice": {
"type": "object",
"valueObject": {
"Amount": {
"type": "number",
"valueNumber": 30,
"spans": [
"..."
],
"confidence": 0.97,
"source": "..."
},
"CurrencyCode": {
"type": "string",
"valueString": "USD"
}
}
}
}
},
"... (2 additional line items)"
]
}
/*additional fields omitted*/
},
"kind": "document",
"startPageNumber": 1,
"endPageNumber": 1,
"unit": "inch",
"pages": [
{
"pageNumber": 1,
"angle": 0,
"width": 8.5,
"height": 11,
"words": [
"... (words omitted for brevity)"
],
"selectionMarks": [],
"lines": [
"... (lines omitted for brevity)"
],
"barcodes": [],
"formulas": []
}
],
"tables": [
"... (tables omitted for brevity)"
],
"keyValuePairs": [
"... (key-value pairs omitted for brevity)"
],
"analyzerId": "prebuilt-invoice",
"mimeType": "application/pdf"
}
]
},
"usage": {
"documentStandardPages": 1,
"contextualizationTokens": 2345,
"tokens": {
"gpt-4.1-mini-input": 1234,
"gpt-4.1-mini-output": 567
}
}
}
Próxima etapa
Agora que você sabe como invocar a operação de análise, saiba mais sobre como criar analisadores personalizados para seu caso de uso.