ClinicalMatchingClient.MatchTrialsAsync Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Overload
MatchTrialsAsync(WaitUntil, RequestContent, String, Nullable<DateTimeOffset>, RequestContext) |
Creare il processo matcher di valutazione. |
MatchTrialsAsync(WaitUntil, TrialMatcherData, String, Nullable<DateTimeOffset>, CancellationToken) |
Creare il processo matcher di valutazione. |
MatchTrialsAsync(WaitUntil, RequestContent, String, Nullable<DateTimeOffset>, RequestContext)
- Source:
- ClinicalMatchingClient.cs
Creare il processo matcher di valutazione.
public virtual System.Threading.Tasks.Task<Azure.Operation<BinaryData>> MatchTrialsAsync (Azure.WaitUntil waitUntil, Azure.Core.RequestContent content, string repeatabilityRequestId = default, DateTimeOffset? repeatabilityFirstSent = default, Azure.RequestContext context = default);
abstract member MatchTrialsAsync : Azure.WaitUntil * Azure.Core.RequestContent * string * Nullable<DateTimeOffset> * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Operation<BinaryData>>
override this.MatchTrialsAsync : Azure.WaitUntil * Azure.Core.RequestContent * string * Nullable<DateTimeOffset> * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Operation<BinaryData>>
Public Overridable Function MatchTrialsAsync (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))
Parametri
- waitUntil
- WaitUntil
Completed se il metodo deve attendere il ritorno fino al completamento dell'operazione a esecuzione prolungata nel servizio; Started se deve restituire dopo l'avvio dell'operazione. Per altre informazioni sulle operazioni a esecuzione prolungata, vedere Esempi di operazioni di Azure.Core Long-Running.
- content
- RequestContent
Contenuto da inviare come corpo della richiesta. I dettagli dello schema del corpo della richiesta sono disponibili nella sezione Osservazioni riportate di seguito.
- repeatabilityRequestId
- String
Identificatore stringa opaco, univoco a livello globale e generato dal client per la richiesta.
- repeatabilityFirstSent
- Nullable<DateTimeOffset>
Specifica la data e l'ora in cui è stata creata la richiesta.
- context
- RequestContext
Contesto della richiesta, che può eseguire l'override dei comportamenti predefiniti della pipeline client in base a una chiamata.
Restituisce
Oggetto Operation<T> dal servizio che conterrà un BinaryData oggetto una volta completata l'operazione asincrona nel servizio. I dettagli dello schema del corpo per il valore finale dell'operazione si trovano nella sezione Osservazioni riportate di seguito.
Eccezioni
content
è null.
Il servizio ha restituito un codice di stato non riuscito.
Esempio
Questo esempio illustra come chiamare MatchTrialsAsync con parametri e contenuti richiesti e come analizzare il risultato.
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 = await client.MatchTrialsAsync(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());
Questo esempio illustra come chiamare MatchTrialsAsync con tutti i parametri e il contenuto della richiesta e come analizzare il risultato.
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 = await client.MatchTrialsAsync(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());
Commenti
Crea un processo matcher di valutazione con il corpo della richiesta specificato.
Di seguito è riportato lo schema JSON per i payload di richiesta e risposta.
Corpo della richiesta:
Schema per 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.
}
Corpo della risposta:
Schema per 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.
}
Si applica a
MatchTrialsAsync(WaitUntil, TrialMatcherData, String, Nullable<DateTimeOffset>, CancellationToken)
- Source:
- ClinicalMatchingClient.cs
Creare il processo matcher di valutazione.
public virtual System.Threading.Tasks.Task<Azure.Operation<Azure.Health.Insights.ClinicalMatching.TrialMatcherResult>> MatchTrialsAsync (Azure.WaitUntil waitUntil, Azure.Health.Insights.ClinicalMatching.TrialMatcherData trialMatcherData, string repeatabilityRequestId = default, DateTimeOffset? repeatabilityFirstSent = default, System.Threading.CancellationToken cancellationToken = default);
abstract member MatchTrialsAsync : Azure.WaitUntil * Azure.Health.Insights.ClinicalMatching.TrialMatcherData * string * Nullable<DateTimeOffset> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Azure.Operation<Azure.Health.Insights.ClinicalMatching.TrialMatcherResult>>
override this.MatchTrialsAsync : Azure.WaitUntil * Azure.Health.Insights.ClinicalMatching.TrialMatcherData * string * Nullable<DateTimeOffset> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Azure.Operation<Azure.Health.Insights.ClinicalMatching.TrialMatcherResult>>
Public Overridable Function MatchTrialsAsync (waitUntil As WaitUntil, trialMatcherData As TrialMatcherData, Optional repeatabilityRequestId As String = Nothing, Optional repeatabilityFirstSent As Nullable(Of DateTimeOffset) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of Operation(Of TrialMatcherResult))
Parametri
- waitUntil
- WaitUntil
Completed se il metodo deve attendere il ritorno fino al completamento dell'operazione a esecuzione prolungata nel servizio; Started se deve restituire dopo l'avvio dell'operazione. Per altre informazioni sulle operazioni a esecuzione prolungata, vedere Esempi di operazioni di Azure.Core Long-Running.
- trialMatcherData
- TrialMatcherData
Corpo della richiesta di matcher di valutazione.
- repeatabilityRequestId
- String
Identificatore stringa opaco, univoco a livello globale e generato dal client per la richiesta.
- repeatabilityFirstSent
- Nullable<DateTimeOffset>
Specifica la data e l'ora in cui è stata creata la richiesta.
- cancellationToken
- CancellationToken
Token di annullamento da usare.
Restituisce
Eccezioni
trialMatcherData
è null.
Commenti
Crea un processo matcher di valutazione con il corpo della richiesta specificato.