다음을 통해 공유


CancerProfilingClient.InferCancerProfileAsync 메서드

정의

오버로드

InferCancerProfileAsync(WaitUntil, RequestContent, String, Nullable<DateTimeOffset>, RequestContext)

Onco Phenotype 작업을 만듭니다.

InferCancerProfileAsync(WaitUntil, OncoPhenotypeData, String, Nullable<DateTimeOffset>, CancellationToken)

Onco Phenotype 작업을 만듭니다.

InferCancerProfileAsync(WaitUntil, RequestContent, String, Nullable<DateTimeOffset>, RequestContext)

Source:
CancerProfilingClient.cs

Onco Phenotype 작업을 만듭니다.

public virtual System.Threading.Tasks.Task<Azure.Operation<BinaryData>> InferCancerProfileAsync (Azure.WaitUntil waitUntil, Azure.Core.RequestContent content, string repeatabilityRequestId = default, DateTimeOffset? repeatabilityFirstSent = default, Azure.RequestContext context = default);
abstract member InferCancerProfileAsync : Azure.WaitUntil * Azure.Core.RequestContent * string * Nullable<DateTimeOffset> * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Operation<BinaryData>>
override this.InferCancerProfileAsync : Azure.WaitUntil * Azure.Core.RequestContent * string * Nullable<DateTimeOffset> * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Operation<BinaryData>>
Public Overridable Function InferCancerProfileAsync (waitUntil As WaitUntil, content As RequestContent, Optional repeatabilityRequestId As String = Nothing, Optional repeatabilityFirstSent As Nullable(Of DateTimeOffset) = Nothing, Optional context As RequestContext = Nothing) As Task(Of Operation(Of BinaryData))

매개 변수

waitUntil
WaitUntil

Completed 메서드가 서비스에서 장기 실행 작업이 완료될 때까지 반환될 때까지 기다려야 하면 이고, Started 작업을 시작한 후 를 반환해야 하는 경우 입니다. 장기 실행 작업에 대한 자세한 내용은 Azure.Core Long-Running 작업 샘플을 참조하세요.

content
RequestContent

요청 본문으로 보낼 콘텐츠입니다. 요청 본문 스키마의 세부 정보는 아래 설명 섹션에 있습니다.

repeatabilityRequestId
String

요청에 대한 불투명하고 전역적으로 고유한 클라이언트 생성 문자열 식별자입니다.

repeatabilityFirstSent
Nullable<DateTimeOffset>

요청이 처음 만들어진 날짜와 시간을 지정합니다.

context
RequestContext

호출별로 클라이언트 파이프라인의 기본 동작을 재정의할 수 있는 요청 컨텍스트입니다.

반환

Operation<T> 서비스의 비동기 작업이 완료되면 개체를 BinaryData 포함할 서비스의 입니다. 작업의 최종 값에 대한 본문 스키마의 세부 정보는 아래 설명 섹션에 있습니다.

예외

content가 null입니다.

서비스에서 성공하지 상태 코드를 반환했습니다.

예제

이 샘플에서는 필수 매개 변수 및 요청 콘텐츠를 사용하여 InferCancerProfileAsync를 호출하는 방법과 결과를 구문 분석하는 방법을 보여 줍니다.

var credential = new AzureKeyCredential("<key>");
var endpoint = new Uri("<https://my-service.azure.com>");
var client = new CancerProfilingClient(endpoint, credential);

var data = new {
    patients = new[] {
        new {
            id = "<id>",
        }
    },
};

var operation = await client.InferCancerProfileAsync(WaitUntil.Completed, RequestContent.Create(data));

BinaryData data = operation.Value;
JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement;
Console.WriteLine(result.GetProperty("jobId").ToString());
Console.WriteLine(result.GetProperty("createdDateTime").ToString());
Console.WriteLine(result.GetProperty("expirationDateTime").ToString());
Console.WriteLine(result.GetProperty("lastUpdateDateTime").ToString());
Console.WriteLine(result.GetProperty("status").ToString());

이 샘플에서는 모든 매개 변수 및 요청 콘텐츠를 사용하여 InferCancerProfileAsync를 호출하는 방법과 결과를 구문 분석하는 방법을 보여 줍니다.

