Usare i modelli di Intelligence per documenti di Azure

Completato

Uso dell'API

Per estrarre i dati del modulo usando un modello personalizzato, usare la analizzare il documento funzione di un SDK supportato o dell'API REST, fornendo l'ID modello (generato durante il training del modello). Questa funzione avvia l'analisi del modulo. a cui puoi quindi richiedere il risultato per ottenere l'analisi.

Codice di esempio per chiamare il modello:

C#

string endpoint = "<endpoint>";
string apiKey = "<apiKey>";
AzureKeyCredential credential = new AzureKeyCredential(apiKey);
DocumentAnalysisClient client = new DocumentAnalysisClient(new Uri(endpoint), credential);

string modelId = "<modelId>";
Uri fileUri = new Uri("<fileUri>");

AnalyzeDocumentOperation operation = await client.AnalyzeDocumentFromUriAsync(WaitUntil.Completed, modelId, fileUri);
AnalyzeResult result = operation.Value;

Pitone

endpoint = "YOUR_DOC_INTELLIGENCE_ENDPOINT"
key = "YOUR_DOC_INTELLIGENCE_KEY"

model_id = "YOUR_CUSTOM_BUILT_MODEL_ID"
formUrl = "YOUR_DOCUMENT"

document_analysis_client = DocumentAnalysisClient(
    endpoint=endpoint, credential=AzureKeyCredential(key)
)

# Make sure your document's type is included in the list of document types the custom model can analyze
task = document_analysis_client.begin_analyze_document_from_url(model_id, formUrl)
result = task.result()

Una risposta JSON riuscita contiene analyzeResult che contiene il contenuto estratto e una matrice di pagine contenenti informazioni sul contenuto del documento.

Esempio analizzare il documento risposta JSON:

{
	"status": "succeeded",
	"createdDateTime": "2023-10-18T23:39:50Z",
	"lastUpdatedDateTime": "2023-10-18T23:39:54Z",
	"analyzeResult": {
		"apiVersion": "2022-08-31",
		"modelId": "DocIntelModel",
		"stringIndexType": "utf16CodeUnit",
		"content": "Purchase Order\nHero Limited\nCompany Phone: 555-348-6512 Website: www.herolimited.com Email: accounts@herolimited.com\nPurchase Order\nDated As: 12/20/2020 Purchase Order #: 948284\nShipped To Vendor Name: Balozi Khamisi Company Name: Higgly Wiggly Books Address: 938 NE Burner Road Boulder City, CO 92848 Phone: 938-294-2949\nShipped From Name: Kidane Tsehaye Company Name: Jupiter Book Supply Address: 383 N Kinnick Road Seattle, WA 38383\nPhone: 932-299-0292\nDetails\nQuantity\nUnit Price\nTotal\nBindings\n20\n1.00\n20.00\nCovers Small\n20\n1.00\n20.00\nFeather Bookmark\n20\n5.00\n100.00\nCopper Swirl Marker\n20\n5.00\n100.00\nSUBTOTAL\n$140.00\nTAX\n$4.00\nTOTAL\n$144.00\nKidane Tsehaye\nManager\nKidane Tsehaye\nAdditional Notes: Do not Jostle Box. Unpack carefully. Enjoy. Jupiter Book Supply will refund you 50% per book if returned within 60 days of reading and offer you 25% off you next total purchase.",
		"pages": [
			{
				"pageNumber": 1,
				"angle": 0,
				"width": 1159,
				"height": 1486,
				"unit": "pixel",
				"words": [
					{
						"content": "Purchase",
						"polygon": [
							89,
							90,
							174,
							91,
							174,
							112,
							88,
							112
						],
						"confidence": 0.996,
						"span": {
							"offset": 0,
							"length": 8
						}
					},
					{
						"content": "Order",
						"polygon": [
							178,
							91,
							237,
							91,
							236,
							113,
							178,
							112
						],
						"confidence": 0.997,
						"span": {
							"offset": 9,
							"length": 5
						}
					},
                    ...

Esplorare la documentazione per gli avvi rapidi del linguaggio supportato

Informazioni sui punteggi di attendibilità

Se i valori di attendibilità del analyzeResult sono bassi, provare a migliorare la qualità dei documenti di input.

Si vuole assicurarsi che il modulo che si sta analizzando abbia un aspetto simile ai moduli nel set di training se i valori di attendibilità sono bassi. Se l'aspetto del modulo varia, è consigliabile eseguire il training di più modelli, con ogni modello incentrato su un formato di modulo.

A seconda del caso d'uso, è possibile che un punteggio di attendibilità pari a 80% o superiore sia accettabile per un'applicazione a basso rischio. Per i casi più sensibili, ad esempio la lettura di cartelle cliniche o rendiconti di fatturazione, è consigliabile un punteggio di 100%.