你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
ClinicalMatchingClient.MatchTrials 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
MatchTrials(WaitUntil, RequestContent, String, Nullable<DateTimeOffset>, RequestContext)
- Source:
- ClinicalMatchingClient.cs
创建试用匹配器作业。
public virtual Azure.Operation<BinaryData> MatchTrials (Azure.WaitUntil waitUntil, Azure.Core.RequestContent content, string repeatabilityRequestId = default, DateTimeOffset? repeatabilityFirstSent = default, Azure.RequestContext context = default);
abstract member MatchTrials : Azure.WaitUntil * Azure.Core.RequestContent * string * Nullable<DateTimeOffset> * Azure.RequestContext -> Azure.Operation<BinaryData>
override this.MatchTrials : Azure.WaitUntil * Azure.Core.RequestContent * string * Nullable<DateTimeOffset> * Azure.RequestContext -> Azure.Operation<BinaryData>
Public Overridable Function MatchTrials (waitUntil As WaitUntil, content As RequestContent, Optional repeatabilityRequestId As String = Nothing, Optional repeatabilityFirstSent As Nullable(Of DateTimeOffset) = Nothing, Optional context As RequestContext = Nothing) As 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。
服务返回了非成功状态代码。
示例
此示例演示如何使用所需的参数和请求内容调用 MatchTrials,以及如何分析结果。
var credential = new AzureKeyCredential("<key>");
var endpoint = new Uri("<https://my-service.azure.com>");
var client = new ClinicalMatchingClient(endpoint, credential);
var data = new {
patients = new[] {
new {
id = "<id>",
}
},
};
var operation = client.MatchTrials(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());
此示例演示如何使用所有参数和请求内容调用 MatchTrials,以及如何分析结果。
var credential = new AzureKeyCredential("<key>");
var endpoint = new Uri("<https://my-service.azure.com>");
var client = new ClinicalMatchingClient(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,
clinicalTrials = new {
customTrials = new[] {
new {
id = "<id>",
eligibilityCriteriaText = "<eligibilityCriteriaText>",
demographics = new {
acceptedSex = "all",
acceptedAgeRange = new {
minimumAge = new {
unit = "years",
value = 123.45f,
},
maximumAge = new {
unit = "years",
value = 123.45f,
},
},
},
metadata = new {
phases = new[] {
"notApplicable"
},
studyType = "interventional",
recruitmentStatus = "unknownStatus",
conditions = new[] {
"<String>"
},
sponsors = new[] {
"<String>"
},
contacts = new[] {
new {
name = "<name>",
email = "<email>",
phone = "<phone>",
}
},
facilities = new[] {
new {
name = "<name>",
city = "<city>",
state = "<state>",
countryOrRegion = "<countryOrRegion>",
}
},
},
}
},
registryFilters = new[] {
new {
conditions = new[] {
"<String>"
},
studyTypes = new[] {
"interventional"
},
recruitmentStatuses = new[] {
"unknownStatus"
},
sponsors = new[] {
"<String>"
},
phases = new[] {
"notApplicable"
},
purposes = new[] {
"notApplicable"
},
ids = new[] {
"<String>"
},
sources = new[] {
"custom"
},
facilityNames = new[] {
"<String>"
},
facilityLocations = new[] {
new {
city = "<city>",
state = "<state>",
countryOrRegion = "<countryOrRegion>",
}
},
facilityAreas = new[] {
new {
type = "Feature",
geometry = new {
type = "Point",
coordinates = new[] {
123.45f
},
},
properties = new {
subType = "Circle",
radius = 123.45d,
},
}
},
}
},
},
},
};
var operation = client.MatchTrials(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("eligibilityCriteriaEvidence").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("id").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("source").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("metadata").GetProperty("phases")[0].ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("metadata").GetProperty("studyType").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("metadata").GetProperty("recruitmentStatus").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("metadata").GetProperty("conditions")[0].ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("metadata").GetProperty("sponsors")[0].ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("metadata").GetProperty("contacts")[0].GetProperty("name").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("metadata").GetProperty("contacts")[0].GetProperty("email").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("metadata").GetProperty("contacts")[0].GetProperty("phone").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("metadata").GetProperty("facilities")[0].GetProperty("name").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("metadata").GetProperty("facilities")[0].GetProperty("city").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("metadata").GetProperty("facilities")[0].GetProperty("state").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("inferences")[0].GetProperty("metadata").GetProperty("facilities")[0].GetProperty("countryOrRegion").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("neededClinicalInfo")[0].GetProperty("system").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("neededClinicalInfo")[0].GetProperty("code").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("neededClinicalInfo")[0].GetProperty("name").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("neededClinicalInfo")[0].GetProperty("value").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("neededClinicalInfo")[0].GetProperty("semanticType").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("patients")[0].GetProperty("neededClinicalInfo")[0].GetProperty("category").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("modelVersion").ToString());
Console.WriteLine(result.GetProperty("results").GetProperty("knowledgeGraphLastUpdateDate").ToString());
注解
使用给定的请求正文创建试用匹配器作业。
下面是请求和响应有效负载的 JSON 架构。
请求正文:
的 TrialMatcherData
架构:
{
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.
clinicalTrials: {
customTrials: [ClinicalTrialDetails], # Optional. A list of clinical trials.
registryFilters: [ClinicalTrialRegistryFilter], # Optional. A list of filters, each one creating a selection of trials from a given
clinical trial registry.
}, # Required. The clinical trials that the patient(s) should be matched to. <br />The trial
selection can be given as a list of custom clinical trials and/or a list of
filters to known clinical trial registries. In case both are given, the
resulting trial set is a union of the two sets.
}, # Optional. Configuration affecting the Trial Matcher model's inference.
}
响应正文:
的 TrialMatcherResult
架构:
{
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: [TrialMatcherPatientResult], # 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.
knowledgeGraphLastUpdateDate: string (date), # Optional. The date when the clinical trials knowledge graph was last updated.
}, # Optional. The inference results for the Trial Matcher request.
}
适用于
MatchTrials(WaitUntil, TrialMatcherData, String, Nullable<DateTimeOffset>, CancellationToken)
- Source:
- ClinicalMatchingClient.cs
创建试用匹配器作业。
public virtual Azure.Operation<Azure.Health.Insights.ClinicalMatching.TrialMatcherResult> MatchTrials (Azure.WaitUntil waitUntil, Azure.Health.Insights.ClinicalMatching.TrialMatcherData trialMatcherData, string repeatabilityRequestId = default, DateTimeOffset? repeatabilityFirstSent = default, System.Threading.CancellationToken cancellationToken = default);
abstract member MatchTrials : Azure.WaitUntil * Azure.Health.Insights.ClinicalMatching.TrialMatcherData * string * Nullable<DateTimeOffset> * System.Threading.CancellationToken -> Azure.Operation<Azure.Health.Insights.ClinicalMatching.TrialMatcherResult>
override this.MatchTrials : Azure.WaitUntil * Azure.Health.Insights.ClinicalMatching.TrialMatcherData * string * Nullable<DateTimeOffset> * System.Threading.CancellationToken -> Azure.Operation<Azure.Health.Insights.ClinicalMatching.TrialMatcherResult>
Public Overridable Function MatchTrials (waitUntil As WaitUntil, trialMatcherData As TrialMatcherData, Optional repeatabilityRequestId As String = Nothing, Optional repeatabilityFirstSent As Nullable(Of DateTimeOffset) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Operation(Of TrialMatcherResult)
参数
- waitUntil
- WaitUntil
Completed 如果方法应等待返回,直到服务上长时间运行的操作完成; Started 如果它应在启动操作后返回,则为 。 有关长时间运行的操作的详细信息,请参阅 Azure.Core Long-Running 操作示例。
- trialMatcherData
- TrialMatcherData
试用匹配程序请求的正文。
- repeatabilityRequestId
- String
请求的不透明、全局唯一的客户端生成的字符串标识符。
- repeatabilityFirstSent
- Nullable<DateTimeOffset>
指定首次创建请求的日期和时间。
- cancellationToken
- CancellationToken
要使用的取消标记。
返回
例外
trialMatcherData
为 null。
注解
使用给定的请求正文创建试用匹配器作业。