Python için Azure AI Belge Zekası istemci kitaplığı - sürüm 1.0.0b1
Azure AI Belge Zekası (eski adıyla Form Tanıma), belgelerinizdeki metinleri ve yapılandırılmış verileri analiz etmek için makine öğrenmesini kullanan bir bulut hizmetidir. Aşağıdaki ana özellikleri içerir:
- Düzen - Belgelerden içerik ve yapıyı (örn. sözcükler, seçim işaretleri, tablolar) ayıklayın.
- Belge - Belgelerden genel düzene ek olarak anahtar-değer çiftlerini analiz edin.
- Okuma - Belgelerden sayfa bilgilerini okuyun.
- Önceden oluşturulmuş - Önceden oluşturulmuş modelleri kullanarak belirli belge türlerinden (örn. makbuzlar, faturalar, kartvizitler, kimlik belgeleri, ABD W-2 vergi belgeleri) ortak alan değerlerini ayıklayın.
- Özel - Belgelerden genel düzene ek olarak uyarlanmış alan değerlerini ayıklamak için kendi verilerinizden özel modeller oluşturun.
- Sınıflandırıcılar - Uygulamanızda işlediğiniz belgeleri doğru bir şekilde algılamak ve tanımlamak için düzen ve dil özelliklerini birleştiren özel sınıflandırma modelleri oluşturun.
- Eklenti özellikleri - Barkodları/QR kodlarını, formülleri, yazı tipini/stilini vb. ayıklayın veya isteğe bağlı parametrelere sahip büyük belgeler için yüksek çözünürlüklü modu etkinleştirin.
Başlarken
Paketi yükleme
python -m pip install azure-ai-documentintelligence
Önkoşullar
- Bu paketi kullanmak için Python 3.7 veya üzeri gereklidir.
- Bu paketi kullanmak için bir Azure aboneliğine ihtiyacınız vardır.
- Mevcut bir Azure AI Belge Zekası örneği.
Bilişsel Hizmetler veya Belge Zekası kaynağı oluşturma
Belge Zekası hem çok hizmetli hem de tek hizmetli erişimi destekler. Tek bir uç nokta/anahtar altında birden çok bilişsel hizmete erişmeyi planlıyorsanız Bilişsel Hizmetler kaynağı oluşturun. Yalnızca Belge Yönetim Bilgileri erişimi için bir Belge Yönetim Bilgileri kaynağı oluşturun. Azure Active Directory kimlik doğrulamasını kullanmayı düşünüyorsanız tek hizmetli bir kaynağa ihtiyacınız olacağını lütfen unutmayın.
Aşağıdakilerden birini kullanarak iki kaynak da oluşturabilirsiniz:
- Seçenek 1: Azure Portal.
- 2. Seçenek: Azure CLI.
Aşağıda, CLI kullanarak Belge Zekası kaynağı oluşturma örneği verilmiştir:
# Create a new resource group to hold the Document Intelligence resource
# if using an existing resource group, skip this step
az group create --name <your-resource-name> --location <location>
# Create the Document Intelligence resource
az cognitiveservices account create \
--name <your-resource-name> \
--resource-group <your-resource-group-name> \
--kind FormRecognizer \
--sku <sku> \
--location <location> \
--yes
Kaynağı oluşturma veya konum ve sku bilgilerini alma hakkında daha fazla bilgi için buraya bakın.
İstemcinin kimliğini doğrulama
Belge Yönetim Bilgileri hizmetiyle etkileşim kurmak için bir istemci örneği oluşturmanız gerekir. İstemci nesnesinin örneğini oluşturmak için bir uç nokta ve kimlik bilgisi gereklidir.
Uç noktayı alma
Azure Portal'ı veya Azure CLI'yı kullanarak Belge Zekası kaynağınızın uç noktasını bulabilirsiniz:
# Get the endpoint for the Document Intelligence resource
az cognitiveservices account show --name "resource-name" --resource-group "resource-group-name" --query "properties.endpoint"
Kimlik doğrulaması için bölgesel uç nokta veya özel bir alt etki alanı kullanılabilir. Bunlar aşağıdaki gibi biçimlendirilir:
Regional endpoint: https://<region>.api.cognitive.microsoft.com/
Custom subdomain: https://<resource-name>.cognitiveservices.azure.com/
Bölgesel uç nokta, bölgedeki her kaynak için aynıdır. Desteklenen bölgesel uç noktaların tam listesine buradan başvurabilirsiniz. Bölgesel uç noktaların AAD kimlik doğrulamayı desteklemediğini lütfen unutmayın.
Öte yandan özel alt etki alanı, Belge Yönetim Bilgileri kaynağına özgü bir addır. Bunlar yalnızca tek hizmetli kaynaklar tarafından kullanılabilir.
API anahtarını alma
API anahtarı Azure Portal'da veya aşağıdaki Azure CLI komutunu çalıştırarak bulunabilir:
az cognitiveservices account keys list --name "<resource-name>" --resource-group "<resource-group-name>"
AzureKeyCredential ile istemci oluşturma
Parametre olarak credential
bir API anahtarı kullanmak için anahtarı dize olarak AzureKeyCredential örneğine geçirin.
from azure.core.credentials import AzureKeyCredential
from azure.ai.documentintelligence import DocumentIntelligenceClient
endpoint = "https://<my-custom-subdomain>.cognitiveservices.azure.com/"
credential = AzureKeyCredential("<api_key>")
document_analysis_client = DocumentIntelligenceClient(endpoint, credential)
Azure Active Directory kimlik bilgileriyle istemci oluşturma
AzureKeyCredential
kimlik doğrulaması bu başlangıç kılavuzundaki örneklerde kullanılır, ancak azure-identity kitaplığını kullanarak Azure Active Directory ile kimlik doğrulaması da yapabilirsiniz.
Bölgesel uç noktaların AAD kimlik doğrulamayı desteklemediğini unutmayın. Bu kimlik doğrulama türünü kullanmak için kaynağınız için özel bir alt etki alanı adı oluşturun.
Aşağıda gösterilen DefaultAzureCredential türünü veya Azure SDK ile sağlanan diğer kimlik bilgileri türlerini kullanmak için lütfen paketi yükleyin azure-identity
:
pip install azure-identity
Ayrıca yeni bir AAD uygulaması kaydetmeniz ve rolü hizmet sorumlunuza atayarak Belge Zekası'na "Cognitive Services User"
erişim vermeniz gerekir.
Tamamlandıktan sonra, AAD uygulamasının istemci kimliği, kiracı kimliği ve istemci gizli dizisi değerlerini ortam değişkenleri olarak ayarlayın: AZURE_CLIENT_ID
, AZURE_TENANT_ID
, AZURE_CLIENT_SECRET
.
"""DefaultAzureCredential will use the values from these environment
variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_CLIENT_SECRET
"""
from azure.ai.documentintelligence import DocumentIntelligenceClient
from azure.identity import DefaultAzureCredential
endpoint = os.environ["DOCUMENTINTELLIGENCE_ENDPOINT"]
credential = DefaultAzureCredential()
document_analysis_client = DocumentIntelligenceClient(endpoint, credential)
Önemli kavramlar
DocumentIntelligenceClient
DocumentIntelligenceClient
API aracılığıyla begin_analyze_document
önceden oluşturulmuş ve özel modelleri kullanarak giriş belgelerini analiz etmek için işlemler sağlar.
model_id
Analiz için modelin türünü seçmek için parametresini kullanın. Desteklenen modellerin tam listesine buradan bakın.
ayrıca DocumentIntelligenceClient
, API aracılığıyla begin_classify_document
belgeleri sınıflandırmaya yönelik işlemler de sağlar.
Özel sınıflandırma modelleri, içindeki belgeleri tanımlamak için giriş dosyasındaki her sayfayı sınıflandırabilir ve ayrıca bir giriş dosyasındaki tek bir belgenin birden çok örneğini veya birden çok belgeyi tanımlayabilir.
Burada DocumentIntelligenceClient kullanılarak gösterilen örnek kod parçacıkları verilmiştir. Desteklenen özellikler, yerel ayarlar ve belge türleri de dahil olmak üzere belgeleri analiz etme hakkında daha fazla bilgiyi hizmet belgelerinde bulabilirsiniz.
DocumentIntelligenceAdministrationClient
DocumentIntelligenceAdministrationClient
şu işlemler için işlemler sağlar:
- Özel belgelerinizi etiketleyerek belirttiğiniz belirli alanları analiz etmek için özel modeller oluşturma. Modelin çözümleyebileceği belge türlerinin yanı sıra her alan için tahmini güveni gösteren bir
DocumentModelDetails
döndürülür. Daha ayrıntılı bir açıklama için hizmet belgelerine bakın. - Mevcut modellerden oluşan bir koleksiyondan oluşturulmuş model oluşturma.
- Hesabınızda oluşturulan modelleri yönetme.
- İşlemleri listeleme veya son 24 saat içinde oluşturulan belirli bir model işlemini alma.
- Özel modeli bir Belge Zekası kaynağından diğerine kopyalama.
- Uygulamanızda işlediğiniz belgeleri sınıflandırmak için özel bir sınıflandırma modeli oluşturun ve yönetin.
Modellerin Document Intelligence Studio gibi bir grafik kullanıcı arabirimi kullanılarak da oluşturulabileceğini lütfen unutmayın.
Burada DocumentIntelligenceAdministrationClient kullanılarak gösterilen örnek kod parçacıkları verilmiştir.
Uzun süre çalışan işlemler
Uzun süre çalışan işlemler, bir işlemi başlatmak için hizmete gönderilen ilk isteklerden oluşan ve ardından işlemin tamamlanıp tamamlanmadığını ve başarılı olup olmadığını belirlemek için hizmeti aralıklarla yoklayarak sonucu almak için gerçekleştirilen işlemlerdir.
Belgeleri, derleme modellerini veya kopyalama/oluşturma modellerini analiz eden yöntemler, uzun süre çalışan işlemler olarak modellenir.
İstemci, veya AsyncLROPoller
döndüren bir begin_<method-name>
LROPoller
yöntemi kullanıma sunar. Çağıranların yönteminden döndürülen poller nesnesini çağırarak result()
işlemin tamamlanmasını beklemesi begin_<method-name>
gerekir.
Örnek kod parçacıkları, aşağıda uzun süre çalışan işlemlerin kullanılmasını göstermek için
Örnekler
Aşağıdaki bölümde, aşağıdakiler de dahil olmak üzere en yaygın Belge Zekası görevlerinden bazılarını kapsayan çeşitli kod parçacıkları sağlanır:
- Düzeni Ayıkla
- Genel Belge Modelini Kullanma
- Önceden Oluşturulmuş Modelleri Kullanma
- Özel Model Oluşturma
- Özel Model Kullanarak Belgeleri Çözümleme
- Modellerinizi Yönetme
- Eklenti özellikleri
Düzeni Ayıkla
Belgelerden, sınırlayıcı bölge koordinatlarıyla birlikte metin, seçim işaretleri, metin stilleri ve tablo yapılarını ayıklayın.
from azure.core.credentials import AzureKeyCredential
from azure.ai.documentintelligence import DocumentIntelligenceClient
endpoint = os.environ["DOCUMENTINTELLIGENCE_ENDPOINT"]
key = os.environ["DOCUMENTINTELLIGENCE_API_KEY"]
document_intelligence_client = DocumentIntelligenceClient(
endpoint=endpoint, credential=AzureKeyCredential(key)
)
with open(path_to_sample_documents, "rb") as f:
poller = document_intelligence_client.begin_analyze_document(
"prebuilt-layout", analyze_request=f, content_type="application/octet-stream"
)
result = poller.result()
for idx, style in enumerate(result.styles):
print(
"Document contains {} content".format(
"handwritten" if style.is_handwritten else "no handwritten"
)
)
for page in result.pages:
print("----Analyzing layout from page #{}----".format(page.page_number))
print(
"Page has width: {} and height: {}, measured with unit: {}".format(
page.width, page.height, page.unit
)
)
for line_idx, line in enumerate(page.lines):
words = line.get_words()
print(
"...Line # {} has word count {} and text '{}' within bounding polygon '{}'".format(
line_idx,
len(words),
line.content,
line.polygon,
)
)
for word in words:
print(
"......Word '{}' has a confidence of {}".format(
word.content, word.confidence
)
)
for selection_mark in page.selection_marks:
print(
"...Selection mark is '{}' within bounding polygon '{}' and has a confidence of {}".format(
selection_mark.state,
selection_mark.polygon,
selection_mark.confidence,
)
)
for table_idx, table in enumerate(result.tables):
print(
"Table # {} has {} rows and {} columns".format(
table_idx, table.row_count, table.column_count
)
)
for region in table.bounding_regions:
print(
"Table # {} location on page: {} is {}".format(
table_idx,
region.page_number,
region.polygon,
)
)
for cell in table.cells:
print(
"...Cell[{}][{}] has content '{}'".format(
cell.row_index,
cell.column_index,
cell.content,
)
)
for region in cell.bounding_regions:
print(
"...content on page {} is within bounding polygon '{}'".format(
region.page_number,
region.polygon,
)
)
print("----------------------------------------")
Önceden Oluşturulmuş Modelleri Kullanma
Belge Yönetim Bilgileri hizmeti tarafından sağlanan önceden oluşturulmuş modelleri kullanarak belirli belge türlerinden makbuzlar, faturalar, kartvizitler, kimlik belgeleri ve ABD W-2 vergi belgeleri gibi alanları ayıklayın.
Örneğin, bir satış makbuzundaki alanları analiz etmek için yöntemine begin_analyze_document
geçirerek model_id="prebuilt-receipt"
sağlanan önceden oluşturulmuş makbuz modelini kullanın:
from azure.core.credentials import AzureKeyCredential
from azure.ai.documentintelligence import DocumentIntelligenceClient
endpoint = os.environ["DOCUMENTINTELLIGENCE_ENDPOINT"]
key = os.environ["DOCUMENTINTELLIGENCE_API_KEY"]
document_analysis_client = DocumentIntelligenceClient(endpoint=endpoint, credential=AzureKeyCredential(key))
with open(path_to_sample_documents, "rb") as f:
poller = document_analysis_client.begin_analyze_document(
"prebuilt-receipt", analyze_request=f, locale="en-US", content_type="application/octet-stream"
)
receipts = poller.result()
for idx, receipt in enumerate(receipts.documents):
print(f"--------Analysis of receipt #{idx + 1}--------")
print(f"Receipt type: {receipt.doc_type if receipt.doc_type else 'N/A'}")
merchant_name = receipt.fields.get("MerchantName")
if merchant_name:
print(f"Merchant Name: {merchant_name.get('valueString')} has confidence: " f"{merchant_name.confidence}")
transaction_date = receipt.fields.get("TransactionDate")
if transaction_date:
print(
f"Transaction Date: {transaction_date.get('valueDate')} has confidence: "
f"{transaction_date.confidence}"
)
if receipt.fields.get("Items"):
print("Receipt items:")
for idx, item in enumerate(receipt.fields.get("Items").get("valueArray")):
print(f"...Item #{idx + 1}")
item_description = item.get("valueObject").get("Description")
if item_description:
print(
f"......Item Description: {item_description.get('valueString')} has confidence: "
f"{item_description.confidence}"
)
item_quantity = item.get("valueObject").get("Quantity")
if item_quantity:
print(
f"......Item Quantity: {item_quantity.get('valueString')} has confidence: "
f"{item_quantity.confidence}"
)
item_total_price = item.get("valueObject").get("TotalPrice")
if item_total_price:
print(
f"......Total Item Price: {format_price(item_total_price.get('valueCurrency'))} has confidence: "
f"{item_total_price.confidence}"
)
subtotal = receipt.fields.get("Subtotal")
if subtotal:
print(f"Subtotal: {format_price(subtotal.get('valueCurrency'))} has confidence: {subtotal.confidence}")
tax = receipt.fields.get("TotalTax")
if tax:
print(f"Total tax: {format_price(tax.get('valueCurrency'))} has confidence: {tax.confidence}")
tip = receipt.fields.get("Tip")
if tip:
print(f"Tip: {format_price(tip.get('valueCurrency'))} has confidence: {tip.confidence}")
total = receipt.fields.get("Total")
if total:
print(f"Total: {format_price(total.get('valueCurrency'))} has confidence: {total.confidence}")
print("--------------------------------------")
Faturalarla sınırlı değilsin! Aralarından seçim yapabileceğiniz birkaç önceden oluşturulmuş model vardır ve bunların her birinin kendi desteklenen alanları vardır. Burada desteklenen diğer önceden oluşturulmuş modelleri görebilirsiniz.
Özel Model Oluşturma
Kendi belge türünüzde özel bir model oluşturun. Elde edilen model, eğitildiği belge türlerindeki değerleri analiz etmek için kullanılabilir. Eğitim belgelerini depoladığınız Azure Depolama Blobu kapsayıcınıza bir kapsayıcı SAS URL'si sağlayın.
Kapsayıcıyı ve gerekli dosya yapısını ayarlama hakkında daha fazla bilgi hizmet belgelerinde bulunabilir.
from azure.ai.formrecognizer import (
DocumentIntelligenceAdministrationClient,
ModelBuildMode,
)
from azure.core.credentials import AzureKeyCredential
endpoint = os.environ["DOCUMENTINTELLIGENCE_ENDPOINT"]
key = os.environ["DOCUMENTINTELLIGENCE_API_KEY"]
container_sas_url = os.environ["CONTAINER_SAS_URL"]
document_model_admin_client = DocumentIntelligenceAdministrationClient(
endpoint, AzureKeyCredential(key)
)
poller = document_model_admin_client.begin_build_document_model(
ModelBuildMode.TEMPLATE,
blob_container_url=container_sas_url,
description="my model description",
)
model = poller.result()
print(f"Model ID: {model.model_id}")
print(f"Description: {model.description}")
print(f"Model created on: {model.created_on}")
print(f"Model expires on: {model.expires_on}")
print("Doc types the model can recognize:")
for name, doc_type in model.doc_types.items():
print(
f"Doc Type: '{name}' built with '{doc_type.build_mode}' mode which has the following fields:"
)
for field_name, field in doc_type.field_schema.items():
print(
f"Field: '{field_name}' has type '{field['type']}' and confidence score "
f"{doc_type.field_confidence[field_name]}"
)
Özel Model Kullanarak Belgeleri Çözümleme
Belge alanlarını, tabloları, seçim işaretlerini ve daha fazlasını analiz edin. Bu modeller kendi verilerinizle eğitildiğinden belgelerinize göre uyarlanır. En iyi sonuçları elde etmek için yalnızca özel modelin oluşturulduğu belge türündeki belgeleri analiz etmelisiniz.
from azure.core.credentials import AzureKeyCredential
from azure.ai.documentintelligence import DocumentIntelligenceClient
endpoint = os.environ["DOCUMENTINTELLIGENCE_ENDPOINT"]
key = os.environ["DOCUMENTINTELLIGENCE_API_KEY"]
model_id = os.getenv("CUSTOM_BUILT_MODEL_ID", custom_model_id)
document_analysis_client = DocumentIntelligenceClient(endpoint=endpoint, credential=AzureKeyCredential(key))
# Make sure your document's type is included in the list of document types the custom model can analyze
with open(path_to_sample_documents, "rb") as f:
poller = document_analysis_client.begin_analyze_document(
model_id=model_id, analyze_request=f, content_type="application/octet-stream"
)
result = poller.result()
for idx, document in enumerate(result.documents):
print(f"--------Analyzing document #{idx + 1}--------")
print(f"Document has type {document.doc_type}")
print(f"Document has document type confidence {document.confidence}")
print(f"Document was analyzed with model with ID {result.model_id}")
for name, field in document.fields.items():
field_value = field.get("valueString") if field.get("valueString") else field.content
print(
f"......found field of type '{field.type}' with value '{field_value}' and with confidence {field.confidence}"
)
# iterate over tables, lines, and selection marks on each page
for page in result.pages:
print(f"\nLines found on page {page.page_number}")
for line in page.lines:
print(f"...Line '{line.content}'")
for word in page.words:
print(f"...Word '{word.content}' has a confidence of {word.confidence}")
if page.selection_marks:
print(f"\nSelection marks found on page {page.page_number}")
for selection_mark in page.selection_marks:
print(
f"...Selection mark is '{selection_mark.state}' and has a confidence of {selection_mark.confidence}"
)
for i, table in enumerate(result.tables):
print(f"\nTable {i + 1} can be found on page:")
for region in table.bounding_regions:
print(f"...{region.page_number}")
for cell in table.cells:
print(f"...Cell[{cell.row_index}][{cell.column_index}] has text '{cell.content}'")
print("-----------------------------------")
Ayrıca, belge URL'si yöntemi kullanılarak begin_analyze_document
belgeleri analiz etmek için de kullanılabilir.
from azure.core.credentials import AzureKeyCredential
from azure.ai.documentintelligence import DocumentIntelligenceClient
from azure.ai.documentintelligence.models import AnalyzeDocumentRequest
endpoint = os.environ["DOCUMENTINTELLIGENCE_ENDPOINT"]
key = os.environ["DOCUMENTINTELLIGENCE_API_KEY"]
document_analysis_client = DocumentIntelligenceClient(endpoint=endpoint, credential=AzureKeyCredential(key))
url = "https://raw.githubusercontent.com/Azure/azure-sdk-for-python/main/sdk/documentintelligence/azure-ai-documentintelligence/tests/sample_forms/receipt/contoso-receipt.png"
poller = document_analysis_client.begin_analyze_document("prebuilt-receipt", AnalyzeDocumentRequest(url_source=url))
receipts = poller.result()
Modellerinizi Yönetme
Hesabınıza bağlı özel modelleri yönetin.
from azure.ai.documentintelligence import DocumentIntelligenceAdministrationClient
from azure.core.credentials import AzureKeyCredential
from azure.core.exceptions import ResourceNotFoundError
endpoint = "https://<my-custom-subdomain>.cognitiveservices.azure.com/"
credential = AzureKeyCredential("<api_key>")
document_model_admin_client = DocumentIntelligenceAdministrationClient(endpoint, credential)
account_details = document_model_admin_client.get_resource_info()
print("Our account has {} custom models, and we can have at most {} custom models".format(
account_details.custom_document_models.count, account_details.custom_document_models.limit
))
# Here we get a paged list of all of our models
models = document_model_admin_client.list_models()
print("We have models with the following ids: {}".format(
", ".join([m.model_id for m in models])
))
# Replace with the custom model ID from the "Build a model" sample
model_id = "<model_id from the Build a Model sample>"
custom_model = document_model_admin_client.get_model(model_id=model_id)
print("Model ID: {}".format(custom_model.model_id))
print("Description: {}".format(custom_model.description))
print("Model created on: {}\n".format(custom_model.created_on))
# Finally, we will delete this model by ID
document_model_admin_client.delete_model(model_id=custom_model.model_id)
try:
document_model_admin_client.get_model(model_id=custom_model.model_id)
except ResourceNotFoundError:
print("Successfully deleted model with id {}".format(custom_model.model_id))
Eklenti Özellikleri
Belge Zekası daha gelişmiş analiz özelliklerini destekler. Bu isteğe bağlı özellikler, belge ayıklama senaryosuna bağlı olarak etkinleştirilebilir ve devre dışı bırakılabilir.
Aşağıdaki eklenti özellikleri 2023-07-31 (GA) ve sonraki sürümlerde kullanılabilir:
Bazı eklenti özelliklerinin ek ücrete tabi olacağını unutmayın. Bkz. fiyatlandırma: https://azure.microsoft.com/pricing/details/ai-document-intelligence/.
Sorun giderme
Genel
Belge Zekası istemci kitaplığı , Azure Core'da tanımlanan özel durumları tetikler. Belge Yönetim Bilgileri hizmeti tarafından tetiklenen hata kodları ve iletiler hizmet belgelerinde bulunabilir.
Günlüğe Kaydetme
Bu kitaplık, günlüğe kaydetme için standart günlük kitaplığını kullanır.
HTTP oturumlarıyla ilgili temel bilgiler (URL'ler, üst bilgiler vb.) düzeyinde günlüğe kaydedilir INFO
.
İstek/yanıt gövdeleri ve işlenmemiş üst bilgiler de dahil olmak üzere ayrıntılı DEBUG
düzey günlük kaydı, istemcide veya anahtar sözcük bağımsız değişkeniyle logging_enable
işlem başına etkinleştirilebilir.
Burada örneklerin bulunduğu tam SDK günlük belgelerine bakın.
İsteğe Bağlı Yapılandırma
İsteğe bağlı anahtar sözcük bağımsız değişkenleri istemcide ve işlem düzeyinde geçirilebilir. Azure-core başvuru belgelerinde yeniden denemeler, günlüğe kaydetme, aktarım protokolleri ve daha fazlası için kullanılabilir yapılandırmalar açıklanmaktadır.
Sonraki adımlar
Daha fazla örnek kod
Belge Zekası Python API'sinde kullanılan yaygın desenleri gösteren çeşitli kod parçacıkları için bkz. Örnek BENİOKU .
Diğer belgeler
Azure AI Belge Zekası hakkında daha kapsamlı belgeler için docs.microsoft.com belge zekası belgelerine bakın.
Katkıda bulunma
Bu proje, katkı ve önerilere açıktır. Çoğu durumda, sağladığınız katkıyı kullanmamız için bize hak tanıma hakkına sahip olduğunuzu ve bu hakkı bize tanıdığınızı bildiren bir Katkıda Bulunan Lisans Sözleşmesi’ni (CLA) kabul etmeniz gerekir. Ayrıntılar için bkz. https://cla.microsoft.com.
Bir çekme isteği gönderdiğinizde, CLA robotu bir CLA sağlamanız gerekip gerekmediğini otomatik olarak belirler ve çekme isteğini uygun şekilde donatır (örn. etiket, açıklama). Robot tarafından sağlanan yönergeleri izlemeniz yeterlidir. Bu işlemi, CLA’mızı kullanarak tüm depolarda yalnızca bir kere yapmanız gerekir.
Bu proje Microsoft Open Source Code of Conduct (Microsoft Açık Kaynak Kullanım Kuralları) belgesinde listelenen kurallara uygundur. Daha fazla bilgi için Kullanım Kuralları hakkında SSS bölümüne bakın veya başka soru ya da görüşleriniz olursa opencode@microsoft.com ile iletişime geçin.
Azure SDK for Python