var credential = new AzureKeyCredential("<key>");
var endpoint = new Uri("<https://my-service.azure.com>");
var client = new CancerProfilingClient(endpoint, credential);

var data = new {
    patients = new[] {
        new {
            id = "<id>",
            info = new {
                sex = "female",
                birthDate = "2022-05-10",
                clinicalInfo = new[] {
                    new {
                        system = "<system>",
                        code = "<code>",
                        name = "<name>",
                        value = "<value>",
                    }
                },
            },
            data = new[] {
                new {
                    type = "note",
                    clinicalType = "consultation",
                    id = "<id>",
                    language = "<language>",
                    createdDateTime = "2022-05-10T14:57:31.2311892-04:00",
                    content = new {
                        sourceType = "inline",
                        value = "<value>",
                    },
                }
            },
        }
    },
    configuration = new {
        verbose = true,
        includeEvidence = true,
        inferenceTypes = new[] {
            "tumorSite"
        },
        checkForCancerCase = true,
    },
};

var operation = await client.InferCancerProfileAsync(WaitUntil.Completed, RequestContent.Create(data), "<repeatabilityRequestId>", DateTimeOffset.UtcNow);

BinaryData data = operation.Value;
JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement;
Console.WriteLine(result.GetProperty("jobId").ToString());
Console.WriteLine(result.GetProperty("createdDateTime").ToString());
Console.WriteLine(result.GetProperty("expirationDateTime").ToString());
Console.WriteLine(result.GetProperty("lastUpdateDateTime").ToString());
Console.WriteLine(result.GetProperty("status").ToString());
Console.WriteLine(result.GetProperty("errors")[0].GetProperty("code").ToString());
Console.WriteLine(result.GetProperty("errors")[0].GetProperty("message").ToString());
Console.WriteLine(result.GetProperty("errors")[0].GetProperty("target").ToString());
Console.WriteLine(result.GetProperty("errors")[0].GetProperty("innererror").GetProperty("code").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("id").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("type").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("value").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("description").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("confidenceScore").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("evidence")[0].GetProperty("patientDataEvidence").GetProperty("id").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("evidence")[0].GetProperty("patientDataEvidence").GetProperty("text").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("evidence")[0].GetProperty("patientDataEvidence").GetProperty("offset").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("evidence")[0].GetProperty("patientDataEvidence").GetProperty("length").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("evidence")[0].GetProperty("patientInfoEvidence").GetProperty("system").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("evidence")[0].GetProperty("patientInfoEvidence").GetProperty("code").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("evidence")[0].GetProperty("patientInfoEvidence").GetProperty("name").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("evidence")[0].GetProperty("patientInfoEvidence").GetProperty("value").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("evidence")[0].GetProperty("importance").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("caseId").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("modelVersion").ToString());

설명

지정된 요청 본문을 사용하여 Onco Phenotype 작업을 만듭니다.

다음은 요청 및 응답 페이로드에 대한 JSON 스키마입니다.

요청 본문:

에 대한 스키마입니다.OncoPhenotypeData

{
  patients: [
    {
      id: string, # Required. A given identifier for the patient. Has to be unique across all patients in a single request.
      info: {
        sex: "female" | "male" | "unspecified", # Optional. The patient's sex.
        birthDate: string (date), # Optional. The patient's date of birth.
        clinicalInfo: [ClinicalCodedElement], # Optional. Known clinical information for the patient, structured.
      }, # Optional. Patient structured information, including demographics and known structured clinical information.
      data: [PatientDocument], # Optional. Patient unstructured clinical data, given as documents.
    }
  ], # Required. The list of patients, including their clinical information and data.
  configuration: {
    verbose: boolean, # Optional. An indication whether the model should produce verbose output.
    includeEvidence: boolean, # Optional. An indication whether the model's output should include evidence for the inferences.
    inferenceTypes: ["tumorSite" | "histology" | "clinicalStageT" | "clinicalStageN" | "clinicalStageM" | "pathologicStageT" | "pathologicStageN" | "pathologicStageM"], # Optional. A list of inference types to be inferred for the current request.
This could be used if only part of the Onco Phenotype inferences are required.
If this list is omitted or empty, the model will return all the inference types.
    checkForCancerCase: boolean, # Optional. An indication whether to perform a preliminary step on the patient's documents to determine whether they relate to a Cancer case.
  }, # Optional. Configuration affecting the Onco Phenotype model's inference.
}

