azure-ai-document-intelligence-dotnet
Extrai texto, tabelas e dados de documentos. Usa modelos pré-definidos ou personalizados para entender o conteúdo de arquivos.
O que ela faz
Esta ferramenta ajuda a extrair informações importantes de documentos como faturas, recibos e cartões de identificação. Ela pode ler textos, tabelas e dados estruturados.
Quando usar
- ✓Para organizar faturas e recibos automaticamente.
- ✓Para extrair dados de cartões de identificação.
- ✓Para ler o texto e as tabelas de qualquer documento.
Exemplo do que pedir para a IA
“Extraia o nome do fornecedor e o total da fatura do documento em PDF.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Você fornece um documento (como um PDF ou imagem) e escolhe um modelo pré-definido (como 'fatura' ou 'recibo'). A ferramenta então lê o documento e retorna as informações que você pediu.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add sickn33/agentic-awesome-skills --skill azure-ai-document-intelligence-dotnetOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/azure-ai-document-intelligence-dotnet/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Azure.AI.DocumentIntelligence (.NET)
Extraia texto, tabelas e dados estruturados de documentos usando modelos pré-criados e personalizados.
Instalação
dotnet add package Azure.AI.DocumentIntelligence
dotnet add package Azure.Identity
Versão Atual: v1.0.0 (GA)
Variáveis de Ambiente
DOCUMENT_INTELLIGENCE_ENDPOINT=https://<resource-name>.cognitiveservices.azure.com/
DOCUMENT_INTELLIGENCE_API_KEY=<your-api-key>
BLOB_CONTAINER_SAS_URL=https://<storage>.blob.core.windows.net/<container>?<sas-token>
Autenticação
Microsoft Entra ID (Recomendado)
using Azure.Identity;
using Azure.AI.DocumentIntelligence;
string endpoint = Environment.GetEnvironmentVariable("DOCUMENT_INTELLIGENCE_ENDPOINT");
var credential = new DefaultAzureCredential();
var client = new DocumentIntelligenceClient(new Uri(endpoint), credential);
Observação: O Entra ID requer um subdomínio personalizado (por exemplo,
https://<resource-name>.cognitiveservices.azure.com/), não um endpoint regional.
Chave de API
string endpoint = Environment.GetEnvironmentVariable("DOCUMENT_INTELLIGENCE_ENDPOINT");
string apiKey = Environment.GetEnvironmentVariable("DOCUMENT_INTELLIGENCE_API_KEY");
var client = new DocumentIntelligenceClient(new Uri(endpoint), new AzureKeyCredential(apiKey));
Tipos de Cliente
| Cliente | Propósito |
|---|---|
DocumentIntelligenceClient |
Analisar documentos, classificar documentos |
DocumentIntelligenceAdministrationClient |
Criar/gerenciar modelos e classificadores personalizados |
Modelos Pré-criados
| ID do Modelo | Descrição |
|---|---|
prebuilt-read |
Extrair texto, idiomas, escrita à mão |
prebuilt-layout |
Extrair texto, tabelas, marcas de seleção, estrutura |
prebuilt-invoice |
Extrair campos de faturas (fornecedor, itens, totais) |
prebuilt-receipt |
Extrair campos de recibos (comerciante, itens, total) |
prebuilt-idDocument |
Extrair campos de documentos de identidade (nome, data de nascimento, endereço) |
prebuilt-businessCard |
Extrair campos de cartões de visita |
prebuilt-tax.us.w2 |
Extrair campos do formulário fiscal W-2 |
prebuilt-healthInsuranceCard.us |
Extrair campos de cartões de seguro saúde |
Fluxos de Trabalho Principais
1. Analisar Fatura
using Azure.AI.DocumentIntelligence;
Uri invoiceUri = new Uri("https://example.com/invoice.pdf");
Operation<AnalyzeResult> operation = await client.AnalyzeDocumentAsync(
WaitUntil.Completed,
"prebuilt-invoice",
invoiceUri);
AnalyzeResult result = operation.Value;
foreach (AnalyzedDocument document in result.Documents)
{
if (document.Fields.TryGetValue("VendorName", out DocumentField vendorNameField)
&& vendorNameField.FieldType == DocumentFieldType.String)
{
string vendorName = vendorNameField.ValueString;
Console.WriteLine($"Vendor Name: '{vendorName}', confidence: {vendorNameField.Confidence}");
}
if (document.Fields.TryGetValue("InvoiceTotal", out DocumentField invoiceTotalField)
&& invoiceTotalField.FieldType == DocumentFieldType.Currency)
{
CurrencyValue invoiceTotal = invoiceTotalField.ValueCurrency;
Console.WriteLine($"Invoice Total: '{invoiceTotal.CurrencySymbol}{invoiceTotal.Amount}'");
}
// Extract line items
if (document.Fields.TryGetValue("Items", out DocumentField itemsField)
&& itemsField.FieldType == DocumentFieldType.List)
{
foreach (DocumentField item in itemsField.ValueList)
{
var itemFields = item.ValueDictionary;
if (itemFields.TryGetValue("Description", out DocumentField descField))
Console.WriteLine($" Item: {descField.ValueString}");
}
}
}
2. Extrair Layout (Texto, Tabelas, Estrutura)
Uri fileUri = new Uri("https://example.com/document.pdf");
Operation<AnalyzeResult> operation = await client.AnalyzeDocumentAsync(
WaitUntil.Completed,
"prebuilt-layout",
fileUri);
AnalyzeResult result = operation.Value;
// Extrair texto por página
foreach (DocumentPage page in result.Pages)
{
Console.WriteLine($"Página {page.PageNumber}: {page.Lines.Count} linhas, {page.Words.Count} palavras");
foreach (DocumentLine line in page.Lines)
{
Console.WriteLine($" Linha: '{line.Content}'");
}
}
// Extrair tabelas
foreach (DocumentTable table in result.Tables)
{
Console.WriteLine($"Tabela: {table.RowCount} linhas x {table.ColumnCount} colunas");
foreach (DocumentTableCell cell in table.Cells)
{
…
Perguntas frequentes
O que são 'modelos pré-definidos'?
São modelos que a ferramenta já entende, treinados para reconhecer tipos específicos de documentos como faturas ou recibos.
Posso usar meus próprios documentos para treinar a ferramenta?
Sim, você pode criar modelos personalizados para documentos que não são cobertos pelos modelos pré-definidos.
Onde as informações extraídas são salvas?
A ferramenta extrai as informações e as retorna para você usar em seu programa. Como elas são salvas depende de como você configura seu código.
Detalhes
Descrição original do autor
Azure AI Document Intelligence SDK for .NET. Extract text, tables, and structured data from documents using prebuilt and custom models.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #2270
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
agent-architecture-audit
Faz seu agente verificar se tudo está funcionando corretamente. Ele encontra e conserta problemas em sistemas de IA, garantindo que funcionem como esperado.
affaan-m/ECC
agent-eval
Ajuda seu agente a comparar diferentes ferramentas de programação de IA. Ele mede qual é mais rápido, barato e confiável para realizar tarefas específicas.
affaan-m/ECC
agent-harness-construction
Faz seu agente entender melhor como realizar tarefas. Ele otimiza as ferramentas e instruções que o agente usa para aumentar suas chances de sucesso.
affaan-m/ECC