.NET 用 Azure Cognitive Services Health Insights 臨床照合クライアント ライブラリ - バージョン 1.0.0-beta.1

Health Insights は、Azure Cognitive Services Framework を使用して構築された Azure Applied AI Service であり、複数の Cognitive Services、Healthcare API サービス、およびその他の Azure リソースを活用します。

臨床マッチングモデルは、患者データと臨床試験プロトコルを受け取り、適格性基準に基づいて関連する臨床試験を提供します。

ソースコード | パッケージ (NuGet) | API リファレンス ドキュメント | 製品ドキュメント

作業の開始

前提条件

パッケージをインストールする

NuGet を使用して .NET 用の Azure Health Insights クライアントの臨床照合ライブラリをインストールします。

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

SDK のバージョンとサービスのサポートされる API バージョンの関係を次の表に示します。

SDK バージョン サポートされている API バージョンのサービス
1.0.0-beta.1 2023-03-01-preview

クライアントを認証する

Health Insights サービス リソースのエンドポイントは、Azure Portal または 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"

API キーを取得する

API キーは、Azure Portal の Health Insights サービス リソースから取得できます。 または、次の Azure CLI スニペットを使用して、リソースの API キーを取得することもできます。

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

AzureKeyCredential を使用して ClinicalMatchingClient を作成する

API キーの値を取得したら、 を作成します AzureKeyCredential。 エンドポイントとキーの資格情報を使用して、 を ClinicalMatchingClient作成できます。

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

主要な概念

試用版マッチャーは、患者中心と臨床試験中心の 2 つのメインモードの操作モードをサービスのユーザーに提供します。

  • 患者中心モードでは、試用版マッチャー モデルは、患者やサービスユーザーが優先順位を付けるために選択できる臨床状態、場所、優先順位、適格性基準、およびその他の基準に基づいて患者の照合を行います。 このモデルは、関連する臨床試験のセットを絞り込んで優先順位を付けるのに役立ち、最初に特定の患者が適格と思われる小規模な一連の試験に優先順位を付けます。
  • 臨床試験中心では、試用版マッチャーは、臨床試験の対象となる可能性のある患者のグループを見つけることです。 試用版マッチャーは、患者を絞り込み、最初に臨床状態と選択された臨床観察でフィルター処理し、ベースライン基準を満たした患者に焦点を当てて、試験の対象となる患者のグループを見つけます。

試用版の照合

TrialMatcherResult trialMatcherResult = default;
try
{
    // Using ClinicalMatchingClient + MatchTrialsAsync
    Operation<TrialMatcherResult> operation = await clinicalMatchingClient.MatchTrialsAsync(WaitUntil.Completed, trialMatcherData);
    trialMatcherResult = operation.Value;
}
catch (Exception ex)
{
    Console.WriteLine(ex.ToString());
    return;
}
// View the match trials (eligible/ineligible)
if (trialMatcherResult.Status == JobStatus.Succeeded)
{
    TrialMatcherResults matcherResults = trialMatcherResult.Results;
    foreach (TrialMatcherPatientResult patientResult in matcherResults.Patients)
    {
        Console.WriteLine($"Inferences of Patient {patientResult.Id}");
        foreach (TrialMatcherInference tmInferences in patientResult.Inferences)
        {
            Console.WriteLine($"Trial Id {tmInferences.Id}");
            Console.WriteLine($"Type: {tmInferences.Type.ToString()}  Value: {tmInferences.Value}");
            Console.WriteLine($"Description {tmInferences.Description}");
        }
    }
}
else
{
    IReadOnlyList<ResponseError> matcherErrors = trialMatcherResult.Errors;
    foreach (ResponseError error in matcherErrors)
    {
        Console.WriteLine($"{error.Code} : {error.Message}");
    }
}

トラブルシューティング

コンソール ログの設定

ログを表示する最も簡単な方法は、コンソール ログを有効にすることです。 コンソールにメッセージを出力する Azure SDK ログ リスナーを作成するには、AzureEventSourceListener.CreateConsoleLogger メソッドを使用します。

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

その他のログメカニズムの詳細については、「 診断サンプル」を参照してください。

次のステップ

その他のドキュメント

Azure Health Insights の臨床照合に関するより広範なドキュメントについては、docs.microsoft.com の 臨床照合に関するドキュメント を参照してください。

共同作成

このプロジェクトでは、共同作成と提案を歓迎しています。 ほとんどの共同作成では、共同作成者使用許諾契約書 (CLA) にご同意いただき、ご自身の共同作成内容を使用する権利を Microsoft に供与する権利をお持ちであり、かつ実際に供与することを宣言していただく必要があります。 詳細については、「 cla.microsoft.com」を参照してください。

pull request を送信すると、CLA を提供して PR (ラベル、コメントなど) を適宜装飾する必要があるかどうかを CLA ボットが自動的に決定します。 ボットによって提供される手順にそのまま従ってください。 この操作は、Microsoft の CLA を使用するすべてのリポジトリについて、1 回だけ行う必要があります。

このプロジェクトでは、Microsoft オープン ソースの倫理規定を採用しています。 詳しくは、「Code of Conduct FAQ (倫理規定についてよくある質問)」を参照するか、opencode@microsoft.com 宛てに質問またはコメントをお送りください。