TextAnalyticsClient Kelas
API layanan Bahasa adalah serangkaian keterampilan pemrosesan bahasa alami (NLP) yang dibangun dengan algoritma pembelajaran mesin Microsoft terbaik di kelasnya. API dapat digunakan untuk menganalisis teks yang tidak terstruktur untuk tugas seperti analisis sentimen, ekstraksi frasa kunci, pengenalan entitas, dan deteksi bahasa, dan banyak lagi.
Dokumentasi lebih lanjut dapat ditemukan di https://docs.microsoft.com/azure/cognitive-services/language-service/overview
- Warisan
-
azure.ai.textanalytics._base_client.TextAnalyticsClientBaseTextAnalyticsClient
Konstruktor
TextAnalyticsClient(endpoint: str, credential: AzureKeyCredential | TokenCredential, *, default_language: str | None = None, default_country_hint: str | None = None, api_version: str | TextAnalyticsApiVersion | None = None, **kwargs: Any)
Parameter
- endpoint
- str
Titik akhir sumber daya Cognitive Services atau Bahasa yang didukung (protokol dan nama host, misalnya: 'https://.cognitiveservices.azure.com').
- credential
- AzureKeyCredential atau TokenCredential
Kredensial yang diperlukan agar klien terhubung ke Azure. Ini bisa menjadi instans AzureKeyCredential jika menggunakan kunci Cognitive Services/Language API atau kredensial token dari identity.
- default_country_hint
- str
Mengatur country_hint default yang akan digunakan untuk semua operasi. Default ke "US". Jika Anda tidak ingin menggunakan petunjuk negara, berikan string "none".
- default_language
- str
Mengatur bahasa default yang akan digunakan untuk semua operasi. Default ke "en".
- api_version
- str atau TextAnalyticsApiVersion
Versi API layanan yang akan digunakan untuk permintaan. Ini default ke versi layanan terbaru. Pengaturan ke versi yang lebih lama dapat mengakibatkan berkurangnya kompatibilitas fitur.
Contoh
Membuat TextAnalyticsClient dengan titik akhir dan kunci API.
import os
from azure.core.credentials import AzureKeyCredential
from azure.ai.textanalytics import TextAnalyticsClient
endpoint = os.environ["AZURE_LANGUAGE_ENDPOINT"]
key = os.environ["AZURE_LANGUAGE_KEY"]
text_analytics_client = TextAnalyticsClient(endpoint, AzureKeyCredential(key))
Membuat TextAnalyticsClient dengan kredensial titik akhir dan token dari Azure Active Directory.
import os
from azure.ai.textanalytics import TextAnalyticsClient
from azure.identity import DefaultAzureCredential
endpoint = os.environ["AZURE_LANGUAGE_ENDPOINT"]
credential = DefaultAzureCredential()
text_analytics_client = TextAnalyticsClient(endpoint, credential=credential)
Metode
analyze_sentiment |
Menganalisis sentimen untuk batch dokumen. Aktifkan penggalian opini dengan show_opinion_mining. Mengembalikan prediksi sentimen, serta skor sentimen untuk setiap kelas sentimen (Positif, Negatif, dan Netral) untuk dokumen dan setiap kalimat di dalamnya. Lihat https://aka.ms/azsdk/textanalytics/data-limits untuk batas data layanan. Baru dalam versi v3.1: Argumen kata kunci show_opinion_mining, disable_service_logs, dan string_index_type . |
begin_abstract_summary |
Mulai operasi ringkasan abstraktif yang berjalan lama. Untuk diskusi konseptual ringkasan abstraktif, lihat dokumentasi layanan: https://learn.microsoft.com/azure/cognitive-services/language-service/summarization/overview Baru dalam versi 2023-04-01: Metode klien begin_abstract_summary . |
begin_analyze_actions |
Mulai operasi jangka panjang untuk melakukan berbagai tindakan analisis teks melalui batch dokumen. Kami sarankan Anda menggunakan fungsi ini jika Anda ingin menganalisis dokumen yang lebih besar, dan / atau menggabungkan beberapa tindakan analisis teks ke dalam satu panggilan. Jika tidak, kami sarankan Anda menggunakan titik akhir tertentu tindakan, misalnya analyze_sentiment. Catatan Lihat dokumentasi layanan untuk dukungan regional fitur tindakan kustom: Baru dalam versi v3.1: Metode klien begin_analyze_actions . Baru dalam versi 2022-05-01: Opsi input RecognizeCustomEntitiesAction, SingleLabelClassifyAction, MultiLabelClassifyAction, dan AnalyzeHealthcareEntitiesAction dan objek hasil RecognizeCustomEntitiesResult, ClassifyDocumentResult, dan AnalyzeHealthcareEntitiesResult yang sesuai Baru dalam versi 2023-04-01: Opsi input ExtractiveSummaryAction dan AbstractiveSummaryAction dan objek hasil ExtractiveSummaryResult dan AbstractiveSummaryResult yang sesuai. |
begin_analyze_healthcare_entities |
Analisis entitas layanan kesehatan dan identifikasi hubungan antara entitas ini dalam batch dokumen. Entitas dikaitkan dengan referensi yang dapat ditemukan di pangkalan pengetahuan yang ada, seperti UMLS, CHV, MSH, dll. Kami juga mengekstrak hubungan yang ditemukan antara entitas, misalnya dalam "Subjek mengambil 100 mg ibuprofen", kami akan mengekstrak hubungan antara dosis "100 mg" dan obat "ibuprofen". Baru dalam versi v3.1: Metode klien begin_analyze_healthcare_entities . Baru dalam versi 2022-05-01: Argumen kata kunci display_name . |
begin_extract_summary |
Mulai operasi ringkasan ekstraktif yang berjalan lama. Untuk diskusi konseptual ringkasan ekstraktif, lihat dokumentasi layanan: https://learn.microsoft.com/azure/cognitive-services/language-service/summarization/overview Baru dalam versi 2023-04-01: Metode klien begin_extract_summary . |
begin_multi_label_classify |
Mulai operasi klasifikasi multi label kustom yang berjalan lama. Untuk informasi tentang dukungan regional fitur kustom dan cara melatih model untuk mengklasifikasikan dokumen Anda, lihat https://aka.ms/azsdk/textanalytics/customfunctionalities Baru dalam versi 2022-05-01: Metode klien begin_multi_label_classify . |
begin_recognize_custom_entities |
Mulai operasi pengenalan entitas bernama kustom yang berjalan lama. Untuk informasi tentang dukungan regional fitur kustom dan cara melatih model untuk mengenali entitas kustom, lihat https://aka.ms/azsdk/textanalytics/customentityrecognition Baru dalam versi 2022-05-01: Metode klien begin_recognize_custom_entities . |
begin_single_label_classify |
Mulai operasi klasifikasi label tunggal kustom yang berjalan lama. Untuk informasi tentang dukungan regional fitur kustom dan cara melatih model untuk mengklasifikasikan dokumen Anda, lihat https://aka.ms/azsdk/textanalytics/customfunctionalities Baru dalam versi 2022-05-01: Metode klien begin_single_label_classify . |
close |
Soket tutup yang dibuka oleh klien. Memanggil metode ini tidak perlu saat menggunakan klien sebagai manajer konteks. |
detect_language |
Mendeteksi bahasa untuk batch dokumen. Mengembalikan bahasa yang terdeteksi dan skor numerik antara nol dan satu. Skor mendekati satu menunjukkan kepastian 100% bahwa bahasa yang diidentifikasi benar. Lihat https://aka.ms/talangs untuk daftar bahasa yang diaktifkan. Lihat https://aka.ms/azsdk/textanalytics/data-limits untuk batas data layanan. Baru dalam versi v3.1: Argumen kata kunci disable_service_logs . |
extract_key_phrases |
Ekstrak frasa kunci dari batch dokumen. Mengembalikan daftar string yang menunjukkan frasa kunci dalam teks input. Misalnya, untuk teks input "Makanannya lezat dan ada staf yang luar biasa", API mengembalikan poin pembicaraan utama: "makanan" dan "staf yang luar biasa" Lihat https://aka.ms/azsdk/textanalytics/data-limits untuk batas data layanan. Baru dalam versi v3.1: Argumen kata kunci disable_service_logs . |
recognize_entities |
Mengenali entitas untuk batch dokumen. Mengidentifikasi dan mengategorikan entitas dalam teks Anda sebagai orang, tempat, organisasi, tanggal/waktu, jumlah, persentase, mata uang, dan banyak lagi. Untuk daftar jenis entitas yang didukung, periksa: https://aka.ms/taner Lihat https://aka.ms/azsdk/textanalytics/data-limits untuk batas data layanan. Baru dalam versi v3.1: Argumen kata kunci disable_service_logs dan string_index_type . |
recognize_linked_entities |
Kenali entitas tertaut dari Pangkalan Pengetahuan terkenal untuk batch dokumen. Mengidentifikasi dan membedakan identitas setiap entitas yang ditemukan dalam teks (misalnya, menentukan apakah terjadinya kata Mars mengacu pada planet, atau dewa perang Romawi). Entitas yang dikenali dikaitkan dengan URL ke Pangkalan Pengetahuan terkenal, seperti Wikipedia. Lihat https://aka.ms/azsdk/textanalytics/data-limits untuk batas data layanan. Baru dalam versi v3.1: Argumen kata kunci disable_service_logs dan string_index_type . |
recognize_pii_entities |
Mengenali entitas yang berisi informasi pribadi untuk batch dokumen. Mengembalikan daftar entitas informasi pribadi ("SSN", "Rekening Bank", dll) dalam dokumen. Untuk daftar jenis entitas yang didukung, periksa https://aka.ms/azsdk/language/pii Lihat https://aka.ms/azsdk/textanalytics/data-limits untuk batas data layanan. Baru dalam versi v3.1: Metode klien recognize_pii_entities . |
analyze_sentiment
Menganalisis sentimen untuk batch dokumen. Aktifkan penggalian opini dengan show_opinion_mining.
Mengembalikan prediksi sentimen, serta skor sentimen untuk setiap kelas sentimen (Positif, Negatif, dan Netral) untuk dokumen dan setiap kalimat di dalamnya.
Lihat https://aka.ms/azsdk/textanalytics/data-limits untuk batas data layanan.
Baru dalam versi v3.1: Argumen kata kunci show_opinion_mining, disable_service_logs, dan string_index_type .
analyze_sentiment(documents: List[str] | List[TextDocumentInput] | List[Dict[str, str]], *, disable_service_logs: bool | None = None, language: str | None = None, model_version: str | None = None, show_opinion_mining: bool | None = None, show_stats: bool | None = None, string_index_type: str | None = None, **kwargs: Any) -> List[AnalyzeSentimentResult | DocumentError]
Parameter
Kumpulan dokumen yang akan diproses sebagai bagian dari batch ini. Jika Anda ingin menentukan ID dan bahasa berdasarkan per item, Anda harus menggunakan sebagai input daftar[TextDocumentInput] atau daftar representasi dict , TextDocumentInputseperti {"id": "1", "language": "en", "text": "hello world"}.
- show_opinion_mining
- bool
Apakah akan menambang pendapat kalimat dan melakukan analisis yang lebih terperinci seputar aspek produk atau layanan (juga dikenal sebagai analisis sentimen berbasis aspek). Jika diatur ke true, objek yang dikembalikan SentenceSentiment akan memiliki properti mined_opinions yang berisi hasil analisis ini. Hanya tersedia untuk API versi v3.1 dan yang lebih baru.
- language
- str
Representasi bahasa 2 huruf ISO 639-1 untuk seluruh batch. Misalnya, gunakan "en" untuk bahasa Inggris; "es" untuk bahasa Spanyol dll. Jika tidak diatur, menggunakan "en" untuk bahasa Inggris sebagai default. Bahasa per dokumen akan lebih diutamakan daripada seluruh bahasa batch. Lihat https://aka.ms/talangs untuk bahasa yang didukung dalam LANGUAGE API.
- model_version
- str
Versi model yang digunakan untuk analisis, misalnya "terbaru". Jika versi model tidak ditentukan, API akan default ke versi terbaru non-pratinjau. Lihat di sini untuk informasi selengkapnya: https://aka.ms/text-analytics-model-versioning
- show_stats
- bool
Jika diatur ke true, respons akan berisi statistik tingkat dokumen di bidang statistik respons tingkat dokumen.
- string_index_type
- str
Menentukan metode yang digunakan untuk menginterpretasikan offset string. UnicodeCodePoint, pengodean Python, adalah defaultnya. Untuk mengambil alih default Python, Anda juga dapat meneruskan Utf16CodeUnit atau TextElement_v8. Untuk informasi tambahan lihat https://aka.ms/text-analytics-offsets
- disable_service_logs
- bool
Jika diatur ke true, Anda memilih untuk tidak memasukkan input teks anda ke sisi layanan untuk pemecahan masalah. Secara default, Layanan bahasa mencatat teks input Anda selama 48 jam, hanya untuk memungkinkan pemecahan masalah dalam memberi Anda fungsi pemrosesan bahasa alami layanan. Mengatur parameter ini ke true, menonaktifkan pengelogan input dan dapat membatasi kemampuan kami untuk memulihkan masalah yang terjadi. Silakan lihat Catatan Kepatuhan dan Privasi Cognitive Services di https://aka.ms/cs-compliance untuk detail tambahan, dan prinsip Microsoft Responsible AI di https://www.microsoft.com/ai/responsible-ai.
Mengembalikan
Daftar AnalyzeSentimentResult gabungan dan DocumentError dalam urutan dokumen asli diteruskan.
Tipe hasil
Pengecualian
Contoh
Menganalisis sentimen dalam batch dokumen.
import os
from azure.core.credentials import AzureKeyCredential
from azure.ai.textanalytics import TextAnalyticsClient
endpoint = os.environ["AZURE_LANGUAGE_ENDPOINT"]
key = os.environ["AZURE_LANGUAGE_KEY"]
text_analytics_client = TextAnalyticsClient(endpoint=endpoint, credential=AzureKeyCredential(key))
documents = [
"""I had the best day of my life. I decided to go sky-diving and it made me appreciate my whole life so much more.
I developed a deep-connection with my instructor as well, and I feel as if I've made a life-long friend in her.""",
"""This was a waste of my time. All of the views on this drop are extremely boring, all I saw was grass. 0/10 would
not recommend to any divers, even first timers.""",
"""This was pretty good! The sights were ok, and I had fun with my instructors! Can't complain too much about my experience""",
"""I only have one word for my experience: WOW!!! I can't believe I have had such a wonderful skydiving company right
in my backyard this whole time! I will definitely be a repeat customer, and I want to take my grandmother skydiving too,
I know she'll love it!"""
]
result = text_analytics_client.analyze_sentiment(documents, show_opinion_mining=True)
docs = [doc for doc in result if not doc.is_error]
print("Let's visualize the sentiment of each of these documents")
for idx, doc in enumerate(docs):
print(f"Document text: {documents[idx]}")
print(f"Overall sentiment: {doc.sentiment}")
begin_abstract_summary
Mulai operasi ringkasan abstraktif yang berjalan lama.
Untuk diskusi konseptual ringkasan abstraktif, lihat dokumentasi layanan: https://learn.microsoft.com/azure/cognitive-services/language-service/summarization/overview
Baru dalam versi 2023-04-01: Metode klien begin_abstract_summary .
begin_abstract_summary(documents: List[str] | List[TextDocumentInput] | List[Dict[str, str]], *, continuation_token: str | None = None, disable_service_logs: bool | None = None, display_name: str | None = None, language: str | None = None, polling_interval: int | None = None, show_stats: bool | None = None, model_version: str | None = None, string_index_type: str | None = None, sentence_count: int | None = None, **kwargs: Any) -> TextAnalysisLROPoller[ItemPaged[AbstractiveSummaryResult | DocumentError]]
Parameter
Kumpulan dokumen yang akan diproses sebagai bagian dari batch ini. Jika Anda ingin menentukan ID dan bahasa berdasarkan per item, Anda harus menggunakan sebagai input daftar[TextDocumentInput] atau daftar representasi dict , TextDocumentInputseperti {"id": "1", "language": "en", "text": "hello world"}.
- language
- str
Representasi bahasa 2 huruf ISO 639-1 untuk seluruh batch. Misalnya, gunakan "en" untuk bahasa Inggris; "es" untuk bahasa Spanyol dll. Jika tidak diatur, menggunakan "en" untuk bahasa Inggris sebagai default. Bahasa per dokumen akan lebih diutamakan daripada seluruh bahasa batch. Lihat https://aka.ms/talangs untuk bahasa yang didukung dalam LANGUAGE API.
- show_stats
- bool
Jika diatur ke true, respons akan berisi statistik tingkat dokumen.
Versi model yang digunakan untuk analisis, misalnya "terbaru". Jika versi model tidak ditentukan, API akan default ke versi terbaru non-pratinjau. Lihat di sini untuk informasi selengkapnya: https://aka.ms/text-analytics-model-versioning
Menentukan metode yang digunakan untuk menginterpretasikan offset string.
- disable_service_logs
- bool
Jika diatur ke true, Anda memilih untuk tidak memasukkan input teks anda ke sisi layanan untuk pemecahan masalah. Secara default, Layanan bahasa mencatat teks input Anda selama 48 jam, hanya untuk memungkinkan pemecahan masalah dalam memberi Anda fungsi pemrosesan bahasa alami layanan. Mengatur parameter ini ke true, menonaktifkan pengelogan input dan dapat membatasi kemampuan kami untuk memulihkan masalah yang terjadi. Silakan lihat Catatan Kepatuhan dan Privasi Cognitive Services di https://aka.ms/cs-compliance untuk detail tambahan, dan prinsip Microsoft Responsible AI di https://www.microsoft.com/ai/responsible-ai.
- polling_interval
- int
Waktu tunggu antara dua polling untuk operasi LRO jika tidak ada header Retry-After. Default ke 5 detik.
- continuation_token
- str
Panggil continuation_token() pada objek poller untuk menyimpan status operasi jangka panjang (LRO) ke dalam token buram. Teruskan nilai sebagai argumen kata kunci continuation_token untuk memulai ulang LRO dari status tersimpan.
- display_name
- str
Nama tampilan opsional yang akan diatur untuk analisis yang diminta.
Mengembalikan
Instans TextAnalysisLROPoller. Panggil result() pada objek ini untuk mengembalikan pageable heterogen dan AbstractiveSummaryResultDocumentError.
Tipe hasil
Pengecualian
Contoh
Lakukan ringkasan abstraktif pada batch dokumen.
import os
from azure.core.credentials import AzureKeyCredential
from azure.ai.textanalytics import TextAnalyticsClient
endpoint = os.environ["AZURE_LANGUAGE_ENDPOINT"]
key = os.environ["AZURE_LANGUAGE_KEY"]
text_analytics_client = TextAnalyticsClient(
endpoint=endpoint,
credential=AzureKeyCredential(key),
)
document = [
"At Microsoft, we have been on a quest to advance AI beyond existing techniques, by taking a more holistic, "
"human-centric approach to learning and understanding. As Chief Technology Officer of Azure AI Cognitive "
"Services, I have been working with a team of amazing scientists and engineers to turn this quest into a "
"reality. In my role, I enjoy a unique perspective in viewing the relationship among three attributes of "
"human cognition: monolingual text (X), audio or visual sensory signals, (Y) and multilingual (Z). At the "
"intersection of all three, there's magic-what we call XYZ-code as illustrated in Figure 1-a joint "
"representation to create more powerful AI that can speak, hear, see, and understand humans better. "
"We believe XYZ-code will enable us to fulfill our long-term vision: cross-domain transfer learning, "
"spanning modalities and languages. The goal is to have pretrained models that can jointly learn "
"representations to support a broad range of downstream AI tasks, much in the way humans do today. "
"Over the past five years, we have achieved human performance on benchmarks in conversational speech "
"recognition, machine translation, conversational question answering, machine reading comprehension, "
"and image captioning. These five breakthroughs provided us with strong signals toward our more ambitious "
"aspiration to produce a leap in AI capabilities, achieving multisensory and multilingual learning that "
"is closer in line with how humans learn and understand. I believe the joint XYZ-code is a foundational "
"component of this aspiration, if grounded with external knowledge sources in the downstream AI tasks."
]
poller = text_analytics_client.begin_abstract_summary(document)
abstract_summary_results = poller.result()
for result in abstract_summary_results:
if result.kind == "AbstractiveSummarization":
print("Summaries abstracted:")
[print(f"{summary.text}\n") for summary in result.summaries]
elif result.is_error is True:
print("...Is an error with code '{}' and message '{}'".format(
result.error.code, result.error.message
))
begin_analyze_actions
Mulai operasi jangka panjang untuk melakukan berbagai tindakan analisis teks melalui batch dokumen.
Kami sarankan Anda menggunakan fungsi ini jika Anda ingin menganalisis dokumen yang lebih besar, dan / atau menggabungkan beberapa tindakan analisis teks ke dalam satu panggilan. Jika tidak, kami sarankan Anda menggunakan titik akhir tertentu tindakan, misalnya analyze_sentiment.
Catatan
Lihat dokumentasi layanan untuk dukungan regional fitur tindakan kustom:
Baru dalam versi v3.1: Metode klien begin_analyze_actions .
Baru dalam versi 2022-05-01: Opsi input RecognizeCustomEntitiesAction, SingleLabelClassifyAction, MultiLabelClassifyAction, dan AnalyzeHealthcareEntitiesAction dan objek hasil RecognizeCustomEntitiesResult, ClassifyDocumentResult, dan AnalyzeHealthcareEntitiesResult yang sesuai
Baru dalam versi 2023-04-01: Opsi input ExtractiveSummaryAction dan AbstractiveSummaryAction dan objek hasil ExtractiveSummaryResult dan AbstractiveSummaryResult yang sesuai.
begin_analyze_actions(documents: List[str] | List[TextDocumentInput] | List[Dict[str, str]], actions: List[RecognizeEntitiesAction | RecognizeLinkedEntitiesAction | RecognizePiiEntitiesAction | ExtractKeyPhrasesAction | AnalyzeSentimentAction | RecognizeCustomEntitiesAction | SingleLabelClassifyAction | MultiLabelClassifyAction | AnalyzeHealthcareEntitiesAction | ExtractiveSummaryAction | AbstractiveSummaryAction], *, continuation_token: str | None = None, display_name: str | None = None, language: str | None = None, polling_interval: int | None = None, show_stats: bool | None = None, **kwargs: Any) -> TextAnalysisLROPoller[ItemPaged[List[RecognizeEntitiesResult | RecognizeLinkedEntitiesResult | RecognizePiiEntitiesResult | ExtractKeyPhrasesResult | AnalyzeSentimentResult | RecognizeCustomEntitiesResult | ClassifyDocumentResult | AnalyzeHealthcareEntitiesResult | ExtractiveSummaryResult | AbstractiveSummaryResult | DocumentError]]]
Parameter
Kumpulan dokumen yang akan diproses sebagai bagian dari batch ini. Jika Anda ingin menentukan ID dan bahasa berdasarkan per item, Anda harus menggunakan sebagai input daftar[TextDocumentInput] atau daftar representasi dict , TextDocumentInputseperti {"id": "1", "language": "en", "text": "hello world"}.
- actions
- list[RecognizeEntitiesAction atau RecognizePiiEntitiesAction atau ExtractKeyPhrasesAction atau RecognizeLinkedEntitiesAction atau AnalyzeSentimentAction atau RecognizeCustomEntitiesAction atau SingleLabelClassifyAction atau MultiLabelClassifyAction atau AnalyzeHealthcareEntitiesAction atau ExtractiveSummaryAction atau AbstractiveSummaryAction]
Daftar tindakan heterogen untuk dilakukan pada dokumen input. Setiap objek tindakan merangkum parameter yang digunakan untuk jenis tindakan tertentu. Hasil tindakan akan berada dalam urutan tindakan input yang sama.
- display_name
- str
Nama tampilan opsional yang akan diatur untuk analisis yang diminta.
- language
- str
Representasi bahasa 2 huruf ISO 639-1 untuk seluruh batch. Misalnya, gunakan "en" untuk bahasa Inggris; "es" untuk bahasa Spanyol dll. Jika tidak diatur, menggunakan "en" untuk bahasa Inggris sebagai default. Bahasa per dokumen akan lebih diutamakan daripada seluruh bahasa batch. Lihat https://aka.ms/talangs untuk bahasa yang didukung dalam LANGUAGE API.
- show_stats
- bool
Jika diatur ke true, respons akan berisi statistik tingkat dokumen.
- polling_interval
- int
Waktu tunggu antara dua polling untuk operasi LRO jika tidak ada header Retry-After. Default ke 5 detik.
- continuation_token
- str
Panggil continuation_token() pada objek poller untuk menyimpan status operasi jangka panjang (LRO) ke dalam token buram. Teruskan nilai sebagai argumen kata kunci continuation_token untuk memulai ulang LRO dari status tersimpan.
Mengembalikan
Instans TextAnalysisLROPoller. Panggil result() pada objek poller untuk mengembalikan daftar daftar heterogen yang dapat di-pageable. Daftar daftar ini pertama kali diurutkan oleh dokumen yang Anda masukkan, lalu diurutkan berdasarkan tindakan yang Anda masukkan. Misalnya, jika Anda memiliki input dokumen ["Halo", "dunia"], dan tindakan RecognizeEntitiesAction dan AnalyzeSentimentAction, ketika melakukan iterasi di atas daftar daftar, Anda akan terlebih dahulu melakukan iterasi atas hasil tindakan untuk dokumen "Halo", mendapatkan RecognizeEntitiesResult dari "Halo", lalu AnalyzeSentimentResult dari "Halo". Kemudian, Anda akan mendapatkan RecognizeEntitiesResult dan AnalyzeSentimentResult dari "dunia".
Tipe hasil
Pengecualian
Contoh
Mulai operasi jangka panjang untuk melakukan berbagai tindakan analisis teks melalui batch dokumen.
import os
from azure.core.credentials import AzureKeyCredential
from azure.ai.textanalytics import (
TextAnalyticsClient,
RecognizeEntitiesAction,
RecognizeLinkedEntitiesAction,
RecognizePiiEntitiesAction,
ExtractKeyPhrasesAction,
AnalyzeSentimentAction,
)
endpoint = os.environ["AZURE_LANGUAGE_ENDPOINT"]
key = os.environ["AZURE_LANGUAGE_KEY"]
text_analytics_client = TextAnalyticsClient(
endpoint=endpoint,
credential=AzureKeyCredential(key),
)
documents = [
'We went to Contoso Steakhouse located at midtown NYC last week for a dinner party, and we adore the spot! '
'They provide marvelous food and they have a great menu. The chief cook happens to be the owner (I think his name is John Doe) '
'and he is super nice, coming out of the kitchen and greeted us all.'
,
'We enjoyed very much dining in the place! '
'The Sirloin steak I ordered was tender and juicy, and the place was impeccably clean. You can even pre-order from their '
'online menu at www.contososteakhouse.com, call 312-555-0176 or send email to order@contososteakhouse.com! '
'The only complaint I have is the food didn\'t come fast enough. Overall I highly recommend it!'
]
poller = text_analytics_client.begin_analyze_actions(
documents,
display_name="Sample Text Analysis",
actions=[
RecognizeEntitiesAction(),
RecognizePiiEntitiesAction(),
ExtractKeyPhrasesAction(),
RecognizeLinkedEntitiesAction(),
AnalyzeSentimentAction(),
],
)
document_results = poller.result()
for doc, action_results in zip(documents, document_results):
print(f"\nDocument text: {doc}")
for result in action_results:
if result.kind == "EntityRecognition":
print("...Results of Recognize Entities Action:")
for entity in result.entities:
print(f"......Entity: {entity.text}")
print(f".........Category: {entity.category}")
print(f".........Confidence Score: {entity.confidence_score}")
print(f".........Offset: {entity.offset}")
elif result.kind == "PiiEntityRecognition":
print("...Results of Recognize PII Entities action:")
for pii_entity in result.entities:
print(f"......Entity: {pii_entity.text}")
print(f".........Category: {pii_entity.category}")
print(f".........Confidence Score: {pii_entity.confidence_score}")
elif result.kind == "KeyPhraseExtraction":
print("...Results of Extract Key Phrases action:")
print(f"......Key Phrases: {result.key_phrases}")
elif result.kind == "EntityLinking":
print("...Results of Recognize Linked Entities action:")
for linked_entity in result.entities:
print(f"......Entity name: {linked_entity.name}")
print(f".........Data source: {linked_entity.data_source}")
print(f".........Data source language: {linked_entity.language}")
print(
f".........Data source entity ID: {linked_entity.data_source_entity_id}"
)
print(f".........Data source URL: {linked_entity.url}")
print(".........Document matches:")
for match in linked_entity.matches:
print(f"............Match text: {match.text}")
print(f"............Confidence Score: {match.confidence_score}")
print(f"............Offset: {match.offset}")
print(f"............Length: {match.length}")
elif result.kind == "SentimentAnalysis":
print("...Results of Analyze Sentiment action:")
print(f"......Overall sentiment: {result.sentiment}")
print(
f"......Scores: positive={result.confidence_scores.positive}; \
neutral={result.confidence_scores.neutral}; \
negative={result.confidence_scores.negative} \n"
)
elif result.is_error is True:
print(
f"...Is an error with code '{result.error.code}' and message '{result.error.message}'"
)
print("------------------------------------------")
begin_analyze_healthcare_entities
Analisis entitas layanan kesehatan dan identifikasi hubungan antara entitas ini dalam batch dokumen.
Entitas dikaitkan dengan referensi yang dapat ditemukan di pangkalan pengetahuan yang ada, seperti UMLS, CHV, MSH, dll.
Kami juga mengekstrak hubungan yang ditemukan antara entitas, misalnya dalam "Subjek mengambil 100 mg ibuprofen", kami akan mengekstrak hubungan antara dosis "100 mg" dan obat "ibuprofen".
Baru dalam versi v3.1: Metode klien begin_analyze_healthcare_entities .
Baru dalam versi 2022-05-01: Argumen kata kunci display_name .
begin_analyze_healthcare_entities(documents: List[str] | List[TextDocumentInput] | List[Dict[str, str]], *, continuation_token: str | None = None, disable_service_logs: bool | None = None, display_name: str | None = None, language: str | None = None, model_version: str | None = None, polling_interval: int | None = None, show_stats: bool | None = None, string_index_type: str | None = None, **kwargs: Any) -> AnalyzeHealthcareEntitiesLROPoller[ItemPaged[AnalyzeHealthcareEntitiesResult | DocumentError]]
Parameter
Kumpulan dokumen yang akan diproses sebagai bagian dari batch ini. Jika Anda ingin menentukan ID dan bahasa berdasarkan per item, Anda harus menggunakan sebagai input daftar[TextDocumentInput] atau daftar representasi dict dari TextDocumentInput, seperti {"id": "1", "language": "en", "text": "hello world"}.
- model_version
- str
Versi model yang digunakan untuk analisis, misalnya "terbaru". Jika versi model tidak ditentukan, API akan default ke versi non-pratinjau terbaru. Lihat di sini untuk informasi selengkapnya: https://aka.ms/text-analytics-model-versioning
- show_stats
- bool
Jika diatur ke true, respons akan berisi statistik tingkat dokumen.
- language
- str
Representasi bahasa 2 huruf ISO 639-1 untuk seluruh batch. Misalnya, gunakan "en" untuk bahasa Inggris; "es" untuk bahasa Spanyol dll. Jika tidak diatur, gunakan "en" untuk bahasa Inggris sebagai default. Bahasa per dokumen akan lebih diutamakan daripada seluruh bahasa batch. Lihat https://aka.ms/talangs untuk bahasa yang didukung dalam LANGUAGE API.
- display_name
- str
Nama tampilan opsional yang akan diatur untuk analisis yang diminta.
- string_index_type
- str
Menentukan metode yang digunakan untuk menginterpretasikan offset string. UnicodeCodePoint, pengodean Python, adalah default. Untuk mengambil alih default Python, Anda juga dapat meneruskan Utf16CodeUnit atau TextElement_v8. Untuk informasi tambahan lihat https://aka.ms/text-analytics-offsets
- polling_interval
- int
Waktu tunggu antara dua polling untuk operasi LRO jika tidak ada header Retry-After. Default ke 5 detik.
- continuation_token
- str
Panggil continuation_token() pada objek poller untuk menyimpan status operasi jangka panjang (LRO) ke dalam token buram. Teruskan nilai sebagai argumen kata kunci continuation_token untuk memulai ulang LRO dari status tersimpan.
- disable_service_logs
- bool
Default ke true, yang berarti bahwa layanan Bahasa tidak akan mencatat teks input Anda di sisi layanan untuk pemecahan masalah. Jika diatur ke False, layanan Bahasa mencatat teks input Anda selama 48 jam, semata-mata untuk memungkinkan pemecahan masalah dalam memberi Anda fungsi pemrosesan bahasa alami layanan. Silakan lihat Catatan Kepatuhan dan Privasi Cognitive Services untuk https://aka.ms/cs-compliance detail tambahan, dan prinsip Microsoft Responsible AI di https://www.microsoft.com/ai/responsible-ai.
Mengembalikan
Instans AnalyzeHealthcareEntitiesLROPoller. Panggil result() pada objek ini untuk mengembalikan pageable heterogen dan AnalyzeHealthcareEntitiesResultDocumentError.
Tipe hasil
Pengecualian
Contoh
Mengenali entitas layanan kesehatan dalam batch dokumen.
import os
import typing
from azure.core.credentials import AzureKeyCredential
from azure.ai.textanalytics import TextAnalyticsClient, HealthcareEntityRelation
endpoint = os.environ["AZURE_LANGUAGE_ENDPOINT"]
key = os.environ["AZURE_LANGUAGE_KEY"]
text_analytics_client = TextAnalyticsClient(
endpoint=endpoint,
credential=AzureKeyCredential(key),
)
documents = [
"""
Patient needs to take 100 mg of ibuprofen, and 3 mg of potassium. Also needs to take
10 mg of Zocor.
""",
"""
Patient needs to take 50 mg of ibuprofen, and 2 mg of Coumadin.
"""
]
poller = text_analytics_client.begin_analyze_healthcare_entities(documents)
result = poller.result()
docs = [doc for doc in result if not doc.is_error]
print("Let's first visualize the outputted healthcare result:")
for doc in docs:
for entity in doc.entities:
print(f"Entity: {entity.text}")
print(f"...Normalized Text: {entity.normalized_text}")
print(f"...Category: {entity.category}")
print(f"...Subcategory: {entity.subcategory}")
print(f"...Offset: {entity.offset}")
print(f"...Confidence score: {entity.confidence_score}")
if entity.data_sources is not None:
print("...Data Sources:")
for data_source in entity.data_sources:
print(f"......Entity ID: {data_source.entity_id}")
print(f"......Name: {data_source.name}")
if entity.assertion is not None:
print("...Assertion:")
print(f"......Conditionality: {entity.assertion.conditionality}")
print(f"......Certainty: {entity.assertion.certainty}")
print(f"......Association: {entity.assertion.association}")
for relation in doc.entity_relations:
print(f"Relation of type: {relation.relation_type} has the following roles")
for role in relation.roles:
print(f"...Role '{role.name}' with entity '{role.entity.text}'")
print("------------------------------------------")
print("Now, let's get all of medication dosage relations from the documents")
dosage_of_medication_relations = [
entity_relation
for doc in docs
for entity_relation in doc.entity_relations if entity_relation.relation_type == HealthcareEntityRelation.DOSAGE_OF_MEDICATION
]
begin_extract_summary
Mulai operasi ringkasan ekstraktif yang berjalan lama.
Untuk diskusi konseptual ringkasan ekstraktif, lihat dokumentasi layanan: https://learn.microsoft.com/azure/cognitive-services/language-service/summarization/overview
Baru dalam versi 2023-04-01: Metode klien begin_extract_summary .
begin_extract_summary(documents: List[str] | List[TextDocumentInput] | List[Dict[str, str]], *, continuation_token: str | None = None, disable_service_logs: bool | None = None, display_name: str | None = None, language: str | None = None, polling_interval: int | None = None, show_stats: bool | None = None, model_version: str | None = None, string_index_type: str | None = None, max_sentence_count: int | None = None, order_by: Literal['Rank', 'Offset'] | None = None, **kwargs: Any) -> TextAnalysisLROPoller[ItemPaged[ExtractiveSummaryResult | DocumentError]]
Parameter
Kumpulan dokumen yang akan diproses sebagai bagian dari batch ini. Jika Anda ingin menentukan ID dan bahasa berdasarkan per item, Anda harus menggunakan sebagai input daftar[TextDocumentInput] atau daftar representasi dict dari TextDocumentInput, seperti {"id": "1", "language": "en", "text": "hello world"}.
- language
- str
Representasi bahasa 2 huruf ISO 639-1 untuk seluruh batch. Misalnya, gunakan "en" untuk bahasa Inggris; "es" untuk bahasa Spanyol dll. Jika tidak diatur, gunakan "en" untuk bahasa Inggris sebagai default. Bahasa per dokumen akan lebih diutamakan daripada seluruh bahasa batch. Lihat https://aka.ms/talangs untuk bahasa yang didukung dalam LANGUAGE API.
- show_stats
- bool
Jika diatur ke true, respons akan berisi statistik tingkat dokumen.
Versi model yang digunakan untuk analisis, misalnya "terbaru". Jika versi model tidak ditentukan, API akan default ke versi non-pratinjau terbaru. Lihat di sini untuk informasi selengkapnya: https://aka.ms/text-analytics-model-versioning
Menentukan metode yang digunakan untuk menginterpretasikan offset string.
- disable_service_logs
- bool
Jika diatur ke true, Anda memilih untuk tidak memasukkan input teks Anda ke sisi layanan untuk pemecahan masalah. Secara default, layanan Bahasa mencatat teks input Anda selama 48 jam, hanya untuk memungkinkan pemecahan masalah dalam memberi Anda fungsi pemrosesan bahasa alami layanan. Mengatur parameter ini ke true, menonaktifkan pengelogan input dan dapat membatasi kemampuan kami untuk memulihkan masalah yang terjadi. Silakan lihat Catatan Kepatuhan dan Privasi Cognitive Services untuk https://aka.ms/cs-compliance detail tambahan, dan prinsip Microsoft Responsible AI di https://www.microsoft.com/ai/responsible-ai.
- polling_interval
- int
Waktu tunggu antara dua polling untuk operasi LRO jika tidak ada header Retry-After. Default ke 5 detik.
- continuation_token
- str
Panggil continuation_token() pada objek poller untuk menyimpan status operasi jangka panjang (LRO) ke dalam token buram. Teruskan nilai sebagai argumen kata kunci continuation_token untuk memulai ulang LRO dari status tersimpan.
- display_name
- str
Nama tampilan opsional yang akan diatur untuk analisis yang diminta.
Mengembalikan
Instans TextAnalysisLROPoller. Panggil result() pada objek ini untuk mengembalikan pageable heterogen dan ExtractiveSummaryResultDocumentError.
Tipe hasil
Pengecualian
Contoh
Lakukan ringkasan ekstraktif pada batch dokumen.
import os
from azure.core.credentials import AzureKeyCredential
from azure.ai.textanalytics import TextAnalyticsClient
endpoint = os.environ["AZURE_LANGUAGE_ENDPOINT"]
key = os.environ["AZURE_LANGUAGE_KEY"]
text_analytics_client = TextAnalyticsClient(
endpoint=endpoint,
credential=AzureKeyCredential(key),
)
document = [
"At Microsoft, we have been on a quest to advance AI beyond existing techniques, by taking a more holistic, "
"human-centric approach to learning and understanding. As Chief Technology Officer of Azure AI Cognitive "
"Services, I have been working with a team of amazing scientists and engineers to turn this quest into a "
"reality. In my role, I enjoy a unique perspective in viewing the relationship among three attributes of "
"human cognition: monolingual text (X), audio or visual sensory signals, (Y) and multilingual (Z). At the "
"intersection of all three, there's magic-what we call XYZ-code as illustrated in Figure 1-a joint "
"representation to create more powerful AI that can speak, hear, see, and understand humans better. "
"We believe XYZ-code will enable us to fulfill our long-term vision: cross-domain transfer learning, "
"spanning modalities and languages. The goal is to have pretrained models that can jointly learn "
"representations to support a broad range of downstream AI tasks, much in the way humans do today. "
"Over the past five years, we have achieved human performance on benchmarks in conversational speech "
"recognition, machine translation, conversational question answering, machine reading comprehension, "
"and image captioning. These five breakthroughs provided us with strong signals toward our more ambitious "
"aspiration to produce a leap in AI capabilities, achieving multisensory and multilingual learning that "
"is closer in line with how humans learn and understand. I believe the joint XYZ-code is a foundational "
"component of this aspiration, if grounded with external knowledge sources in the downstream AI tasks."
]
poller = text_analytics_client.begin_extract_summary(document)
extract_summary_results = poller.result()
for result in extract_summary_results:
if result.kind == "ExtractiveSummarization":
print("Summary extracted: \n{}".format(
" ".join([sentence.text for sentence in result.sentences]))
)
elif result.is_error is True:
print("...Is an error with code '{}' and message '{}'".format(
result.error.code, result.error.message
))
begin_multi_label_classify
Mulai operasi klasifikasi multi label kustom yang berjalan lama.
Untuk informasi tentang dukungan regional fitur kustom dan cara melatih model untuk mengklasifikasikan dokumen Anda, lihat https://aka.ms/azsdk/textanalytics/customfunctionalities
Baru dalam versi 2022-05-01: Metode klien begin_multi_label_classify .
begin_multi_label_classify(documents: List[str] | List[TextDocumentInput] | List[Dict[str, str]], project_name: str, deployment_name: str, *, continuation_token: str | None = None, disable_service_logs: bool | None = None, display_name: str | None = None, language: str | None = None, polling_interval: int | None = None, show_stats: bool | None = None, **kwargs: Any) -> TextAnalysisLROPoller[ItemPaged[ClassifyDocumentResult | DocumentError]]
Parameter
Kumpulan dokumen yang akan diproses sebagai bagian dari batch ini. Jika Anda ingin menentukan ID dan bahasa berdasarkan per item, Anda harus menggunakan sebagai input daftar[TextDocumentInput] atau daftar representasi dict dari TextDocumentInput, seperti {"id": "1", "language": "en", "text": "hello world"}.
- language
- str
Representasi bahasa 2 huruf ISO 639-1 untuk seluruh batch. Misalnya, gunakan "en" untuk bahasa Inggris; "es" untuk bahasa Spanyol dll. Jika tidak diatur, gunakan "en" untuk bahasa Inggris sebagai default. Bahasa per dokumen akan lebih diutamakan daripada seluruh bahasa batch. Lihat https://aka.ms/talangs untuk bahasa yang didukung dalam LANGUAGE API.
- show_stats
- bool
Jika diatur ke true, respons akan berisi statistik tingkat dokumen.
- disable_service_logs
- bool
Jika diatur ke true, Anda memilih untuk tidak memasukkan input teks Anda ke sisi layanan untuk pemecahan masalah. Secara default, layanan Bahasa mencatat teks input Anda selama 48 jam, hanya untuk memungkinkan pemecahan masalah dalam memberi Anda fungsi pemrosesan bahasa alami layanan. Mengatur parameter ini ke true, menonaktifkan pengelogan input dan dapat membatasi kemampuan kami untuk memulihkan masalah yang terjadi. Silakan lihat Catatan Kepatuhan dan Privasi Cognitive Services untuk https://aka.ms/cs-compliance detail tambahan, dan prinsip Microsoft Responsible AI di https://www.microsoft.com/ai/responsible-ai.
- polling_interval
- int
Waktu tunggu antara dua polling untuk operasi LRO jika tidak ada header Retry-After. Default ke 5 detik.
- continuation_token
- str
Panggil continuation_token() pada objek poller untuk menyimpan status operasi jangka panjang (LRO) ke dalam token buram. Teruskan nilai sebagai argumen kata kunci continuation_token untuk memulai ulang LRO dari status tersimpan.
- display_name
- str
Nama tampilan opsional yang akan diatur untuk analisis yang diminta.
Mengembalikan
Instans TextAnalysisLROPoller. Panggil result() pada objek ini untuk mengembalikan pageable heterogen dan ClassifyDocumentResultDocumentError.
Tipe hasil
Pengecualian
Contoh
Lakukan klasifikasi multi label pada batch dokumen.
import os
from azure.core.credentials import AzureKeyCredential
from azure.ai.textanalytics import TextAnalyticsClient
endpoint = os.environ["AZURE_LANGUAGE_ENDPOINT"]
key = os.environ["AZURE_LANGUAGE_KEY"]
project_name = os.environ["MULTI_LABEL_CLASSIFY_PROJECT_NAME"]
deployment_name = os.environ["MULTI_LABEL_CLASSIFY_DEPLOYMENT_NAME"]
path_to_sample_document = os.path.abspath(
os.path.join(
os.path.abspath(__file__),
"..",
"./text_samples/custom_classify_sample.txt",
)
)
text_analytics_client = TextAnalyticsClient(
endpoint=endpoint,
credential=AzureKeyCredential(key),
)
with open(path_to_sample_document) as fd:
document = [fd.read()]
poller = text_analytics_client.begin_multi_label_classify(
document,
project_name=project_name,
deployment_name=deployment_name
)
document_results = poller.result()
for doc, classification_result in zip(document, document_results):
if classification_result.kind == "CustomDocumentClassification":
classifications = classification_result.classifications
print(f"\nThe movie plot '{doc}' was classified as the following genres:\n")
for classification in classifications:
print("'{}' with confidence score {}.".format(
classification.category, classification.confidence_score
))
elif classification_result.is_error is True:
print("Movie plot '{}' has an error with code '{}' and message '{}'".format(
doc, classification_result.error.code, classification_result.error.message
))
begin_recognize_custom_entities
Mulai operasi pengenalan entitas bernama kustom yang berjalan lama.
Untuk informasi tentang dukungan regional fitur kustom dan cara melatih model untuk mengenali entitas kustom, lihat https://aka.ms/azsdk/textanalytics/customentityrecognition
Baru dalam versi 2022-05-01: Metode klien begin_recognize_custom_entities .
begin_recognize_custom_entities(documents: List[str] | List[TextDocumentInput] | List[Dict[str, str]], project_name: str, deployment_name: str, *, continuation_token: str | None = None, disable_service_logs: bool | None = None, display_name: str | None = None, language: str | None = None, polling_interval: int | None = None, show_stats: bool | None = None, string_index_type: str | None = None, **kwargs: Any) -> TextAnalysisLROPoller[ItemPaged[RecognizeCustomEntitiesResult | DocumentError]]
Parameter
Kumpulan dokumen yang akan diproses sebagai bagian dari batch ini. Jika Anda ingin menentukan ID dan bahasa berdasarkan per item, Anda harus menggunakan sebagai input daftar[TextDocumentInput] atau daftar representasi dict dari TextDocumentInput, seperti {"id": "1", "language": "en", "text": "hello world"}.
- language
- str
Representasi bahasa 2 huruf ISO 639-1 untuk seluruh batch. Misalnya, gunakan "en" untuk bahasa Inggris; "es" untuk bahasa Spanyol dll. Jika tidak diatur, gunakan "en" untuk bahasa Inggris sebagai default. Bahasa per dokumen akan lebih diutamakan daripada seluruh bahasa batch. Lihat https://aka.ms/talangs untuk bahasa yang didukung dalam LANGUAGE API.
- show_stats
- bool
Jika diatur ke true, respons akan berisi statistik tingkat dokumen.
- disable_service_logs
- bool
Jika diatur ke true, Anda memilih untuk tidak memasukkan input teks anda ke sisi layanan untuk pemecahan masalah. Secara default, Layanan bahasa mencatat teks input Anda selama 48 jam, hanya untuk memungkinkan pemecahan masalah dalam memberi Anda fungsi pemrosesan bahasa alami layanan. Mengatur parameter ini ke true, menonaktifkan pengelogan input dan dapat membatasi kemampuan kami untuk memulihkan masalah yang terjadi. Silakan lihat Catatan Kepatuhan dan Privasi Cognitive Services di https://aka.ms/cs-compliance untuk detail tambahan, dan prinsip Microsoft Responsible AI di https://www.microsoft.com/ai/responsible-ai.
- string_index_type
- str
Menentukan metode yang digunakan untuk menginterpretasikan offset string. UnicodeCodePoint, pengodean Python, adalah defaultnya. Untuk mengambil alih default Python, Anda juga dapat meneruskan Utf16CodeUnit atau TextElement_v8. Untuk informasi tambahan lihat https://aka.ms/text-analytics-offsets
- polling_interval
- int
Waktu tunggu antara dua polling untuk operasi LRO jika tidak ada header Retry-After. Default ke 5 detik.
- continuation_token
- str
Panggil continuation_token() pada objek poller untuk menyimpan status operasi jangka panjang (LRO) ke dalam token buram. Teruskan nilai sebagai argumen kata kunci continuation_token untuk memulai ulang LRO dari status tersimpan.
- display_name
- str
Nama tampilan opsional yang akan diatur untuk analisis yang diminta.
Mengembalikan
Instans TextAnalysisLROPoller. Panggil result() pada objek ini untuk mengembalikan pageable heterogen dan RecognizeCustomEntitiesResultDocumentError.
Tipe hasil
Pengecualian
Contoh
Mengenali entitas kustom dalam batch dokumen.
import os
from azure.core.credentials import AzureKeyCredential
from azure.ai.textanalytics import TextAnalyticsClient
endpoint = os.environ["AZURE_LANGUAGE_ENDPOINT"]
key = os.environ["AZURE_LANGUAGE_KEY"]
project_name = os.environ["CUSTOM_ENTITIES_PROJECT_NAME"]
deployment_name = os.environ["CUSTOM_ENTITIES_DEPLOYMENT_NAME"]
path_to_sample_document = os.path.abspath(
os.path.join(
os.path.abspath(__file__),
"..",
"./text_samples/custom_entities_sample.txt",
)
)
text_analytics_client = TextAnalyticsClient(
endpoint=endpoint,
credential=AzureKeyCredential(key),
)
with open(path_to_sample_document) as fd:
document = [fd.read()]
poller = text_analytics_client.begin_recognize_custom_entities(
document,
project_name=project_name,
deployment_name=deployment_name
)
document_results = poller.result()
for custom_entities_result in document_results:
if custom_entities_result.kind == "CustomEntityRecognition":
for entity in custom_entities_result.entities:
print(
"Entity '{}' has category '{}' with confidence score of '{}'".format(
entity.text, entity.category, entity.confidence_score
)
)
elif custom_entities_result.is_error is True:
print("...Is an error with code '{}' and message '{}'".format(
custom_entities_result.error.code, custom_entities_result.error.message
)
)
begin_single_label_classify
Mulai operasi klasifikasi label tunggal kustom yang berjalan lama.
Untuk informasi tentang dukungan regional fitur kustom dan cara melatih model untuk mengklasifikasikan dokumen Anda, lihat https://aka.ms/azsdk/textanalytics/customfunctionalities
Baru dalam versi 2022-05-01: Metode klien begin_single_label_classify .
begin_single_label_classify(documents: List[str] | List[TextDocumentInput] | List[Dict[str, str]], project_name: str, deployment_name: str, *, continuation_token: str | None = None, disable_service_logs: bool | None = None, display_name: str | None = None, language: str | None = None, polling_interval: int | None = None, show_stats: bool | None = None, **kwargs: Any) -> TextAnalysisLROPoller[ItemPaged[ClassifyDocumentResult | DocumentError]]
Parameter
Kumpulan dokumen yang akan diproses sebagai bagian dari batch ini. Jika Anda ingin menentukan ID dan bahasa berdasarkan per item, Anda harus menggunakan sebagai input daftar[TextDocumentInput] atau daftar representasi dict , TextDocumentInputseperti {"id": "1", "language": "en", "text": "hello world"}.
- language
- str
Representasi bahasa 2 huruf ISO 639-1 untuk seluruh batch. Misalnya, gunakan "en" untuk bahasa Inggris; "es" untuk bahasa Spanyol dll. Jika tidak diatur, menggunakan "en" untuk bahasa Inggris sebagai default. Bahasa per dokumen akan lebih diutamakan daripada seluruh bahasa batch. Lihat https://aka.ms/talangs untuk bahasa yang didukung dalam LANGUAGE API.
- show_stats
- bool
Jika diatur ke true, respons akan berisi statistik tingkat dokumen.
- disable_service_logs
- bool
Jika diatur ke true, Anda memilih untuk tidak memasukkan input teks anda ke sisi layanan untuk pemecahan masalah. Secara default, Layanan bahasa mencatat teks input Anda selama 48 jam, hanya untuk memungkinkan pemecahan masalah dalam memberi Anda fungsi pemrosesan bahasa alami layanan. Mengatur parameter ini ke true, menonaktifkan pengelogan input dan dapat membatasi kemampuan kami untuk memulihkan masalah yang terjadi. Silakan lihat Catatan Kepatuhan dan Privasi Cognitive Services di https://aka.ms/cs-compliance untuk detail tambahan, dan prinsip Microsoft Responsible AI di https://www.microsoft.com/ai/responsible-ai.
- polling_interval
- int
Waktu tunggu antara dua polling untuk operasi LRO jika tidak ada header Retry-After. Default ke 5 detik.
- continuation_token
- str
Panggil continuation_token() pada objek poller untuk menyimpan status operasi jangka panjang (LRO) ke dalam token buram. Teruskan nilai sebagai argumen kata kunci continuation_token untuk memulai ulang LRO dari status tersimpan.
- display_name
- str
Nama tampilan opsional yang akan diatur untuk analisis yang diminta.
Mengembalikan
Instans TextAnalysisLROPoller. Panggil result() pada objek ini untuk mengembalikan pageable heterogen dan ClassifyDocumentResultDocumentError.
Tipe hasil
Pengecualian
Contoh
Lakukan klasifikasi label tunggal pada batch dokumen.
import os
from azure.core.credentials import AzureKeyCredential
from azure.ai.textanalytics import TextAnalyticsClient
endpoint = os.environ["AZURE_LANGUAGE_ENDPOINT"]
key = os.environ["AZURE_LANGUAGE_KEY"]
project_name = os.environ["SINGLE_LABEL_CLASSIFY_PROJECT_NAME"]
deployment_name = os.environ["SINGLE_LABEL_CLASSIFY_DEPLOYMENT_NAME"]
path_to_sample_document = os.path.abspath(
os.path.join(
os.path.abspath(__file__),
"..",
"./text_samples/custom_classify_sample.txt",
)
)
text_analytics_client = TextAnalyticsClient(
endpoint=endpoint,
credential=AzureKeyCredential(key),
)
with open(path_to_sample_document) as fd:
document = [fd.read()]
poller = text_analytics_client.begin_single_label_classify(
document,
project_name=project_name,
deployment_name=deployment_name
)
document_results = poller.result()
for doc, classification_result in zip(document, document_results):
if classification_result.kind == "CustomDocumentClassification":
classification = classification_result.classifications[0]
print("The document text '{}' was classified as '{}' with confidence score {}.".format(
doc, classification.category, classification.confidence_score)
)
elif classification_result.is_error is True:
print("Document text '{}' has an error with code '{}' and message '{}'".format(
doc, classification_result.error.code, classification_result.error.message
))
close
Soket tutup yang dibuka oleh klien. Memanggil metode ini tidak perlu saat menggunakan klien sebagai manajer konteks.
close() -> None
Pengecualian
detect_language
Mendeteksi bahasa untuk batch dokumen.
Mengembalikan bahasa yang terdeteksi dan skor numerik antara nol dan satu. Skor mendekati satu menunjukkan kepastian 100% bahwa bahasa yang diidentifikasi benar. Lihat https://aka.ms/talangs untuk daftar bahasa yang diaktifkan.
Lihat https://aka.ms/azsdk/textanalytics/data-limits untuk batas data layanan.
Baru dalam versi v3.1: Argumen kata kunci disable_service_logs .
detect_language(documents: List[str] | List[DetectLanguageInput] | List[Dict[str, str]], *, country_hint: str | None = None, disable_service_logs: bool | None = None, model_version: str | None = None, show_stats: bool | None = None, **kwargs: Any) -> List[DetectLanguageResult | DocumentError]
Parameter
Kumpulan dokumen yang akan diproses sebagai bagian dari batch ini. Jika Anda ingin menentukan ID dan country_hint berdasarkan per item, Anda harus menggunakan sebagai input daftar[DetectLanguageInput] atau daftar representasi DetectLanguageInputdict , seperti {"id": "1", "country_hint": "us", "text": "hello world"}.
- country_hint
- str
Negara petunjuk asal untuk seluruh batch. Menerima dua kode negara huruf yang ditentukan oleh ISO 3166-1 alpha-2. Petunjuk negara per dokumen akan lebih diutamakan daripada seluruh petunjuk batch. Default ke "US". Jika Anda tidak ingin menggunakan petunjuk negara, berikan string "none".
- model_version
- str
Versi model yang digunakan untuk analisis, misalnya "terbaru". Jika versi model tidak ditentukan, API akan default ke versi terbaru non-pratinjau. Lihat di sini untuk informasi selengkapnya: https://aka.ms/text-analytics-model-versioning
- show_stats
- bool
Jika diatur ke true, respons akan berisi statistik tingkat dokumen di bidang statistik respons tingkat dokumen.
- disable_service_logs
- bool
Jika diatur ke true, Anda memilih untuk tidak memasukkan input teks anda ke sisi layanan untuk pemecahan masalah. Secara default, Layanan bahasa mencatat teks input Anda selama 48 jam, hanya untuk memungkinkan pemecahan masalah dalam memberi Anda fungsi pemrosesan bahasa alami layanan. Mengatur parameter ini ke true, menonaktifkan pengelogan input dan dapat membatasi kemampuan kami untuk memulihkan masalah yang terjadi. Silakan lihat Catatan Kepatuhan dan Privasi Cognitive Services di https://aka.ms/cs-compliance untuk detail tambahan, dan prinsip Microsoft Responsible AI di https://www.microsoft.com/ai/responsible-ai.
Mengembalikan
Daftar DetectLanguageResult gabungan dan DocumentError dalam urutan dokumen asli diteruskan.
Tipe hasil
Pengecualian
Contoh
Mendeteksi bahasa dalam batch dokumen.
import os
from azure.core.credentials import AzureKeyCredential
from azure.ai.textanalytics import TextAnalyticsClient
endpoint = os.environ["AZURE_LANGUAGE_ENDPOINT"]
key = os.environ["AZURE_LANGUAGE_KEY"]
text_analytics_client = TextAnalyticsClient(endpoint=endpoint, credential=AzureKeyCredential(key))
documents = [
"""
The concierge Paulette was extremely helpful. Sadly when we arrived the elevator was broken, but with Paulette's help we barely noticed this inconvenience.
She arranged for our baggage to be brought up to our room with no extra charge and gave us a free meal to refurbish all of the calories we lost from
walking up the stairs :). Can't say enough good things about my experience!
""",
"""
最近由于工作压力太大,我们决定去富酒店度假。那儿的温泉实在太舒服了,我跟我丈夫都完全恢复了工作前的青春精神!加油!
"""
]
result = text_analytics_client.detect_language(documents)
reviewed_docs = [doc for doc in result if not doc.is_error]
print("Let's see what language each review is in!")
for idx, doc in enumerate(reviewed_docs):
print("Review #{} is in '{}', which has ISO639-1 name '{}'\n".format(
idx, doc.primary_language.name, doc.primary_language.iso6391_name
))
extract_key_phrases
Ekstrak frasa kunci dari batch dokumen.
Mengembalikan daftar string yang menunjukkan frasa kunci dalam teks input. Misalnya, untuk teks input "Makanannya lezat dan ada staf yang luar biasa", API mengembalikan poin pembicaraan utama: "makanan" dan "staf yang luar biasa"
Lihat https://aka.ms/azsdk/textanalytics/data-limits untuk batas data layanan.
Baru dalam versi v3.1: Argumen kata kunci disable_service_logs .
extract_key_phrases(documents: List[str] | List[TextDocumentInput] | List[Dict[str, str]], *, disable_service_logs: bool | None = None, language: str | None = None, model_version: str | None = None, show_stats: bool | None = None, **kwargs: Any) -> List[ExtractKeyPhrasesResult | DocumentError]
Parameter
Kumpulan dokumen yang akan diproses sebagai bagian dari batch ini. Jika Anda ingin menentukan ID dan bahasa berdasarkan per item, Anda harus menggunakan sebagai input daftar[TextDocumentInput] atau daftar representasi dict , TextDocumentInputseperti {"id": "1", "language": "en", "text": "hello world"}.
- language
- str
Representasi bahasa 2 huruf ISO 639-1 untuk seluruh batch. Misalnya, gunakan "en" untuk bahasa Inggris; "es" untuk bahasa Spanyol dll. Jika tidak diatur, menggunakan "en" untuk bahasa Inggris sebagai default. Bahasa per dokumen akan lebih diutamakan daripada seluruh bahasa batch. Lihat https://aka.ms/talangs untuk bahasa yang didukung dalam LANGUAGE API.
- model_version
- str
Versi model yang digunakan untuk analisis, misalnya "terbaru". Jika versi model tidak ditentukan, API akan default ke versi terbaru non-pratinjau. Lihat di sini untuk informasi selengkapnya: https://aka.ms/text-analytics-model-versioning
- show_stats
- bool
Jika diatur ke true, respons akan berisi statistik tingkat dokumen di bidang statistik respons tingkat dokumen.
- disable_service_logs
- bool
Jika diatur ke true, Anda memilih untuk tidak memasukkan input teks anda ke sisi layanan untuk pemecahan masalah. Secara default, Layanan bahasa mencatat teks input Anda selama 48 jam, hanya untuk memungkinkan pemecahan masalah dalam memberi Anda fungsi pemrosesan bahasa alami layanan. Mengatur parameter ini ke true, menonaktifkan pengelogan input dan dapat membatasi kemampuan kami untuk memulihkan masalah yang terjadi. Silakan lihat Catatan Kepatuhan dan Privasi Cognitive Services di https://aka.ms/cs-compliance untuk detail tambahan, dan prinsip Microsoft Responsible AI di https://www.microsoft.com/ai/responsible-ai.
Mengembalikan
Daftar ExtractKeyPhrasesResult gabungan dan DocumentError dalam urutan dokumen asli diteruskan.
Tipe hasil
Pengecualian
Contoh
Ekstrak frasa kunci dalam batch dokumen.
import os
from azure.core.credentials import AzureKeyCredential
from azure.ai.textanalytics import TextAnalyticsClient
endpoint = os.environ["AZURE_LANGUAGE_ENDPOINT"]
key = os.environ["AZURE_LANGUAGE_KEY"]
text_analytics_client = TextAnalyticsClient(endpoint=endpoint, credential=AzureKeyCredential(key))
articles = [
"""
Washington, D.C. Autumn in DC is a uniquely beautiful season. The leaves fall from the trees
in a city chock-full of forests, leaving yellow leaves on the ground and a clearer view of the
blue sky above...
""",
"""
Redmond, WA. In the past few days, Microsoft has decided to further postpone the start date of
its United States workers, due to the pandemic that rages with no end in sight...
""",
"""
Redmond, WA. Employees at Microsoft can be excited about the new coffee shop that will open on campus
once workers no longer have to work remotely...
"""
]
result = text_analytics_client.extract_key_phrases(articles)
for idx, doc in enumerate(result):
if not doc.is_error:
print("Key phrases in article #{}: {}".format(
idx + 1,
", ".join(doc.key_phrases)
))
recognize_entities
Mengenali entitas untuk batch dokumen.
Mengidentifikasi dan mengategorikan entitas dalam teks Anda sebagai orang, tempat, organisasi, tanggal/waktu, jumlah, persentase, mata uang, dan banyak lagi. Untuk daftar jenis entitas yang didukung, periksa: https://aka.ms/taner
Lihat https://aka.ms/azsdk/textanalytics/data-limits untuk batas data layanan.
Baru dalam versi v3.1: Argumen kata kunci disable_service_logs dan string_index_type .
recognize_entities(documents: List[str] | List[TextDocumentInput] | List[Dict[str, str]], *, disable_service_logs: bool | None = None, language: str | None = None, model_version: str | None = None, show_stats: bool | None = None, string_index_type: str | None = None, **kwargs: Any) -> List[RecognizeEntitiesResult | DocumentError]
Parameter
Kumpulan dokumen yang akan diproses sebagai bagian dari batch ini. Jika Anda ingin menentukan ID dan bahasa berdasarkan per item, Anda harus menggunakan sebagai input daftar[TextDocumentInput] atau daftar representasi dict , TextDocumentInputseperti {"id": "1", "language": "en", "text": "hello world"}.
- language
- str
Representasi bahasa 2 huruf ISO 639-1 untuk seluruh batch. Misalnya, gunakan "en" untuk bahasa Inggris; "es" untuk bahasa Spanyol dll. Jika tidak diatur, menggunakan "en" untuk bahasa Inggris sebagai default. Bahasa per dokumen akan lebih diutamakan daripada seluruh bahasa batch. Lihat https://aka.ms/talangs untuk bahasa yang didukung dalam LANGUAGE API.
- model_version
- str
Versi model yang digunakan untuk analisis, misalnya "terbaru". Jika versi model tidak ditentukan, API akan default ke versi terbaru non-pratinjau. Lihat di sini untuk informasi selengkapnya: https://aka.ms/text-analytics-model-versioning
- show_stats
- bool
Jika diatur ke true, respons akan berisi statistik tingkat dokumen di bidang statistik respons tingkat dokumen.
- string_index_type
- str
Menentukan metode yang digunakan untuk menginterpretasikan offset string. UnicodeCodePoint, pengodean Python, adalah default. Untuk mengambil alih default Python, Anda juga dapat meneruskan Utf16CodeUnit atau TextElement_v8. Untuk informasi tambahan lihat https://aka.ms/text-analytics-offsets
- disable_service_logs
- bool
Jika diatur ke true, Anda memilih untuk tidak memasukkan input teks Anda ke sisi layanan untuk pemecahan masalah. Secara default, layanan Bahasa mencatat teks input Anda selama 48 jam, hanya untuk memungkinkan pemecahan masalah dalam memberi Anda fungsi pemrosesan bahasa alami layanan. Mengatur parameter ini ke true, menonaktifkan pengelogan input dan dapat membatasi kemampuan kami untuk memulihkan masalah yang terjadi. Silakan lihat Catatan Kepatuhan dan Privasi Cognitive Services untuk https://aka.ms/cs-compliance detail tambahan, dan prinsip Microsoft Responsible AI di https://www.microsoft.com/ai/responsible-ai.
Mengembalikan
Daftar RecognizeEntitiesResult gabungan dan DocumentError dalam urutan dokumen asli diteruskan.
Tipe hasil
Pengecualian
Contoh
Mengenali entitas dalam batch dokumen.
import os
import typing
from azure.core.credentials import AzureKeyCredential
from azure.ai.textanalytics import TextAnalyticsClient
endpoint = os.environ["AZURE_LANGUAGE_ENDPOINT"]
key = os.environ["AZURE_LANGUAGE_KEY"]
text_analytics_client = TextAnalyticsClient(endpoint=endpoint, credential=AzureKeyCredential(key))
reviews = [
"""I work for Foo Company, and we hired Contoso for our annual founding ceremony. The food
was amazing and we all can't say enough good words about the quality and the level of service.""",
"""We at the Foo Company re-hired Contoso after all of our past successes with the company.
Though the food was still great, I feel there has been a quality drop since their last time
catering for us. Is anyone else running into the same problem?""",
"""Bar Company is over the moon about the service we received from Contoso, the best sliders ever!!!!"""
]
result = text_analytics_client.recognize_entities(reviews)
result = [review for review in result if not review.is_error]
organization_to_reviews: typing.Dict[str, typing.List[str]] = {}
for idx, review in enumerate(result):
for entity in review.entities:
print(f"Entity '{entity.text}' has category '{entity.category}'")
if entity.category == 'Organization':
organization_to_reviews.setdefault(entity.text, [])
organization_to_reviews[entity.text].append(reviews[idx])
for organization, reviews in organization_to_reviews.items():
print(
"\n\nOrganization '{}' has left us the following review(s): {}".format(
organization, "\n\n".join(reviews)
)
)
recognize_linked_entities
Kenali entitas tertaut dari Pangkalan Pengetahuan terkenal untuk batch dokumen.
Mengidentifikasi dan membedakan identitas setiap entitas yang ditemukan dalam teks (misalnya, menentukan apakah terjadinya kata Mars mengacu pada planet, atau dewa perang Romawi). Entitas yang dikenali dikaitkan dengan URL ke Pangkalan Pengetahuan terkenal, seperti Wikipedia.
Lihat https://aka.ms/azsdk/textanalytics/data-limits untuk batas data layanan.
Baru dalam versi v3.1: Argumen kata kunci disable_service_logs dan string_index_type .
recognize_linked_entities(documents: List[str] | List[TextDocumentInput] | List[Dict[str, str]], *, disable_service_logs: bool | None = None, language: str | None = None, model_version: str | None = None, show_stats: bool | None = None, string_index_type: str | None = None, **kwargs: Any) -> List[RecognizeLinkedEntitiesResult | DocumentError]
Parameter
Kumpulan dokumen yang akan diproses sebagai bagian dari batch ini. Jika Anda ingin menentukan ID dan bahasa berdasarkan per item, Anda harus menggunakan sebagai input daftar[TextDocumentInput] atau daftar representasi dict dari TextDocumentInput, seperti {"id": "1", "language": "en", "text": "hello world"}.
- language
- str
Representasi bahasa 2 huruf ISO 639-1 untuk seluruh batch. Misalnya, gunakan "en" untuk bahasa Inggris; "es" untuk bahasa Spanyol dll. Jika tidak diatur, gunakan "en" untuk bahasa Inggris sebagai default. Bahasa per dokumen akan lebih diutamakan daripada seluruh bahasa batch. Lihat https://aka.ms/talangs untuk bahasa yang didukung dalam LANGUAGE API.
- model_version
- str
Versi model yang digunakan untuk analisis, misalnya "terbaru". Jika versi model tidak ditentukan, API akan default ke versi non-pratinjau terbaru. Lihat di sini untuk informasi selengkapnya: https://aka.ms/text-analytics-model-versioning
- show_stats
- bool
Jika diatur ke true, respons akan berisi statistik tingkat dokumen di bidang statistik respons tingkat dokumen.
- string_index_type
- str
Menentukan metode yang digunakan untuk menginterpretasikan offset string. UnicodeCodePoint, pengodean Python, adalah default. Untuk mengambil alih default Python, Anda juga dapat meneruskan Utf16CodeUnit atau TextElement_v8. Untuk informasi tambahan lihat https://aka.ms/text-analytics-offsets
- disable_service_logs
- bool
Jika diatur ke true, Anda memilih untuk tidak memasukkan input teks Anda ke sisi layanan untuk pemecahan masalah. Secara default, layanan Bahasa mencatat teks input Anda selama 48 jam, hanya untuk memungkinkan pemecahan masalah dalam memberi Anda fungsi pemrosesan bahasa alami layanan. Mengatur parameter ini ke true, menonaktifkan pengelogan input dan dapat membatasi kemampuan kami untuk memulihkan masalah yang terjadi. Silakan lihat Catatan Kepatuhan dan Privasi Cognitive Services untuk https://aka.ms/cs-compliance detail tambahan, dan prinsip Microsoft Responsible AI di https://www.microsoft.com/ai/responsible-ai.
Mengembalikan
Daftar RecognizeLinkedEntitiesResult gabungan dan DocumentError dalam urutan dokumen asli diteruskan.
Tipe hasil
Pengecualian
Contoh
Mengenali entitas tertaut dalam batch dokumen.
import os
from azure.core.credentials import AzureKeyCredential
from azure.ai.textanalytics import TextAnalyticsClient
endpoint = os.environ["AZURE_LANGUAGE_ENDPOINT"]
key = os.environ["AZURE_LANGUAGE_KEY"]
text_analytics_client = TextAnalyticsClient(endpoint=endpoint, credential=AzureKeyCredential(key))
documents = [
"""
Microsoft was founded by Bill Gates with some friends he met at Harvard. One of his friends,
Steve Ballmer, eventually became CEO after Bill Gates as well. Steve Ballmer eventually stepped
down as CEO of Microsoft, and was succeeded by Satya Nadella.
Microsoft originally moved its headquarters to Bellevue, Washington in January 1979, but is now
headquartered in Redmond.
"""
]
result = text_analytics_client.recognize_linked_entities(documents)
docs = [doc for doc in result if not doc.is_error]
print(
"Let's map each entity to it's Wikipedia article. I also want to see how many times each "
"entity is mentioned in a document\n\n"
)
entity_to_url = {}
for doc in docs:
for entity in doc.entities:
print("Entity '{}' has been mentioned '{}' time(s)".format(
entity.name, len(entity.matches)
))
if entity.data_source == "Wikipedia":
entity_to_url[entity.name] = entity.url
recognize_pii_entities
Mengenali entitas yang berisi informasi pribadi untuk batch dokumen.
Mengembalikan daftar entitas informasi pribadi ("SSN", "Rekening Bank", dll) dalam dokumen. Untuk daftar jenis entitas yang didukung, periksa https://aka.ms/azsdk/language/pii
Lihat https://aka.ms/azsdk/textanalytics/data-limits untuk batas data layanan.
Baru dalam versi v3.1: Metode klien recognize_pii_entities .
recognize_pii_entities(documents: List[str] | List[TextDocumentInput] | List[Dict[str, str]], *, categories_filter: List[str | PiiEntityCategory] | None = None, disable_service_logs: bool | None = None, domain_filter: str | PiiEntityDomain | None = None, language: str | None = None, model_version: str | None = None, show_stats: bool | None = None, string_index_type: str | None = None, **kwargs: Any) -> List[RecognizePiiEntitiesResult | DocumentError]
Parameter
Kumpulan dokumen yang akan diproses sebagai bagian dari batch ini. Jika Anda ingin menentukan ID dan bahasa berdasarkan per item, Anda harus menggunakan sebagai input daftar[TextDocumentInput] atau daftar representasi dict dari TextDocumentInput, seperti {"id": "1", "language": "en", "text": "hello world"}.
- language
- str
Representasi bahasa 2 huruf ISO 639-1 untuk seluruh batch. Misalnya, gunakan "en" untuk bahasa Inggris; "es" untuk bahasa Spanyol dll. Jika tidak diatur, gunakan "en" untuk bahasa Inggris sebagai default. Bahasa per dokumen akan lebih diutamakan daripada seluruh bahasa batch. Lihat https://aka.ms/talangs untuk bahasa yang didukung dalam LANGUAGE API.
- model_version
- str
Versi model yang digunakan untuk analisis, misalnya "terbaru". Jika versi model tidak ditentukan, API akan default ke versi non-pratinjau terbaru. Lihat di sini untuk informasi selengkapnya: https://aka.ms/text-analytics-model-versioning
- show_stats
- bool
Jika diatur ke true, respons akan berisi statistik tingkat dokumen di bidang statistik respons tingkat dokumen.
- domain_filter
- str atau PiiEntityDomain
Memfilter entitas respons ke entitas yang hanya disertakan dalam domain yang ditentukan. Yaitu, jika diatur ke 'phi', hanya akan mengembalikan entitas di domain Informasi Layanan Kesehatan Terlindungi. Lihat https://aka.ms/azsdk/language/pii untuk informasi lebih lanjut.
- categories_filter
- list[str atau PiiEntityCategory]
Alih-alih memfilter semua kategori entitas PII, Anda dapat meneruskan daftar kategori entitas PII tertentu yang ingin Anda filter. Misalnya, jika Anda hanya ingin memfilter nomor jaminan sosial AS dalam dokumen, Anda dapat meneruskan [PiiEntityCategory.US_SOCIAL_SECURITY_NUMBER] untuk kwarg ini.
- string_index_type
- str
Menentukan metode yang digunakan untuk menginterpretasikan offset string. UnicodeCodePoint, pengodean Python, adalah default. Untuk mengambil alih default Python, Anda juga dapat meneruskan Utf16CodeUnit atau TextElement_v8. Untuk informasi tambahan lihat https://aka.ms/text-analytics-offsets
- disable_service_logs
- bool
Default ke true, yang berarti bahwa layanan Bahasa tidak akan mencatat teks input Anda di sisi layanan untuk pemecahan masalah. Jika diatur ke False, layanan Bahasa mencatat teks input Anda selama 48 jam, semata-mata untuk memungkinkan pemecahan masalah dalam memberi Anda fungsi pemrosesan bahasa alami layanan. Silakan lihat Catatan Kepatuhan dan Privasi Cognitive Services untuk https://aka.ms/cs-compliance detail tambahan, dan prinsip Microsoft Responsible AI di https://www.microsoft.com/ai/responsible-ai.
Mengembalikan
Daftar RecognizePiiEntitiesResult gabungan dan DocumentError dalam urutan dokumen asli diteruskan.
Tipe hasil
Pengecualian
Contoh
Mengenali entitas informasi yang dapat diidentifikasi secara pribadi dalam batch dokumen.
import os
from azure.core.credentials import AzureKeyCredential
from azure.ai.textanalytics import TextAnalyticsClient
endpoint = os.environ["AZURE_LANGUAGE_ENDPOINT"]
key = os.environ["AZURE_LANGUAGE_KEY"]
text_analytics_client = TextAnalyticsClient(
endpoint=endpoint, credential=AzureKeyCredential(key)
)
documents = [
"""Parker Doe has repaid all of their loans as of 2020-04-25.
Their SSN is 859-98-0987. To contact them, use their phone number
555-555-5555. They are originally from Brazil and have Brazilian CPF number 998.214.865-68"""
]
result = text_analytics_client.recognize_pii_entities(documents)
docs = [doc for doc in result if not doc.is_error]
print(
"Let's compare the original document with the documents after redaction. "
"I also want to comb through all of the entities that got redacted"
)
for idx, doc in enumerate(docs):
print(f"Document text: {documents[idx]}")
print(f"Redacted document text: {doc.redacted_text}")
for entity in doc.entities:
print("...Entity '{}' with category '{}' got redacted".format(
entity.text, entity.category
))
Azure SDK for Python
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk