適用于 .NET 的 Azure 認知服務健康情況深入解析診斷用戶端程式庫 - 1.0.0-Beta.1 版
Health Insights 是使用 Azure 認知服務架構建置的 Azure 套用 AI 服務,利用多個認知服務、醫療保健 API 服務和其他 Azure 資源。
「疾病分析」模型會接收臨床病患的臨床記錄,並輸出疾病預備,例如臨床階段 TNM 類別和臨床階段 TNM 類別,以及臨床網站、直方學。
| 原始程式碼套件 (NuGet) | API 參考檔 | 產品檔
開始使用
Prerequisites
- 您需要 Azure 訂 用帳戶才能使用此套件。
- 現有的認知服務 Health Insights 實例。
安裝套件
使用 NuGet安裝適用于 .NET 的 Azure Health Insights 用戶端診斷程式庫:
dotnet add package Azure.Health.Insights.CancerProfiling --prerelease
下表顯示 SDK 版本與服務支援的 API 版本之間的關聯性:
SDK 版本 | 服務支援的 API 版本 |
---|---|
1.0.0-Beta.1 | 2023-03-01-preview |
驗證用戶端
您可以使用Azure 入口網站或 AzureCLI來尋找 Health Insights 服務資源的端點
# 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 金鑰
您可以從 Azure 入口網站中的 Health Insights 服務資源取得 API 金鑰 。 或者,您可以使用下方 的 Azure CLI 程式碼片段來取得資源的 API 金鑰。
az cognitiveservices account keys list --resource-group <your-resource-group-name> --name <your-resource-name>
使用 AzureKeyCredential 建立 CancerProfilingClient
取得 API 金鑰的值之後,請建立 AzureKeyCredential
。 使用端點和金鑰認證,您可以建立 CancerProfilingClient
:
string endpoint = "<endpoint>";
string apiKey = "<apiKey>";
var credential = new AzureKeyCredential(apiKey);
var client = new CancerProfilingClient(new Uri(endpoint), credential);
重要概念
疾病分析模型可讓您從非結構化臨床檔推斷疾病屬性,例如臨床網站、直方學、臨床階段 TNM 類別和臨床階段 TNM 類別。
範例
疾病分析
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}");
}
}
疑難排解
設定主控台記錄
查看記錄的最簡單方式是啟用主控台記錄。 若要建立將訊息輸出至主控台的 Azure SDK 記錄接聽程式,請使用 AzureEventSourceListener.CreateConsoleLogger 方法。
// Setup a listener to monitor logged events.
using AzureEventSourceListener listener = AzureEventSourceListener.CreateConsoleLogger();
若要深入瞭解其他記錄機制,請參閱 診斷範例。
下一步
其他文件
如需有關 Azure Health Insights 疾病分析的更廣泛檔,請參閱 docs.microsoft.com 上的 診斷檔 。
參與
此專案歡迎參與和提供建議。 大部分的參與都要求您同意「參與者授權合約 (CLA)」,宣告您有權且確實授與我們使用投稿的權利。 如需詳細資訊,請造訪 cla.microsoft.com。
當您提交提取要求時,CLA Bot 會自動判斷您是否需要提供 CLA,並適當地裝飾 PR (例如標籤、註解)。 請遵循 bot 提供的指示。 您只需要使用我們的 CLA 在所有存放庫上執行此動作一次。
此專案採用 Microsoft Open Source Code of Conduct (Microsoft 開放原始碼管理辦法)。 如需詳細資訊,請參閱管理辦法常見問題集,如有任何其他問題或意見請連絡 opencode@microsoft.com。