TextAnalyticsClient الفصل
واجهة برمجة تطبيقات خدمة اللغة هي مجموعة من مهارات معالجة اللغة الطبيعية (NLP) التي تم إنشاؤها باستخدام خوارزميات التعلم الآلي من Microsoft الأفضل في فئتها. يمكن استخدام واجهة برمجة التطبيقات لتحليل النص غير المهيكل لمهام مثل تحليل التوجه واستخراج العبارة الرئيسية والتعرف على الكيانات واكتشاف اللغة والمزيد.
يمكن العثور على مزيد من الوثائق في https://docs.microsoft.com/azure/cognitive-services/language-service/overview
- توريث
-
azure.ai.textanalytics._base_client.TextAnalyticsClientBaseTextAnalyticsClient
الدالمنشئ
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)
المعلمات
- endpoint
- str
الخدمات المعرفية المدعومة أو نقاط نهاية مورد اللغة (البروتوكول واسم المضيف، على سبيل المثال: 'https://.cognitiveservices.azure.com').
- credential
- AzureKeyCredential أو TokenCredential
بيانات الاعتماد اللازمة للعميل للاتصال ب Azure. يمكن أن يكون هذا مثيل AzureKeyCredential إذا كنت تستخدم مفتاح Cognitive Services/Language API أو بيانات اعتماد رمز مميز من identity.
- default_country_hint
- str
تعيين country_hint الافتراضية لاستخدامها لجميع العمليات. الإعدادات الافتراضية إلى "الولايات المتحدة". إذا كنت لا تريد استخدام تلميح بلد، فمرر السلسلة "none".
- default_language
- str
تعيين اللغة الافتراضية لاستخدامها لجميع العمليات. الإعدادات الافتراضية ل "en".
- api_version
- str أو TextAnalyticsApiVersion
إصدار واجهة برمجة التطبيقات للخدمة لاستخدامه للطلبات. يتم تعيينه افتراضيا إلى أحدث إصدار من الخدمة. قد يؤدي الإعداد إلى إصدار أقدم إلى تقليل توافق الميزات.
أمثلة
إنشاء TextAnalyticsClient مع نقطة النهاية ومفتاح 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))
إنشاء TextAnalyticsClient مع نقطة النهاية وبيانات اعتماد الرمز المميز من 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)
الأساليب
analyze_sentiment |
تحليل التوجه لمجموعة من المستندات. قم بتشغيل التنقيب عن الآراء باستخدام show_opinion_mining. إرجاع توقع التوجه، بالإضافة إلى درجات المشاعر لكل فئة توجه (إيجابية وسلبية ومحايدة) للمستند وكل جملة داخله. راجع https://aka.ms/azsdk/textanalytics/data-limits حدود بيانات الخدمة. جديد في الإصدار v3.1: وسيطات الكلمة الأساسية show_opinion_mining disable_service_logsstring_index_type . |
begin_abstract_summary |
ابدأ عملية تلخيص تجريدي طويلة الأمد. للحصول على مناقشة مفاهيمية للتلخيص التجريدي، راجع وثائق الخدمة: https://learn.microsoft.com/azure/cognitive-services/language-service/summarization/overview جديد في الإصدار 2023-04-01: أسلوب العميل begin_abstract_summary . |
begin_analyze_actions |
ابدأ عملية طويلة الأمد لتنفيذ مجموعة متنوعة من إجراءات تحليل النص عبر مجموعة من المستندات. نوصي باستخدام هذه الدالة إذا كنت تبحث عن تحليل مستندات أكبر، و/ أو دمج إجراءات تحليل نص متعددة في استدعاء واحد. وإلا، نوصي باستخدام نقاط نهاية محددة للإجراء، على سبيل المثال analyze_sentiment. ملاحظة راجع وثائق الخدمة للحصول على الدعم الإقليمي لميزات الإجراءات المخصصة: جديد في الإصدار v3.1: أسلوب العميل begin_analyze_actions . جديد في الإصدار 2022-05-01: خيارات الإدخال RecognizeCustomEntitiesAction و SingleLabelClassifyAction و MultiLabelClassifyAction و AnalyzeHealthcareEntitiesAction وعناصر نتائج RecognizeCustomEntitiesResultوClassifyDocumentResultوAnalyticsHealthcareEntitiesResult جديد في الإصدار 2023-04-01: خيارات الإدخال ExtractiveSummaryAction و AbstractiveSummaryAction وعناصر النتائج ExtractiveSummaryResult و AbstractiveSummaryResult المقابلة. |
begin_analyze_healthcare_entities |
تحليل كيانات الرعاية الصحية وتحديد العلاقات بين هذه الكيانات في دفعة من المستندات. ترتبط الكيانات بالمراجع التي يمكن العثور عليها في قواعد المعرفة الحالية، مثل UMLS و CHV و MSH وما إلى ذلك. نحن أيضا استخراج العلاقات الموجودة بين الكيانات، على سبيل المثال في "الموضوع أخذ 100 ملغ من ايبوبروفين"، ونحن سوف استخراج العلاقة بين "100 ملغ" الجرعة و"ايبوبروفين" الدواء. جديد في الإصدار v3.1: أسلوب العميل begin_analyze_healthcare_entities . جديد في الإصدار 2022-05-01: وسيطة الكلمة الأساسية display_name . |
begin_extract_summary |
ابدأ عملية تلخيص استخراجية طويلة الأمد. للحصول على مناقشة مفاهيمية للتلخيص الاستخراجي، راجع وثائق الخدمة: https://learn.microsoft.com/azure/cognitive-services/language-service/summarization/overview جديد في الإصدار 2023-04-01: أسلوب العميل begin_extract_summary . |
begin_multi_label_classify |
ابدأ عملية تصنيف مخصصة متعددة التسميات طويلة الأمد. للحصول على معلومات حول الدعم الإقليمي للميزات المخصصة وكيفية تدريب نموذج لتصنيف مستنداتك، راجع https://aka.ms/azsdk/textanalytics/customfunctionalities جديد في الإصدار 2022-05-01: أسلوب العميل begin_multi_label_classify . |
begin_recognize_custom_entities |
ابدأ عملية التعرف على الكيانات المسماة المخصصة طويلة الأمد. للحصول على معلومات حول الدعم الإقليمي للميزات المخصصة وكيفية تدريب نموذج للتعرف على الكيانات المخصصة، راجع https://aka.ms/azsdk/textanalytics/customentityrecognition جديد في الإصدار 2022-05-01: أسلوب العميل begin_recognize_custom_entities . |
begin_single_label_classify |
ابدأ عملية تصنيف تسمية واحدة مخصصة طويلة الأمد. للحصول على معلومات حول الدعم الإقليمي للميزات المخصصة وكيفية تدريب نموذج لتصنيف مستنداتك، راجع https://aka.ms/azsdk/textanalytics/customfunctionalities جديد في الإصدار 2022-05-01: أسلوب العميل begin_single_label_classify . |
close |
أغلق مآخذ التوصيل التي يفتحها العميل. استدعاء هذا الأسلوب غير ضروري عند استخدام العميل كمدير سياق. |
detect_language |
الكشف عن لغة دفعة من المستندات. إرجاع اللغة المكتشفة ودرجة رقمية بين صفر وواحد. تشير الدرجات القريبة من واحد إلى يقين بنسبة 100٪ أن اللغة المحددة صحيحة. راجع https://aka.ms/talangs قائمة اللغات الممكنة. راجع https://aka.ms/azsdk/textanalytics/data-limits حدود بيانات الخدمة. جديد في الإصدار v3.1: وسيطة الكلمة الأساسية disable_service_logs . |
extract_key_phrases |
استخراج العبارات الرئيسية من مجموعة من المستندات. إرجاع قائمة بالسلاسل التي تدل على العبارات الرئيسية في نص الإدخال. على سبيل المثال، بالنسبة لنص الإدخال "كان الطعام لذيذا وكان هناك فريق عمل رائع"، ترجع واجهة برمجة التطبيقات نقاط الحوار الرئيسية: "الطعام" و"فريق عمل رائع" راجع https://aka.ms/azsdk/textanalytics/data-limits حدود بيانات الخدمة. جديد في الإصدار v3.1: وسيطة الكلمة الأساسية disable_service_logs . |
recognize_entities |
التعرف على الكيانات لمجموعة من المستندات. يحدد ويصنف الكيانات في النص كأشخاص وأماكن ومنظمات وتاريخ/وقت وكميات ونسب مئوية وعملات والمزيد. للحصول على قائمة أنواع الكيانات المدعومة، تحقق مما يلي: https://aka.ms/taner راجع https://aka.ms/azsdk/textanalytics/data-limits حدود بيانات الخدمة. جديد في الإصدار v3.1: وسيطات الكلمات الأساسية disable_service_logs string_index_type. |
recognize_linked_entities |
التعرف على الكيانات المرتبطة من قاعدة معارف معروفة لمجموعة من المستندات. يحدد ويزيل الغموض عن هوية كل كيان موجود في النص (على سبيل المثال، تحديد ما إذا كان تكرار كلمة المريخ يشير إلى الكوكب، أو إلى إله الحرب الروماني). ترتبط الكيانات المعترف بها بعناوين URL قاعدة معارف معروفة، مثل ويكيبيديا. راجع https://aka.ms/azsdk/textanalytics/data-limits حدود بيانات الخدمة. جديد في الإصدار v3.1: وسيطات الكلمات الأساسية disable_service_logs string_index_type. |
recognize_pii_entities |
التعرف على الكيانات التي تحتوي على معلومات شخصية لمجموعة من المستندات. إرجاع قائمة بكيانات المعلومات الشخصية ("SSN"، و"الحساب البنكي"، وما إلى ذلك) في المستند. للحصول على قائمة أنواع الكيانات المدعومة، تحقق https://aka.ms/azsdk/language/pii راجع https://aka.ms/azsdk/textanalytics/data-limits حدود بيانات الخدمة. جديد في الإصدار v3.1: أسلوب العميل recognize_pii_entities . |
analyze_sentiment
تحليل التوجه لمجموعة من المستندات. قم بتشغيل التنقيب عن الآراء باستخدام show_opinion_mining.
إرجاع توقع التوجه، بالإضافة إلى درجات المشاعر لكل فئة توجه (إيجابية وسلبية ومحايدة) للمستند وكل جملة داخله.
راجع https://aka.ms/azsdk/textanalytics/data-limits حدود بيانات الخدمة.
جديد في الإصدار v3.1: وسيطات الكلمة الأساسية show_opinion_mining disable_service_logsstring_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]
المعلمات
مجموعة المستندات المراد معالجتها كجزء من هذه الدفعة. إذا كنت ترغب في تحديد المعرف واللغة على أساس كل عنصر، فيجب عليك استخدام كإدخال قائمة[TextDocumentInput] أو قائمة بتمثيلات الإملاء ل TextDocumentInput، مثل {"id": "1"، "language": "en"، "text": "hello world"}.
- show_opinion_mining
- bool
ما إذا كنت تريد إبداء آراء الجملة وإجراء تحليل أكثر دقة حول جوانب المنتج أو الخدمة (المعروفة أيضا باسم تحليل التوجه القائم على الجانب). إذا تم تعيينها إلى true، فستحتوي الكائنات التي تم إرجاعها SentenceSentiment على خاصية mined_opinions تحتوي على نتيجة هذا التحليل. متوفر فقط لإصدار واجهة برمجة التطبيقات v3.1 وما فوق.
- language
- str
تمثيل 2 حرف ISO 639-1 للغة للدفعة بأكملها. على سبيل المثال، استخدم "en" للغة الإنجليزية؛ "es" للإسبانية الخ. إذا لم يتم تعيينه، يستخدم "en" للغة الإنجليزية كافتراضي. ستكون للغة لكل مستند الأسبقية على لغة الدفعة بأكملها. راجع https://aka.ms/talangs اللغات المدعومة في واجهة برمجة تطبيقات اللغة.
- model_version
- str
إصدار النموذج المراد استخدامه للتحليل، على سبيل المثال "الأحدث". إذا لم يتم تحديد إصدار نموذج، فسيتم تعيين واجهة برمجة التطبيقات افتراضيا إلى أحدث إصدار غير معاينة. راجع هنا لمزيد من المعلومات: https://aka.ms/text-analytics-model-versioning
- show_stats
- bool
إذا تم تعيينها إلى صحيح، فستحتوي الاستجابة على إحصائيات على مستوى المستند في حقل الإحصائيات للاستجابة على مستوى المستند.
- string_index_type
- str
يحدد الأسلوب المستخدم لتفسير إزاحات السلسلة. UnicodeCodePoint، ترميز Python، هو الافتراضي. لتجاوز Python الافتراضي، يمكنك أيضا تمرير Utf16CodeUnit أو TextElement_v8. للحصول على معلومات إضافية، راجع https://aka.ms/text-analytics-offsets
- disable_service_logs
- bool
إذا تم تعيينه إلى صحيح، يمكنك إلغاء الاشتراك في تسجيل إدخال النص على جانب الخدمة لاستكشاف الأخطاء وإصلاحها. بشكل افتراضي، تسجل خدمة Language نص الإدخال لمدة 48 ساعة، فقط للسماح باستكشاف المشكلات وإصلاحها في تزويدك بوظائف معالجة اللغة الطبيعية للخدمة. يؤدي تعيين هذه المعلمة إلى true إلى تعطيل تسجيل الإدخال وقد يحد من قدرتنا على معالجة المشكلات التي تحدث. يرجى الاطلاع على ملاحظات التوافق والخصوصية للخدمات المعرفية في https://aka.ms/cs-compliance للحصول على تفاصيل إضافية، ومبادئ الذكاء الاصطناعي المسؤولة من Microsoft على https://www.microsoft.com/ai/responsible-ai.
المرتجعات
القائمة المجمعة ل AnalyzeSentimentResult و DocumentError بالترتيب الذي تم تمرير المستندات الأصلية به.
نوع الإرجاع
استثناءات
أمثلة
تحليل التوجه في دفعة من المستندات.
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
ابدأ عملية تلخيص تجريدي طويلة الأمد.
للحصول على مناقشة مفاهيمية للتلخيص التجريدي، راجع وثائق الخدمة: https://learn.microsoft.com/azure/cognitive-services/language-service/summarization/overview
جديد في الإصدار 2023-04-01: أسلوب العميل 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]]
المعلمات
مجموعة المستندات المراد معالجتها كجزء من هذه الدفعة. إذا كنت ترغب في تحديد المعرف واللغة على أساس كل عنصر، فيجب عليك استخدام كإدخال قائمة[TextDocumentInput] أو قائمة بتمثيلات الإملاء ل TextDocumentInput، مثل {"id": "1"، "language": "en"، "text": "hello world"}.
- language
- str
تمثيل 2 حرف ISO 639-1 للغة للدفعة بأكملها. على سبيل المثال، استخدم "en" للغة الإنجليزية؛ "es" للإسبانية الخ. إذا لم يتم تعيينه، يستخدم "en" للغة الإنجليزية كافتراضي. ستكون للغة لكل مستند الأسبقية على لغة الدفعة بأكملها. راجع https://aka.ms/talangs اللغات المدعومة في واجهة برمجة تطبيقات اللغة.
- show_stats
- bool
إذا تم تعيينها إلى true، فستحتوي الاستجابة على إحصائيات على مستوى المستند.
إصدار النموذج المراد استخدامه للتحليل، على سبيل المثال "الأحدث". إذا لم يتم تحديد إصدار نموذج، فسيتم تعيين واجهة برمجة التطبيقات افتراضيا إلى أحدث إصدار غير معاينة. راجع هنا لمزيد من المعلومات: https://aka.ms/text-analytics-model-versioning
- disable_service_logs
- bool
إذا تم تعيينه إلى صحيح، يمكنك إلغاء الاشتراك في تسجيل إدخال النص على جانب الخدمة لاستكشاف الأخطاء وإصلاحها. بشكل افتراضي، تسجل خدمة Language نص الإدخال لمدة 48 ساعة، فقط للسماح باستكشاف المشكلات وإصلاحها في تزويدك بوظائف معالجة اللغة الطبيعية للخدمة. يؤدي تعيين هذه المعلمة إلى true إلى تعطيل تسجيل الإدخال وقد يحد من قدرتنا على معالجة المشكلات التي تحدث. يرجى الاطلاع على ملاحظات التوافق والخصوصية للخدمات المعرفية في https://aka.ms/cs-compliance للحصول على تفاصيل إضافية، ومبادئ الذكاء الاصطناعي المسؤولة من Microsoft على https://www.microsoft.com/ai/responsible-ai.
- polling_interval
- int
وقت الانتظار بين استقصاءين لعمليات LRO إذا لم يكن هناك عنوان Retry-After. الإعدادات الافتراضية إلى 5 ثوان.
- continuation_token
- str
استدعاء continuation_token() على كائن الاستقصاء لحفظ حالة العملية طويلة الأمد (LRO) في رمز مميز مبهم. مرر القيمة كوسيطة الكلمة الأساسية continuation_token لإعادة تشغيل LRO من حالة محفوظة.
- display_name
- str
اسم عرض اختياري لتعيينه للتحليل المطلوب.
المرتجعات
مثيل TextAnalysisLROPoller. استدعاء result() على هذا الكائن لإرجاع صفحة غير متجانسة من AbstractiveSummaryResult و DocumentError.
نوع الإرجاع
استثناءات
أمثلة
إجراء تلخيص تجريدي على دفعة من المستندات.
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
ابدأ عملية طويلة الأمد لتنفيذ مجموعة متنوعة من إجراءات تحليل النص عبر مجموعة من المستندات.
نوصي باستخدام هذه الدالة إذا كنت تبحث عن تحليل مستندات أكبر، و/ أو دمج إجراءات تحليل نص متعددة في استدعاء واحد. وإلا، نوصي باستخدام نقاط نهاية محددة للإجراء، على سبيل المثال analyze_sentiment.
ملاحظة
راجع وثائق الخدمة للحصول على الدعم الإقليمي لميزات الإجراءات المخصصة:
جديد في الإصدار v3.1: أسلوب العميل begin_analyze_actions .
جديد في الإصدار 2022-05-01: خيارات الإدخال RecognizeCustomEntitiesAction و SingleLabelClassifyAction و MultiLabelClassifyAction و AnalyzeHealthcareEntitiesAction وعناصر نتائج RecognizeCustomEntitiesResultوClassifyDocumentResultوAnalyticsHealthcareEntitiesResult
جديد في الإصدار 2023-04-01: خيارات الإدخال ExtractiveSummaryAction و AbstractiveSummaryAction وعناصر النتائج ExtractiveSummaryResult و AbstractiveSummaryResult المقابلة.
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]]]
المعلمات
مجموعة المستندات المراد معالجتها كجزء من هذه الدفعة. إذا كنت ترغب في تحديد المعرف واللغة على أساس كل عنصر، فيجب عليك استخدام كإدخال قائمة[TextDocumentInput] أو قائمة بتمثيلات الإملاء ل TextDocumentInput، مثل {"id": "1"، "language": "en"، "text": "hello world"}.
- actions
- list[RecognizeEntitiesAction أو RecognizePiiEntitiesAction أو ExtractKeyPhrasesAction أو RecognizeLinkedEntitiesAction أو AnalyzeSentimentAction أو RecognizeCustomEntitiesAction أو SingleLabelClassifyAction أو MultiLabelClassifyAction أو AnalyzeHealthcareEntitiesAction أو ExtractiveSummaryAction أو AbstractiveSummaryAction]
قائمة إجراءات غير متجانسة لتنفيذها على مستندات الإدخال. يغلف كل كائن إجراء المعلمات المستخدمة لنوع إجراء معين. ستكون نتائج الإجراء بنفس ترتيب إجراءات الإدخال.
- display_name
- str
اسم عرض اختياري لتعيينه للتحليل المطلوب.
- language
- str
تمثيل 2 حرف ISO 639-1 للغة للدفعة بأكملها. على سبيل المثال، استخدم "en" للغة الإنجليزية؛ "es" للإسبانية الخ. إذا لم يتم تعيينه، يستخدم "en" للغة الإنجليزية كافتراضي. ستكون للغة لكل مستند الأسبقية على لغة الدفعة بأكملها. راجع https://aka.ms/talangs اللغات المدعومة في واجهة برمجة تطبيقات اللغة.
- show_stats
- bool
إذا تم تعيينها إلى true، فستحتوي الاستجابة على إحصائيات على مستوى المستند.
- polling_interval
- int
وقت الانتظار بين استقصاءين لعمليات LRO إذا لم يكن هناك عنوان Retry-After. الإعدادات الافتراضية إلى 5 ثوان.
- continuation_token
- str
استدعاء continuation_token() على كائن الاستقصاء لحفظ حالة العملية طويلة الأمد (LRO) في رمز مميز مبهم. مرر القيمة كوسيطة الكلمة الأساسية continuation_token لإعادة تشغيل LRO من حالة محفوظة.
المرتجعات
مثيل TextAnalysisLROPoller. استدعاء result() على كائن poller لإرجاع قائمة قوائم غير متجانسة قابلة للصفحة. يتم ترتيب قائمة القوائم هذه أولا بواسطة المستندات التي تقوم بإدخالها، ثم يتم ترتيبها بواسطة الإجراءات التي تقوم بإدخالها. على سبيل المثال، إذا كان لديك إدخال مستندات ["Hello"، و"world"]، والإجراءات RecognizeEntitiesAction و AnalyzeSentimentAction، عند التكرار عبر قائمة القوائم، ستقوم أولا بالتكرار عبر نتائج الإجراء لمستند "Hello"، والحصول على RecognizeEntitiesResult "Hello"، ثم AnalyzeSentimentResult على "Hello". ثم، سوف تحصل على RecognizeEntitiesResult و AnalyzeSentimentResult من "العالم".
نوع الإرجاع
استثناءات
أمثلة
ابدأ عملية طويلة الأمد لتنفيذ مجموعة متنوعة من إجراءات تحليل النص عبر مجموعة من المستندات.
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
تحليل كيانات الرعاية الصحية وتحديد العلاقات بين هذه الكيانات في دفعة من المستندات.
ترتبط الكيانات بالمراجع التي يمكن العثور عليها في قواعد المعرفة الحالية، مثل UMLS و CHV و MSH وما إلى ذلك.
نحن أيضا استخراج العلاقات الموجودة بين الكيانات، على سبيل المثال في "الموضوع أخذ 100 ملغ من ايبوبروفين"، ونحن سوف استخراج العلاقة بين "100 ملغ" الجرعة و"ايبوبروفين" الدواء.
جديد في الإصدار v3.1: أسلوب العميل begin_analyze_healthcare_entities .
جديد في الإصدار 2022-05-01: وسيطة الكلمة الأساسية 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]]
المعلمات
مجموعة المستندات التي يجب معالجتها كجزء من هذه الدفعة. إذا كنت ترغب في تحديد المعرف واللغة على أساس كل عنصر، يجب عليك استخدام كإدخال قائمة[TextDocumentInput] أو قائمة بتمثيلات TextDocumentInputالإملاء ل ، مثل {"id": "1"، "language": "en"، "text": "hello world"}.
- model_version
- str
إصدار النموذج المراد استخدامه للتحليل، على سبيل المثال "الأحدث". إذا لم يتم تحديد إصدار نموذج، فسيتم تعيين واجهة برمجة التطبيقات افتراضيا إلى أحدث إصدار غير معاينة. راجع هنا لمزيد من المعلومات: https://aka.ms/text-analytics-model-versioning
- show_stats
- bool
إذا تم تعيينه إلى صحيح، فستحتوي الاستجابة على إحصائيات على مستوى المستند.
- language
- str
يمثل الحرفان ISO 639-1 للغة للدفعة بأكملها. على سبيل المثال، استخدم "en" للغة الإنجليزية؛ "es" للإسبانية الخ. إذا لم يتم تعيينه، يستخدم "en" للغة الإنجليزية كافتراضي. ستكون للغة لكل مستند الأسبقية على لغة الدفعة بأكملها. راجع https://aka.ms/talangs اللغات المدعومة في واجهة برمجة تطبيقات اللغة.
- display_name
- str
اسم عرض اختياري لتعيينه للتحليل المطلوب.
- string_index_type
- str
يحدد الأسلوب المستخدم لتفسير إزاحات السلسلة. UnicodeCodePoint، ترميز Python، هو الافتراضي. لتجاوز Python الافتراضي، يمكنك أيضا تمرير Utf16CodeUnit أو TextElement_v8. للحصول على معلومات إضافية، راجع https://aka.ms/text-analytics-offsets
- polling_interval
- int
وقت الانتظار بين استقصاءين لعمليات LRO إذا لم يكن هناك عنوان Retry-After موجود. الإعدادات الافتراضية إلى 5 ثوان.
- continuation_token
- str
استدعاء continuation_token() على كائن الاستقصاء لحفظ حالة العملية طويلة الأمد (LRO) في رمز مميز معتم. مرر القيمة كوسيطة الكلمة الأساسية continuation_token لإعادة تشغيل LRO من حالة محفوظة.
- disable_service_logs
- bool
الإعدادات الافتراضية إلى true، مما يعني أن خدمة Language لن تسجل نص الإدخال الخاص بك على جانب الخدمة لاستكشاف الأخطاء وإصلاحها. إذا تم تعيينه إلى False، فإن خدمة Language تسجل نص الإدخال لمدة 48 ساعة، فقط للسماح باستكشاف المشكلات وإصلاحها في تزويدك بوظائف معالجة اللغة الطبيعية للخدمة. يرجى الاطلاع على ملاحظات التوافق والخصوصية للخدمات المعرفية في للحصول على https://aka.ms/cs-compliance تفاصيل إضافية، ومبادئ الذكاء الاصطناعي المسؤولة من Microsoft على https://www.microsoft.com/ai/responsible-ai.
المرتجعات
مثيل ل AnalyzeHealthcareEntitiesLROPoller. استدعاء result() على هذا الكائن لإرجاع صفحة غير متجانسة من AnalyzeHealthcareEntitiesResult و DocumentError.
نوع الإرجاع
استثناءات
أمثلة
التعرف على كيانات الرعاية الصحية في دفعة من المستندات.
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
ابدأ عملية تلخيص استخراجية طويلة الأمد.
للحصول على مناقشة مفاهيمية للتلخيص الاستخراجي، راجع وثائق الخدمة: https://learn.microsoft.com/azure/cognitive-services/language-service/summarization/overview
جديد في الإصدار 2023-04-01: أسلوب العميل 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]]
المعلمات
مجموعة المستندات التي يجب معالجتها كجزء من هذه الدفعة. إذا كنت ترغب في تحديد المعرف واللغة على أساس كل عنصر، يجب عليك استخدام كإدخال قائمة[TextDocumentInput] أو قائمة بتمثيلات TextDocumentInputالإملاء ل ، مثل {"id": "1"، "language": "en"، "text": "hello world"}.
- language
- str
يمثل الحرفان ISO 639-1 للغة للدفعة بأكملها. على سبيل المثال، استخدم "en" للغة الإنجليزية؛ "es" للإسبانية الخ. إذا لم يتم تعيينه، يستخدم "en" للغة الإنجليزية كافتراضي. ستكون للغة لكل مستند الأسبقية على لغة الدفعة بأكملها. راجع https://aka.ms/talangs اللغات المدعومة في واجهة برمجة تطبيقات اللغة.
- show_stats
- bool
إذا تم تعيينه إلى صحيح، فستحتوي الاستجابة على إحصائيات على مستوى المستند.
الحد الأقصى لعدد الجمل المراد إرجاعها. الإعدادات الافتراضية معينة على 3.
إصدار النموذج المراد استخدامه للتحليل، على سبيل المثال "الأحدث". إذا لم يتم تحديد إصدار نموذج، فسيتم تعيين واجهة برمجة التطبيقات افتراضيا إلى أحدث إصدار غير معاينة. راجع هنا لمزيد من المعلومات: https://aka.ms/text-analytics-model-versioning
- disable_service_logs
- bool
إذا تم تعيينه إلى صحيح، يمكنك إلغاء الاشتراك في تسجيل إدخال النص الخاص بك على جانب الخدمة لاستكشاف الأخطاء وإصلاحها. بشكل افتراضي، تسجل خدمة Language نص الإدخال لمدة 48 ساعة، فقط للسماح باستكشاف المشكلات وإصلاحها في تزويدك بوظائف معالجة اللغة الطبيعية للخدمة. يؤدي تعيين هذه المعلمة إلى true إلى تعطيل تسجيل الإدخال وقد يحد من قدرتنا على معالجة المشكلات التي تحدث. يرجى الاطلاع على ملاحظات التوافق والخصوصية للخدمات المعرفية في للحصول على https://aka.ms/cs-compliance تفاصيل إضافية، ومبادئ الذكاء الاصطناعي المسؤولة من Microsoft على https://www.microsoft.com/ai/responsible-ai.
- polling_interval
- int
وقت الانتظار بين استقصاءين لعمليات LRO إذا لم يكن هناك عنوان Retry-After موجود. الإعدادات الافتراضية إلى 5 ثوان.
- continuation_token
- str
استدعاء continuation_token() على كائن الاستقصاء لحفظ حالة العملية طويلة الأمد (LRO) في رمز مميز معتم. مرر القيمة كوسيطة الكلمة الأساسية continuation_token لإعادة تشغيل LRO من حالة محفوظة.
- display_name
- str
اسم عرض اختياري لتعيينه للتحليل المطلوب.
المرتجعات
مثيل TextAnalysisLROPoller. استدعاء result() على هذا الكائن لإرجاع صفحة غير متجانسة من ExtractiveSummaryResult و DocumentError.
نوع الإرجاع
استثناءات
أمثلة
إجراء تلخيص استخراجي على دفعة من المستندات.
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
ابدأ عملية تصنيف مخصصة متعددة التسميات طويلة الأمد.
للحصول على معلومات حول الدعم الإقليمي للميزات المخصصة وكيفية تدريب نموذج لتصنيف مستنداتك، راجع https://aka.ms/azsdk/textanalytics/customfunctionalities
جديد في الإصدار 2022-05-01: أسلوب العميل 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]]
المعلمات
مجموعة المستندات التي يجب معالجتها كجزء من هذه الدفعة. إذا كنت ترغب في تحديد المعرف واللغة على أساس كل عنصر، يجب عليك استخدام كإدخال قائمة[TextDocumentInput] أو قائمة بتمثيلات TextDocumentInputالإملاء ل ، مثل {"id": "1"، "language": "en"، "text": "hello world"}.
- language
- str
يمثل الحرفان ISO 639-1 للغة للدفعة بأكملها. على سبيل المثال، استخدم "en" للغة الإنجليزية؛ "es" للإسبانية الخ. إذا لم يتم تعيينه، يستخدم "en" للغة الإنجليزية كافتراضي. ستكون للغة لكل مستند الأسبقية على لغة الدفعة بأكملها. راجع https://aka.ms/talangs اللغات المدعومة في واجهة برمجة تطبيقات اللغة.
- show_stats
- bool
إذا تم تعيينه إلى صحيح، فستحتوي الاستجابة على إحصائيات على مستوى المستند.
- disable_service_logs
- bool
إذا تم تعيينه إلى صحيح، يمكنك إلغاء الاشتراك في تسجيل إدخال النص الخاص بك على جانب الخدمة لاستكشاف الأخطاء وإصلاحها. بشكل افتراضي، تسجل خدمة Language نص الإدخال لمدة 48 ساعة، فقط للسماح باستكشاف المشكلات وإصلاحها في تزويدك بوظائف معالجة اللغة الطبيعية للخدمة. يؤدي تعيين هذه المعلمة إلى true إلى تعطيل تسجيل الإدخال وقد يحد من قدرتنا على معالجة المشكلات التي تحدث. يرجى الاطلاع على ملاحظات التوافق والخصوصية للخدمات المعرفية في للحصول على https://aka.ms/cs-compliance تفاصيل إضافية، ومبادئ الذكاء الاصطناعي المسؤولة من Microsoft على https://www.microsoft.com/ai/responsible-ai.
- polling_interval
- int
وقت الانتظار بين استقصاءين لعمليات LRO إذا لم يكن هناك عنوان Retry-After موجود. الإعدادات الافتراضية إلى 5 ثوان.
- continuation_token
- str
استدعاء continuation_token() على كائن الاستقصاء لحفظ حالة العملية طويلة الأمد (LRO) في رمز مميز معتم. مرر القيمة كوسيطة الكلمة الأساسية continuation_token لإعادة تشغيل LRO من حالة محفوظة.
- display_name
- str
اسم عرض اختياري لتعيينه للتحليل المطلوب.
المرتجعات
مثيل TextAnalysisLROPoller. استدعاء result() على هذا الكائن لإرجاع صفحة غير متجانسة من ClassifyDocumentResult و DocumentError.
نوع الإرجاع
استثناءات
أمثلة
إجراء تصنيف متعدد التسميات على دفعة من المستندات.
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
ابدأ عملية التعرف على الكيانات المسماة المخصصة طويلة الأمد.
للحصول على معلومات حول الدعم الإقليمي للميزات المخصصة وكيفية تدريب نموذج للتعرف على الكيانات المخصصة، راجع https://aka.ms/azsdk/textanalytics/customentityrecognition
جديد في الإصدار 2022-05-01: أسلوب العميل 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]]
المعلمات
مجموعة المستندات التي يجب معالجتها كجزء من هذه الدفعة. إذا كنت ترغب في تحديد المعرف واللغة على أساس كل عنصر، يجب عليك استخدام كإدخال قائمة[TextDocumentInput] أو قائمة بتمثيلات TextDocumentInputالإملاء ل ، مثل {"id": "1"، "language": "en"، "text": "hello world"}.
- language
- str
يمثل الحرفان ISO 639-1 للغة للدفعة بأكملها. على سبيل المثال، استخدم "en" للغة الإنجليزية؛ "es" للإسبانية الخ. إذا لم يتم تعيينه، يستخدم "en" للغة الإنجليزية كافتراضي. ستكون للغة لكل مستند الأسبقية على لغة الدفعة بأكملها. راجع https://aka.ms/talangs اللغات المدعومة في واجهة برمجة تطبيقات اللغة.
- show_stats
- bool
إذا تم تعيينه إلى صحيح، فستحتوي الاستجابة على إحصائيات على مستوى المستند.
- disable_service_logs
- bool
إذا تم تعيينه إلى صحيح، يمكنك إلغاء الاشتراك في تسجيل إدخال النص على جانب الخدمة لاستكشاف الأخطاء وإصلاحها. بشكل افتراضي، تسجل خدمة Language نص الإدخال لمدة 48 ساعة، فقط للسماح باستكشاف المشكلات وإصلاحها في تزويدك بوظائف معالجة اللغة الطبيعية للخدمة. يؤدي تعيين هذه المعلمة إلى true إلى تعطيل تسجيل الإدخال وقد يحد من قدرتنا على معالجة المشكلات التي تحدث. يرجى الاطلاع على ملاحظات التوافق والخصوصية للخدمات المعرفية في https://aka.ms/cs-compliance للحصول على تفاصيل إضافية، ومبادئ الذكاء الاصطناعي المسؤولة من Microsoft على https://www.microsoft.com/ai/responsible-ai.
- string_index_type
- str
يحدد الأسلوب المستخدم لتفسير إزاحات السلسلة. UnicodeCodePoint، ترميز Python، هو الافتراضي. لتجاوز Python الافتراضي، يمكنك أيضا تمرير Utf16CodeUnit أو TextElement_v8. للحصول على معلومات إضافية، راجع https://aka.ms/text-analytics-offsets
- polling_interval
- int
وقت الانتظار بين استقصاءين لعمليات LRO إذا لم يكن هناك عنوان Retry-After. الإعدادات الافتراضية إلى 5 ثوان.
- continuation_token
- str
استدعاء continuation_token() على كائن الاستقصاء لحفظ حالة العملية طويلة الأمد (LRO) في رمز مميز مبهم. مرر القيمة كوسيطة الكلمة الأساسية continuation_token لإعادة تشغيل LRO من حالة محفوظة.
- display_name
- str
اسم عرض اختياري لتعيينه للتحليل المطلوب.
المرتجعات
مثيل TextAnalysisLROPoller. استدعاء result() على هذا الكائن لإرجاع صفحة غير متجانسة من RecognizeCustomEntitiesResult و DocumentError.
نوع الإرجاع
استثناءات
أمثلة
التعرف على الكيانات المخصصة في دفعة من المستندات.
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
ابدأ عملية تصنيف تسمية واحدة مخصصة طويلة الأمد.
للحصول على معلومات حول الدعم الإقليمي للميزات المخصصة وكيفية تدريب نموذج لتصنيف مستنداتك، راجع https://aka.ms/azsdk/textanalytics/customfunctionalities
جديد في الإصدار 2022-05-01: أسلوب العميل 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]]
المعلمات
مجموعة المستندات المراد معالجتها كجزء من هذه الدفعة. إذا كنت ترغب في تحديد المعرف واللغة على أساس كل عنصر، فيجب عليك استخدام كإدخال قائمة[TextDocumentInput] أو قائمة بتمثيلات الإملاء ل TextDocumentInput، مثل {"id": "1"، "language": "en"، "text": "hello world"}.
- language
- str
تمثيل 2 حرف ISO 639-1 للغة للدفعة بأكملها. على سبيل المثال، استخدم "en" للغة الإنجليزية؛ "es" للإسبانية الخ. إذا لم يتم تعيينه، يستخدم "en" للغة الإنجليزية كافتراضي. ستكون للغة لكل مستند الأسبقية على لغة الدفعة بأكملها. راجع https://aka.ms/talangs اللغات المدعومة في واجهة برمجة تطبيقات اللغة.
- show_stats
- bool
إذا تم تعيينها إلى true، فستحتوي الاستجابة على إحصائيات على مستوى المستند.
- disable_service_logs
- bool
إذا تم تعيينه إلى صحيح، يمكنك إلغاء الاشتراك في تسجيل إدخال النص على جانب الخدمة لاستكشاف الأخطاء وإصلاحها. بشكل افتراضي، تسجل خدمة Language نص الإدخال لمدة 48 ساعة، فقط للسماح باستكشاف المشكلات وإصلاحها في تزويدك بوظائف معالجة اللغة الطبيعية للخدمة. يؤدي تعيين هذه المعلمة إلى true إلى تعطيل تسجيل الإدخال وقد يحد من قدرتنا على معالجة المشكلات التي تحدث. يرجى الاطلاع على ملاحظات التوافق والخصوصية للخدمات المعرفية في https://aka.ms/cs-compliance للحصول على تفاصيل إضافية، ومبادئ الذكاء الاصطناعي المسؤولة من Microsoft على https://www.microsoft.com/ai/responsible-ai.
- polling_interval
- int
وقت الانتظار بين استقصاءين لعمليات LRO إذا لم يكن هناك عنوان Retry-After. الإعدادات الافتراضية إلى 5 ثوان.
- continuation_token
- str
استدعاء continuation_token() على كائن الاستقصاء لحفظ حالة العملية طويلة الأمد (LRO) في رمز مميز مبهم. مرر القيمة كوسيطة الكلمة الأساسية continuation_token لإعادة تشغيل LRO من حالة محفوظة.
- display_name
- str
اسم عرض اختياري لتعيينه للتحليل المطلوب.
المرتجعات
مثيل TextAnalysisLROPoller. استدعاء result() على هذا الكائن لإرجاع صفحة غير متجانسة من ClassifyDocumentResult و DocumentError.
نوع الإرجاع
استثناءات
أمثلة
إجراء تصنيف تسمية واحدة على دفعة من المستندات.
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
أغلق مآخذ التوصيل التي يفتحها العميل. استدعاء هذا الأسلوب غير ضروري عند استخدام العميل كمدير سياق.
close() -> None
استثناءات
detect_language
الكشف عن لغة دفعة من المستندات.
إرجاع اللغة المكتشفة ودرجة رقمية بين صفر وواحد. تشير الدرجات القريبة من واحد إلى يقين بنسبة 100٪ أن اللغة المحددة صحيحة. راجع https://aka.ms/talangs قائمة اللغات الممكنة.
راجع https://aka.ms/azsdk/textanalytics/data-limits حدود بيانات الخدمة.
جديد في الإصدار v3.1: وسيطة الكلمة الأساسية 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]
المعلمات
مجموعة المستندات المراد معالجتها كجزء من هذه الدفعة. إذا كنت ترغب في تحديد المعرف country_hint على أساس كل عنصر، فيجب عليك استخدام كمدخلات قائمة[DetectLanguageInput] أو قائمة بتمثيلات الإملاء ل DetectLanguageInput، مثل {"id": "1"، "country_hint": "us"، "text": "hello world"}.
- country_hint
- str
تلميح بلد الأصل للدفعة بأكملها. يقبل رمزي بلد حرفين محددين بواسطة ISO 3166-1 alpha-2. ستأخذ تلميحات كل بلد مستند الأسبقية على تلميحات الدفعة بأكملها. الإعدادات الافتراضية إلى "الولايات المتحدة". إذا كنت لا تريد استخدام تلميح بلد، فمرر السلسلة "none".
- model_version
- str
إصدار النموذج المراد استخدامه للتحليل، على سبيل المثال "الأحدث". إذا لم يتم تحديد إصدار نموذج، فسيتم تعيين واجهة برمجة التطبيقات افتراضيا إلى أحدث إصدار غير معاينة. راجع هنا لمزيد من المعلومات: https://aka.ms/text-analytics-model-versioning
- show_stats
- bool
إذا تم تعيينها إلى صحيح، فستحتوي الاستجابة على إحصائيات على مستوى المستند في حقل الإحصائيات للاستجابة على مستوى المستند.
- disable_service_logs
- bool
إذا تم تعيينه إلى صحيح، يمكنك إلغاء الاشتراك في تسجيل إدخال النص على جانب الخدمة لاستكشاف الأخطاء وإصلاحها. بشكل افتراضي، تسجل خدمة Language نص الإدخال لمدة 48 ساعة، فقط للسماح باستكشاف المشكلات وإصلاحها في تزويدك بوظائف معالجة اللغة الطبيعية للخدمة. يؤدي تعيين هذه المعلمة إلى true إلى تعطيل تسجيل الإدخال وقد يحد من قدرتنا على معالجة المشكلات التي تحدث. يرجى الاطلاع على ملاحظات التوافق والخصوصية للخدمات المعرفية في https://aka.ms/cs-compliance للحصول على تفاصيل إضافية، ومبادئ الذكاء الاصطناعي المسؤولة من Microsoft على https://www.microsoft.com/ai/responsible-ai.
المرتجعات
القائمة المجمعة ل DetectLanguageResult و DocumentError بالترتيب الذي تم تمرير المستندات الأصلية به.
نوع الإرجاع
استثناءات
أمثلة
الكشف عن اللغة في دفعة من المستندات.
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
استخراج العبارات الرئيسية من مجموعة من المستندات.
إرجاع قائمة بالسلاسل التي تدل على العبارات الرئيسية في نص الإدخال. على سبيل المثال، بالنسبة لنص الإدخال "كان الطعام لذيذا وكان هناك فريق عمل رائع"، ترجع واجهة برمجة التطبيقات نقاط الحوار الرئيسية: "الطعام" و"فريق عمل رائع"
راجع https://aka.ms/azsdk/textanalytics/data-limits حدود بيانات الخدمة.
جديد في الإصدار v3.1: وسيطة الكلمة الأساسية 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]
المعلمات
مجموعة المستندات المراد معالجتها كجزء من هذه الدفعة. إذا كنت ترغب في تحديد المعرف واللغة على أساس كل عنصر، فيجب عليك استخدام كإدخال قائمة[TextDocumentInput] أو قائمة بتمثيلات الإملاء ل TextDocumentInput، مثل {"id": "1"، "language": "en"، "text": "hello world"}.
- language
- str
تمثيل 2 حرف ISO 639-1 للغة للدفعة بأكملها. على سبيل المثال، استخدم "en" للغة الإنجليزية؛ "es" للإسبانية الخ. إذا لم يتم تعيينه، يستخدم "en" للغة الإنجليزية كافتراضي. ستكون للغة لكل مستند الأسبقية على لغة الدفعة بأكملها. راجع https://aka.ms/talangs اللغات المدعومة في واجهة برمجة تطبيقات اللغة.
- model_version
- str
إصدار النموذج المراد استخدامه للتحليل، على سبيل المثال "الأحدث". إذا لم يتم تحديد إصدار نموذج، فسيتم تعيين واجهة برمجة التطبيقات افتراضيا إلى أحدث إصدار غير معاينة. راجع هنا لمزيد من المعلومات: https://aka.ms/text-analytics-model-versioning
- show_stats
- bool
إذا تم تعيينها إلى صحيح، فستحتوي الاستجابة على إحصائيات على مستوى المستند في حقل الإحصائيات للاستجابة على مستوى المستند.
- disable_service_logs
- bool
إذا تم تعيينه إلى صحيح، يمكنك إلغاء الاشتراك في تسجيل إدخال النص على جانب الخدمة لاستكشاف الأخطاء وإصلاحها. بشكل افتراضي، تسجل خدمة Language نص الإدخال لمدة 48 ساعة، فقط للسماح باستكشاف المشكلات وإصلاحها في تزويدك بوظائف معالجة اللغة الطبيعية للخدمة. يؤدي تعيين هذه المعلمة إلى true إلى تعطيل تسجيل الإدخال وقد يحد من قدرتنا على معالجة المشكلات التي تحدث. يرجى الاطلاع على ملاحظات التوافق والخصوصية للخدمات المعرفية في https://aka.ms/cs-compliance للحصول على تفاصيل إضافية، ومبادئ الذكاء الاصطناعي المسؤولة من Microsoft على https://www.microsoft.com/ai/responsible-ai.
المرتجعات
القائمة المجمعة ل ExtractKeyPhrasesResult و DocumentError بالترتيب الذي تم تمرير المستندات الأصلية به.
نوع الإرجاع
استثناءات
أمثلة
استخراج العبارات الرئيسية في دفعة من المستندات.
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
التعرف على الكيانات لمجموعة من المستندات.
يحدد ويصنف الكيانات في النص كأشخاص وأماكن ومنظمات وتاريخ/وقت وكميات ونسب مئوية وعملات والمزيد. للحصول على قائمة أنواع الكيانات المدعومة، تحقق مما يلي: https://aka.ms/taner
راجع https://aka.ms/azsdk/textanalytics/data-limits حدود بيانات الخدمة.
جديد في الإصدار v3.1: وسيطات الكلمات الأساسية disable_service_logs 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]
المعلمات
مجموعة المستندات المراد معالجتها كجزء من هذه الدفعة. إذا كنت ترغب في تحديد المعرف واللغة على أساس كل عنصر، فيجب عليك استخدام كإدخال قائمة[TextDocumentInput] أو قائمة بتمثيلات الإملاء ل TextDocumentInput، مثل {"id": "1"، "language": "en"، "text": "hello world"}.
- language
- str
تمثيل 2 حرف ISO 639-1 للغة للدفعة بأكملها. على سبيل المثال، استخدم "en" للغة الإنجليزية؛ "es" للإسبانية الخ. إذا لم يتم تعيينه، يستخدم "en" للغة الإنجليزية كافتراضي. ستكون للغة لكل مستند الأسبقية على لغة الدفعة بأكملها. راجع https://aka.ms/talangs اللغات المدعومة في واجهة برمجة تطبيقات اللغة.
- model_version
- str
إصدار النموذج المراد استخدامه للتحليل، على سبيل المثال "الأحدث". إذا لم يتم تحديد إصدار نموذج، فسيتم تعيين واجهة برمجة التطبيقات افتراضيا إلى أحدث إصدار غير معاينة. راجع هنا لمزيد من المعلومات: https://aka.ms/text-analytics-model-versioning
- show_stats
- bool
إذا تم تعيينها إلى صحيح، فستحتوي الاستجابة على إحصائيات على مستوى المستند في حقل الإحصائيات للاستجابة على مستوى المستند.
- string_index_type
- str
يحدد الأسلوب المستخدم لتفسير إزاحات السلسلة. UnicodeCodePoint، ترميز Python، هو الافتراضي. لتجاوز Python الافتراضي، يمكنك أيضا تمرير Utf16CodeUnit أو TextElement_v8. للحصول على معلومات إضافية، راجع https://aka.ms/text-analytics-offsets
- disable_service_logs
- bool
إذا تم تعيينه إلى صحيح، يمكنك إلغاء الاشتراك في تسجيل إدخال النص الخاص بك على جانب الخدمة لاستكشاف الأخطاء وإصلاحها. بشكل افتراضي، تسجل خدمة Language نص الإدخال لمدة 48 ساعة، فقط للسماح باستكشاف المشكلات وإصلاحها في تزويدك بوظائف معالجة اللغة الطبيعية للخدمة. يؤدي تعيين هذه المعلمة إلى true إلى تعطيل تسجيل الإدخال وقد يحد من قدرتنا على معالجة المشكلات التي تحدث. يرجى الاطلاع على ملاحظات التوافق والخصوصية للخدمات المعرفية في للحصول على https://aka.ms/cs-compliance تفاصيل إضافية، ومبادئ الذكاء الاصطناعي المسؤولة من Microsoft على https://www.microsoft.com/ai/responsible-ai.
المرتجعات
القائمة المجمعة ل RecognizeEntitiesResult و DocumentError بالترتيب الذي تم تمرير المستندات الأصلية به.
نوع الإرجاع
استثناءات
أمثلة
التعرف على الكيانات في دفعة من المستندات.
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
التعرف على الكيانات المرتبطة من قاعدة معارف معروفة لمجموعة من المستندات.
يحدد ويزيل الغموض عن هوية كل كيان موجود في النص (على سبيل المثال، تحديد ما إذا كان تكرار كلمة المريخ يشير إلى الكوكب، أو إلى إله الحرب الروماني). ترتبط الكيانات المعترف بها بعناوين URL قاعدة معارف معروفة، مثل ويكيبيديا.
راجع https://aka.ms/azsdk/textanalytics/data-limits حدود بيانات الخدمة.
جديد في الإصدار v3.1: وسيطات الكلمات الأساسية disable_service_logs 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]
المعلمات
مجموعة المستندات التي يجب معالجتها كجزء من هذه الدفعة. إذا كنت ترغب في تحديد المعرف واللغة على أساس كل عنصر، يجب عليك استخدام كإدخال قائمة[TextDocumentInput] أو قائمة بتمثيلات TextDocumentInputالإملاء ل ، مثل {"id": "1"، "language": "en"، "text": "hello world"}.
- language
- str
يمثل الحرفان ISO 639-1 للغة للدفعة بأكملها. على سبيل المثال، استخدم "en" للغة الإنجليزية؛ "es" للإسبانية الخ. إذا لم يتم تعيينه، يستخدم "en" للغة الإنجليزية كافتراضي. ستكون للغة لكل مستند الأسبقية على لغة الدفعة بأكملها. راجع https://aka.ms/talangs اللغات المدعومة في واجهة برمجة تطبيقات اللغة.
- model_version
- str
إصدار النموذج المراد استخدامه للتحليل، على سبيل المثال "الأحدث". إذا لم يتم تحديد إصدار نموذج، فسيتم تعيين واجهة برمجة التطبيقات افتراضيا إلى أحدث إصدار غير معاينة. راجع هنا لمزيد من المعلومات: https://aka.ms/text-analytics-model-versioning
- show_stats
- bool
إذا تم تعيينها إلى true، فستحتوي الاستجابة على إحصائيات على مستوى المستند في حقل الإحصائيات للاستجابة على مستوى المستند.
- string_index_type
- str
يحدد الأسلوب المستخدم لتفسير إزاحات السلسلة. UnicodeCodePoint، ترميز Python، هو الافتراضي. لتجاوز Python الافتراضي، يمكنك أيضا تمرير Utf16CodeUnit أو TextElement_v8. للحصول على معلومات إضافية، راجع https://aka.ms/text-analytics-offsets
- disable_service_logs
- bool
إذا تم تعيينه إلى صحيح، يمكنك إلغاء الاشتراك في تسجيل إدخال النص الخاص بك على جانب الخدمة لاستكشاف الأخطاء وإصلاحها. بشكل افتراضي، تسجل خدمة Language نص الإدخال لمدة 48 ساعة، فقط للسماح باستكشاف المشكلات وإصلاحها في تزويدك بوظائف معالجة اللغة الطبيعية للخدمة. يؤدي تعيين هذه المعلمة إلى true إلى تعطيل تسجيل الإدخال وقد يحد من قدرتنا على معالجة المشكلات التي تحدث. يرجى الاطلاع على ملاحظات التوافق والخصوصية للخدمات المعرفية في للحصول على https://aka.ms/cs-compliance تفاصيل إضافية، ومبادئ الذكاء الاصطناعي المسؤولة من Microsoft على https://www.microsoft.com/ai/responsible-ai.
المرتجعات
القائمة المجمعة ل RecognizeLinkedEntitiesResult و DocumentError بالترتيب الذي تم تمرير المستندات الأصلية به.
نوع الإرجاع
استثناءات
أمثلة
التعرف على الكيانات المرتبطة في دفعة من المستندات.
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
التعرف على الكيانات التي تحتوي على معلومات شخصية لمجموعة من المستندات.
إرجاع قائمة بكيانات المعلومات الشخصية ("SSN"، و"الحساب البنكي"، وما إلى ذلك) في المستند. للحصول على قائمة أنواع الكيانات المدعومة، تحقق https://aka.ms/azsdk/language/pii
راجع https://aka.ms/azsdk/textanalytics/data-limits حدود بيانات الخدمة.
جديد في الإصدار v3.1: أسلوب العميل 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]
المعلمات
مجموعة المستندات التي يجب معالجتها كجزء من هذه الدفعة. إذا كنت ترغب في تحديد المعرف واللغة على أساس كل عنصر، يجب عليك استخدام كإدخال قائمة[TextDocumentInput] أو قائمة بتمثيلات TextDocumentInputالإملاء ل ، مثل {"id": "1"، "language": "en"، "text": "hello world"}.
- language
- str
يمثل الحرفان ISO 639-1 للغة للدفعة بأكملها. على سبيل المثال، استخدم "en" للغة الإنجليزية؛ "es" للإسبانية الخ. إذا لم يتم تعيينه، يستخدم "en" للغة الإنجليزية كافتراضي. ستكون للغة لكل مستند الأسبقية على لغة الدفعة بأكملها. راجع https://aka.ms/talangs اللغات المدعومة في واجهة برمجة تطبيقات اللغة.
- model_version
- str
إصدار النموذج المراد استخدامه للتحليل، على سبيل المثال "الأحدث". إذا لم يتم تحديد إصدار نموذج، فسيتم تعيين واجهة برمجة التطبيقات افتراضيا إلى أحدث إصدار غير معاينة. راجع هنا لمزيد من المعلومات: https://aka.ms/text-analytics-model-versioning
- show_stats
- bool
إذا تم تعيينها إلى true، فستحتوي الاستجابة على إحصائيات على مستوى المستند في حقل الإحصائيات للاستجابة على مستوى المستند.
- domain_filter
- str أو PiiEntityDomain
تصفية كيانات الاستجابة إلى تلك المضمنة فقط في المجال المحدد. أي، إذا تم تعيينه إلى "phi"، فسيعيد فقط الكيانات في مجال معلومات الرعاية الصحية المحمية. راجع https://aka.ms/azsdk/language/pii لمزيد من المعلومات.
- categories_filter
- list[str أو PiiEntityCategory]
بدلا من التصفية عبر جميع فئات كيان PII، يمكنك تمرير قائمة بفئات كيان PII المحددة التي تريد تصفيتها. على سبيل المثال، إذا كنت تريد تصفية أرقام الضمان الاجتماعي الأمريكية فقط في مستند، يمكنك تمرير [PiiEntityCategory.US_SOCIAL_SECURITY_NUMBER] لهذا الكوارغ.
- string_index_type
- str
يحدد الأسلوب المستخدم لتفسير إزاحات السلسلة. UnicodeCodePoint، ترميز Python، هو الافتراضي. لتجاوز Python الافتراضي، يمكنك أيضا تمرير Utf16CodeUnit أو TextElement_v8. للحصول على معلومات إضافية، راجع https://aka.ms/text-analytics-offsets
- disable_service_logs
- bool
الإعدادات الافتراضية إلى true، مما يعني أن خدمة Language لن تسجل نص الإدخال الخاص بك على جانب الخدمة لاستكشاف الأخطاء وإصلاحها. إذا تم تعيينه إلى False، فإن خدمة Language تسجل نص الإدخال لمدة 48 ساعة، فقط للسماح باستكشاف المشكلات وإصلاحها في تزويدك بوظائف معالجة اللغة الطبيعية للخدمة. يرجى الاطلاع على ملاحظات التوافق والخصوصية للخدمات المعرفية في للحصول على https://aka.ms/cs-compliance تفاصيل إضافية، ومبادئ الذكاء الاصطناعي المسؤولة من Microsoft على https://www.microsoft.com/ai/responsible-ai.
المرتجعات
القائمة المجمعة ل RecognizePiiEntitiesResult و DocumentError بالترتيب الذي تم تمرير المستندات الأصلية به.
نوع الإرجاع
استثناءات
أمثلة
التعرف على كيانات المعلومات الشخصية في دفعة من المستندات.
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