Bibliothèque de client Azure Cognitive Services Health Insights Cancer Profiling pour .NET - version 1.0.0-beta.1

Health Insights est un service Azure Applied AI créé avec Azure Cognitive Services Framework, qui tire parti de plusieurs Cognitive Services, services d’API santé et autres ressources Azure.

Le modèle de profilage du cancer reçoit les enregistrements cliniques des patients en oncologie et produit la mise en lots du cancer, comme les catégories TNM de stade clinique et les catégories TNM de stade pathologique, ainsi que le site de tumeur, l’histologie.

| Code sourcePackage (NuGet) | Documentation de référence sur les | API Documentation produit

Prise en main

Prérequis

  • Vous avez besoin d’un abonnement Azure pour utiliser ce package.
  • Un instance Cognitive Services Health Insights existant.

Installer le package

Installez la bibliothèque de profilage du cancer du client Azure Health Insights pour .NET avec NuGet :

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

Ce tableau montre la relation entre les versions du kit de développement logiciel (SDK) et les versions d’API prises en charge du service :

Version du SDK Version d’API prise en charge du service
1.0.0-beta.1 Préversion du 01/03/2023

Authentifier le client

Vous pouvez trouver le point de terminaison de votre ressource de service Health Insights à l’aide du portail Azure ou d’Azure CLI.

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

Obtenir la clé API

Vous pouvez obtenir la clé API à partir de la ressource du service Health Insights dans le portail Azure. Vous pouvez également utiliser l’extrait de code Azure CLI ci-dessous pour obtenir la clé API de votre ressource.

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

Créer CancerProfilingClient avec AzureKeyCredential

Une fois que vous avez la valeur de la clé API, créez un AzureKeyCredential. Avec le point de terminaison et les informations d’identification de clé, vous pouvez créer le CancerProfilingClient:

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

Concepts clés

Le modèle de profilage du cancer vous permet de déduire des attributs du cancer tels que le site de tumeur, l’histologie, les catégories TNM de stade clinique et les catégories TNM de stade pathologique à partir de documents cliniques non structurés.

Exemples

Profilage du cancer

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}");
    }
}

Résolution des problèmes

Configuration de la journalisation de la console

Le moyen le plus simple de voir les journaux consiste à activer la journalisation de la console. Pour créer un écouteur de journal du SDK Azure qui génère des messages dans la console, utilisez la méthode AzureEventSourceListener.CreateConsoleLogger.

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

Pour en savoir plus sur les autres mécanismes de journalisation, consultez Exemples de diagnostics.

Étapes suivantes

Documentation complémentaire

Pour obtenir une documentation plus complète sur le profilage du cancer d’Azure Health Insights, consultez la documentation sur le profilage du cancer sur docs.microsoft.com.

Contribution

Ce projet accepte les contributions et les suggestions. La plupart des contributions vous demandent d’accepter un contrat de licence de contribution (CLA) déclarant que vous avez le droit de nous accorder, et que vous nous accordez réellement, les droits d’utilisation de votre contribution. Pour plus d’informations, visitez cla.microsoft.com.

Quand vous envoyez une demande de tirage (pull request), un bot CLA détermine automatiquement si vous devez fournir un contrat CLA et agrémenter la demande de tirage de façon appropriée (par exemple, avec une étiquette ou un commentaire). Suivez simplement les instructions fournies par le bot. Vous ne devez effectuer cette opération qu’une seule fois sur tous les dépôts utilisant notre contrat CLA.

Ce projet a adopté le Code de conduite Open Source de Microsoft. Pour plus d’informations, consultez les Questions fréquentes (FAQ) sur le code de conduite ou envoyez vos questions ou vos commentaires à opencode@microsoft.com.