Share via


Azure Cognitive Services Health Insights Cancer Profiling-Clientbibliothek für .NET – Version 1.0.0-beta.1

Health Insights ist ein Azure Applied AI Service, der mit dem Azure Cognitive Services-Framework erstellt wurde und mehrere Cognitive Services, Gesundheitswesen-API-Dienste und andere Azure-Ressourcen nutzt.

Das Cancer Profiling-Modell erhält klinische Aufzeichnungen von Onkologie-Patienten und gibt Krebs-Staging aus, z. B. TNM-Kategorien im klinischen Stadium und TNM-Kategorien im pathologischen Stadium sowie Tumorstandort, Histologie.

Quellcode | Paket (NuGet) | API-Referenzdokumentation | Produktdokumentation

Erste Schritte

Voraussetzungen

  • Sie benötigen ein Azure-Abonnement , um dieses Paket verwenden zu können.
  • Ein vorhandenes Cognitive Services Health Insights-instance.

Installieren des Pakets

Installieren Sie die Krebsprofilerstellungsbibliothek des Azure Health Insights-Clients für .NET mit NuGet:

dotnet add package Azure.Health.Insights.CancerProfiling --prerelease

Diese Tabelle gibt Aufschluss über die Beziehung zwischen SDK-Versionen und unterstützten API-Versionen des Diensts:

SDK-Version Unterstützte API-Version des Diensts
1.0.0-beta.1 2023-03-01-preview

Authentifizieren des Clients

Sie können den Endpunkt für Ihre Health Insights-Dienstressource über das Azure-Portal oder die Azure CLI finden.

# Get the endpoint for the Health Insights service resource
az cognitiveservices account show --name "resource-name" --resource-group "resource-group-name" --query "properties.endpoint"

Abrufen des API-Schlüssels

Sie können den API-Schlüssel über die Health Insights-Dienstressource im Azure-Portal abrufen. Alternativ können Sie den folgenden Azure CLI-Codeausschnitt verwenden, um den API-Schlüssel Ihrer Ressource abzurufen.

az cognitiveservices account keys list --resource-group <your-resource-group-name> --name <your-resource-name>

Erstellen von CancerProfilingClient mit AzureKeyCredential

Wenn Sie über den Wert für den API-Schlüssel verfügen, erstellen Sie einen AzureKeyCredential. Mit dem Endpunkt und den Schlüsselanmeldeinformationen können Sie folgendes CancerProfilingClienterstellen:

string endpoint = "<endpoint>";
string apiKey = "<apiKey>";
var credential = new AzureKeyCredential(apiKey);
var client = new CancerProfilingClient(new Uri(endpoint), credential);

Wichtige Begriffe

Das Cancer Profiling-Modell ermöglicht es Ihnen, Krebsattribute wie Tumorort, Histologie, TNM-Kategorien im klinischen Stadium und TNM-Kategorien des pathologischen Stadiums aus unstrukturierten klinischen Dokumenten abzuleiten.

Beispiele

Krebsprofilerstellung

OncoPhenotypeResult oncoPhenotypeResult = default;
try
{
    Operation<OncoPhenotypeResult> operation = await client.InferCancerProfileAsync(WaitUntil.Completed, oncoPhenotypeData);
    oncoPhenotypeResult = operation.Value;
}
catch (Exception ex)
{
    Console.WriteLine(ex.ToString());
    return;
}
// View operation results
if (oncoPhenotypeResult.Status == JobStatus.Succeeded)
{
    OncoPhenotypeResults oncoResults = oncoPhenotypeResult.Results;
    foreach (OncoPhenotypePatientResult patientResult in oncoResults.Patients)
    {
        Console.WriteLine($"\n==== Inferences of Patient {patientResult.Id} ====");
        foreach (OncoPhenotypeInference oncoInference in patientResult.Inferences)
        {
            Console.WriteLine($"\n=== Clinical Type: {oncoInference.Type.ToString()}  Value: {oncoInference.Value}   ConfidenceScore: {oncoInference.ConfidenceScore} ===");
            foreach (InferenceEvidence evidence in oncoInference.Evidence)
            {
                if (evidence.PatientDataEvidence != null)
                {
                    var dataEvidence = evidence.PatientDataEvidence;
                    Console.WriteLine($"Evidence {dataEvidence.Id} {dataEvidence.Offset} {dataEvidence.Length} {dataEvidence.Text}");
                }
                if (evidence.PatientInfoEvidence != null)
                {
                    var infoEvidence = evidence.PatientInfoEvidence;
                    Console.WriteLine($"Evidence {infoEvidence.System} {infoEvidence.Code} {infoEvidence.Name} {infoEvidence.Value}");
                }
            }
        }
    }
}
else
{
    IReadOnlyList<ResponseError> oncoErrors = oncoPhenotypeResult.Errors;
    foreach (ResponseError error in oncoErrors)
    {
        Console.WriteLine($"{error.Code} : {error.Message}");
    }
}

Problembehandlung

Einrichten der Konsolenprotokollierung

Die einfachste Möglichkeit, die Protokolle anzuzeigen, besteht darin, die Konsolenprotokollierung zu aktivieren. Verwenden Sie die AzureEventSourceListener.CreateConsoleLogger-Methode, um einen Azure SDK-Protokolllistener zu erstellen, der Nachrichten an die Konsole ausgibt.

// Setup a listener to monitor logged events.
using AzureEventSourceListener listener = AzureEventSourceListener.CreateConsoleLogger();

Weitere Informationen zu anderen Protokollierungsmechanismen finden Sie unter Diagnosebeispiele.

Nächste Schritte

Zusätzliche Dokumentation

Eine ausführlichere Dokumentation zu Azure Health Insights Cancer Profiling finden Sie in der Dokumentation zur Krebsprofilerstellung auf docs.microsoft.com.

Mitwirken

Beiträge und Vorschläge für dieses Projekt sind willkommen. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. Weitere Informationen finden Sie unter cla.microsoft.com.

Wenn Sie einen Pull Request (PR) übermitteln, überprüft ein CLA-Bot automatisch, ob Sie eine Lizenzvereinbarung bereitstellen und den PR entsprechend ergänzen müssen (z.B. mit einer Bezeichnung oder einem Kommentar). Führen Sie einfach die Anweisungen des Bots aus. Sie müssen dies nur einmal für alle Repositorys ausführen, die unsere CLA verwenden.

Für dieses Projekt gelten die Microsoft-Verhaltensregeln für Open Source (Microsoft Open Source Code of Conduct). Weitere Informationen finden Sie in den häufig gestellten Fragen zum Verhaltenskodex. Sie können sich auch an opencode@microsoft.com wenden, wenn Sie weitere Fragen oder Anmerkungen haben.