응답 본문:

에 대한 스키마입니다.OncoPhenotypeResult

{
  jobId: string, # Required. A processing job identifier.
  createdDateTime: string (date & time), # Required. The date and time when the processing job was created.
  expirationDateTime: string (date & time), # Required. The date and time when the processing job is set to expire.
  lastUpdateDateTime: string (date & time), # Required. The date and time when the processing job was last updated.
  status: "notStarted" | "running" | "succeeded" | "failed" | "partiallyCompleted", # Required. The status of the processing job.
  errors: [
    {
      code: string, # Required. One of a server-defined set of error codes.
      message: string, # Required. A human-readable representation of the error.
      target: string, # Optional. The target of the error.
      details: [Error], # Required. An array of details about specific errors that led to this reported error.
      innererror: {
        code: string, # Required. One of a server-defined set of error codes.
        innererror: InnerError, # Optional. Inner error.
      }, # Optional. An object containing more specific information than the current object about the error.
    }
  ], # Optional. An array of errors, if any errors occurred during the processing job.
  results: {
    patients: [OncoPhenotypePatientResult], # Required. Results for the patients given in the request.
    modelVersion: string, # Required. The version of the model used for inference, expressed as the model date.
  }, # Optional. The inference results for the Onco Phenotype request.
}

적용 대상

InferCancerProfileAsync(WaitUntil, OncoPhenotypeData, String, Nullable<DateTimeOffset>, CancellationToken)

Source:
CancerProfilingClient.cs

Onco Phenotype 작업을 만듭니다.

public virtual System.Threading.Tasks.Task<Azure.Operation<Azure.Health.Insights.CancerProfiling.OncoPhenotypeResult>> InferCancerProfileAsync (Azure.WaitUntil waitUntil, Azure.Health.Insights.CancerProfiling.OncoPhenotypeData oncoPhenotypeData, string repeatabilityRequestId = default, DateTimeOffset? repeatabilityFirstSent = default, System.Threading.CancellationToken cancellationToken = default);
abstract member InferCancerProfileAsync : Azure.WaitUntil * Azure.Health.Insights.CancerProfiling.OncoPhenotypeData * string * Nullable<DateTimeOffset> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Azure.Operation<Azure.Health.Insights.CancerProfiling.OncoPhenotypeResult>>
override this.InferCancerProfileAsync : Azure.WaitUntil * Azure.Health.Insights.CancerProfiling.OncoPhenotypeData * string * Nullable<DateTimeOffset> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Azure.Operation<Azure.Health.Insights.CancerProfiling.OncoPhenotypeResult>>
Public Overridable Function InferCancerProfileAsync (waitUntil As WaitUntil, oncoPhenotypeData As OncoPhenotypeData, Optional repeatabilityRequestId As String = Nothing, Optional repeatabilityFirstSent As Nullable(Of DateTimeOffset) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of Operation(Of OncoPhenotypeResult))

매개 변수

waitUntil
WaitUntil

Completed 메서드가 서비스에서 장기 실행 작업이 완료될 때까지 반환될 때까지 기다려야 하면 이고, Started 작업을 시작한 후 를 반환해야 하는 경우 입니다. 장기 실행 작업에 대한 자세한 내용은 Azure.Core Long-Running 작업 샘플을 참조하세요.

oncoPhenotypeData
OncoPhenotypeData

Onco Phenotype 요청의 본문입니다.

repeatabilityRequestId
String

요청에 대한 불투명하고 전역적으로 고유한 클라이언트 생성 문자열 식별자입니다.

repeatabilityFirstSent
Nullable<DateTimeOffset>

요청이 처음 만들어진 날짜와 시간을 지정합니다.

cancellationToken
CancellationToken

사용할 취소 토큰입니다.

반환

예외

oncoPhenotypeData가 null입니다.

설명

지정된 요청 본문을 사용하여 Onco Phenotype 작업을 만듭니다.

적용 대상