ConversationAnalysisClient 클래스
언어 서비스 대화 API는 구조화된 대화(텍스트 또는 음성)를 분석하는 데 사용할 수 있는 NLP(자연어 처리) 기술 모음입니다. 추가 설명서는 에서 https://docs.microsoft.com/azure/cognitive-services/language-service/overview찾을 수 있습니다.
- 상속
-
azure.ai.language.conversations.aio._client.ConversationAnalysisClientConversationAnalysisClient
생성자
ConversationAnalysisClient(endpoint: str, credential: AzureKeyCredential | AsyncTokenCredential, **kwargs: Any)
매개 변수
- endpoint
- str
지원되는 Cognitive Services 엔드포인트(예: https://<resource-name>
.cognitiveservices.azure.com). 필수 요소.
- credential
- AzureKeyCredential 또는 AsyncTokenCredential
클라이언트가 Azure에 연결하는 데 필요한 자격 증명입니다. 언어 API 키 또는 의 토큰 자격 증명identity을 사용하는 경우 AzureKeyCredential의 instance 수 있습니다.
- api_version
- str
API 버전. 사용 가능한 값은 "2023-04-01" 및 "2022-05-01"입니다. 기본값은 "2023-04-01"입니다. 이 기본값을 재정의하면 지원되지 않는 동작이 발생할 수 있습니다.
- polling_interval
- int
Retry-After 헤더가 없는 경우 LRO 작업에 대한 두 폴링 간의 기본 대기 시간입니다.
메서드
analyze_conversation |
입력 대화 발화를 분석합니다. 자세한 내용은 https://learn.microsoft.com/rest/api/language/2023-04-01/conversation-analysis-runtime/analyze-conversation 을 참조하세요. |
begin_conversation_analysis |
대화에 대한 분석 작업을 제출합니다. 분석을 위해 대화 컬렉션을 제출합니다. 실행할 고유 작업을 하나 이상 지정합니다. 자세한 내용은 https://learn.microsoft.com/rest/api/language/2023-04-01/analyze-conversation/submit-job 을 참조하세요. |
close | |
send_request |
클라이언트의 연결된 정책을 통해 네트워크 요청을 실행합니다.
이 코드 흐름에 대한 자세한 내용은 https://aka.ms/azsdk/dpcodegen/python/send_request |
analyze_conversation
입력 대화 발화를 분석합니다.
자세한 내용은 https://learn.microsoft.com/rest/api/language/2023-04-01/conversation-analysis-runtime/analyze-conversation 을 참조하세요.
async analyze_conversation(task: MutableMapping[str, Any] | IO, **kwargs: Any) -> MutableMapping[str, Any]
매개 변수
- content_type
- str
본문 매개 변수 콘텐츠 형식입니다. 알려진 값은 'application/json'입니다. 기본값은 없음입니다.
반환
JSON 개체
반환 형식
예외
예제
# The input is polymorphic. The following are possible polymorphic inputs based off
discriminator "kind":
# JSON input template for discriminator value "Conversation":
analyze_conversation_task = {
"analysisInput": {
"conversationItem": {
"id": "str", # The ID of a conversation item. Required.
"participantId": "str", # The participant ID of a
conversation item. Required.
"language": "str", # Optional. The override language of a
conversation item in BCP 47 language representation.
"modality": "str", # Optional. Enumeration of supported
conversational modalities. Known values are: "transcript" and "text".
"role": "str" # Optional. Role of the participant. Known
values are: "agent", "customer", and "generic".
}
},
"kind": "Conversation",
"parameters": {
"deploymentName": "str", # The name of the deployment to use.
Required.
"projectName": "str", # The name of the project to use. Required.
"directTarget": "str", # Optional. The name of a target project to
forward the request to.
"isLoggingEnabled": bool, # Optional. If true, the service will keep
the query for further review.
"stringIndexType": "TextElements_v8", # Optional. Default value is
"TextElements_v8". Specifies the method used to interpret string offsets. Set
to "UnicodeCodePoint" for Python strings. Known values are:
"TextElements_v8", "UnicodeCodePoint", and "Utf16CodeUnit".
"targetProjectParameters": {
"str": analysis_parameters
},
"verbose": bool # Optional. If true, the service will return more
detailed information in the response.
}
}
# JSON input template you can fill out and use as your body input.
task = analyze_conversation_task
# The response is polymorphic. The following are possible polymorphic responses based
off discriminator "kind":
# JSON input template for discriminator value "ConversationResult":
analyze_conversation_task_result = {
"kind": "ConversationResult",
"result": {
"prediction": base_prediction,
"query": "str", # The conversation utterance given by the caller.
Required.
"detectedLanguage": "str" # Optional. The system detected language
for the query in BCP 47 language representation..
}
}
# JSON input template for discriminator value "Conversation":
base_prediction = {
"entities": [
{
"category": "str", # The entity category. Required.
"confidenceScore": 0.0, # The entity confidence score.
Required.
"length": 0, # The length of the text. Required.
"offset": 0, # The starting index of this entity in the
query. Required.
"text": "str", # The predicted entity text. Required.
"extraInformation": [
base_extra_information
],
"resolutions": [
base_resolution
]
}
],
"intents": [
{
"category": "str", # A predicted class. Required.
"confidenceScore": 0.0 # The confidence score of the class
from 0.0 to 1.0. Required.
}
],
"projectKind": "Conversation",
"topIntent": "str" # Optional. The intent with the highest score.
}
# JSON input template for discriminator value "Orchestration":
base_prediction = {
"intents": {
"str": target_intent_result
},
"projectKind": "Orchestration",
"topIntent": "str" # Optional. The intent with the highest score.
}
# response body for status code(s): 200
response == analyze_conversation_task_result
begin_conversation_analysis
대화에 대한 분석 작업을 제출합니다.
분석을 위해 대화 컬렉션을 제출합니다. 실행할 고유 작업을 하나 이상 지정합니다.
자세한 내용은 https://learn.microsoft.com/rest/api/language/2023-04-01/analyze-conversation/submit-job 을 참조하세요.
async begin_conversation_analysis(task: MutableMapping[str, Any] | IO, **kwargs: Any) -> AsyncLROPoller[MutableMapping[str, Any]]
매개 변수
- content_type
- str
본문 매개 변수 콘텐츠 형식입니다. 알려진 값은 'application/json'입니다. 기본값은 없음입니다.
- continuation_token
- str
저장된 상태에서 폴러를 다시 시작하는 연속 토큰입니다.
- polling
- bool 또는 AsyncPollingMethod
기본적으로 폴링 방법은 AsyncLROBasePolling입니다. 이 작업을 폴링하지 않도록 False를 전달하거나 개인 폴링 전략을 위해 초기화된 폴링 개체를 전달합니다.
- polling_interval
- int
Retry-After 헤더가 없는 경우 LRO 작업에 대한 두 폴링 간의 기본 대기 시간입니다.
반환
JSON 개체를 반환하는 AsyncLROPoller의 instance
반환 형식
예외
예제
# JSON input template you can fill out and use as your body input.
task = {
"analysisInput": {
"conversations": [
conversation
]
},
"tasks": [
analyze_conversation_lro_task
],
"displayName": "str" # Optional. Display name for the analysis job.
}
# response body for status code(s): 200
response == {
"createdDateTime": "2020-02-20 00:00:00", # Required.
"jobId": "str", # Required.
"lastUpdatedDateTime": "2020-02-20 00:00:00", # Required.
"status": "str", # The status of the task at the mentioned last update time.
Required. Known values are: "notStarted", "running", "succeeded", "failed",
"cancelled", "cancelling", and "partiallyCompleted".
"tasks": {
"completed": 0, # Count of tasks that finished successfully.
Required.
"failed": 0, # Count of tasks that failed. Required.
"inProgress": 0, # Count of tasks that are currently in progress.
Required.
"total": 0, # Total count of tasks submitted as part of the job.
Required.
"items": [
analyze_conversation_job_result
]
},
"displayName": "str", # Optional.
"errors": [
{
"code": "str", # One of a server-defined set of error codes.
Required. Known values are: "InvalidRequest", "InvalidArgument",
"Unauthorized", "Forbidden", "NotFound", "ProjectNotFound",
"OperationNotFound", "AzureCognitiveSearchNotFound",
"AzureCognitiveSearchIndexNotFound", "TooManyRequests",
"AzureCognitiveSearchThrottling",
"AzureCognitiveSearchIndexLimitReached", "InternalServerError",
"ServiceUnavailable", "Timeout", "QuotaExceeded", "Conflict", and
"Warning".
"message": "str", # A human-readable representation of the
error. Required.
"details": [
...
],
"innererror": {
"code": "str", # One of a server-defined set of
error codes. Required. Known values are: "InvalidRequest",
"InvalidParameterValue", "KnowledgeBaseNotFound",
"AzureCognitiveSearchNotFound", "AzureCognitiveSearchThrottling",
"ExtractionFailure", "InvalidRequestBodyFormat", "EmptyRequest",
"MissingInputDocuments", "InvalidDocument", "ModelVersionIncorrect",
"InvalidDocumentBatch", "UnsupportedLanguageCode", and
"InvalidCountryHint".
"message": "str", # Error message. Required.
"details": {
"str": "str" # Optional. Error details.
},
"innererror": ...,
"target": "str" # Optional. Error target.
},
"target": "str" # Optional. The target of the error.
}
],
"expirationDateTime": "2020-02-20 00:00:00", # Optional.
"nextLink": "str", # Optional.
"statistics": {
"conversationsCount": 0, # Number of conversations submitted in the
request. Required.
"documentsCount": 0, # Number of documents submitted in the request.
Required.
"erroneousConversationsCount": 0, # Number of invalid documents.
This includes documents that are empty, over the size limit, or in
unsupported languages. Required.
"erroneousDocumentsCount": 0, # Number of invalid documents. This
includes empty, over-size limit or non-supported languages documents.
Required.
"transactionsCount": 0, # Number of transactions for the request.
Required.
"validConversationsCount": 0, # Number of conversation documents.
This excludes documents that are empty, over the size limit, or in
unsupported languages. Required.
"validDocumentsCount": 0 # Number of valid documents. This excludes
empty, over-size limit or non-supported languages documents. Required.
}
}
close
send_request
클라이언트의 연결된 정책을 통해 네트워크 요청을 실행합니다.
>>> from azure.core.rest import HttpRequest
>>> request = HttpRequest("GET", "https://www.example.org/")
<HttpRequest [GET], url: 'https://www.example.org/'>
>>> response = await client.send_request(request)
<AsyncHttpResponse: 200 OK>
이 코드 흐름에 대한 자세한 내용은 https://aka.ms/azsdk/dpcodegen/python/send_request
send_request(request: HttpRequest, **kwargs: Any) -> Awaitable[AsyncHttpResponse]
매개 변수
- stream
- bool
응답 페이로드가 스트리밍될지 여부입니다. 기본값은 False입니다.
반환
네트워크 호출의 응답입니다. 응답에 대한 오류 처리는 수행하지 않습니다.
반환 형식
예외
Azure SDK for Python