Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makale, desteklenen istemci kitaplıklarını, C#, Java, NodeJS ve Python ile REST API'yi kullanmaya yardımcı olan sistem durumu hızlı başlangıçları için Metin Analizi'ni içerir.
İpucu
Kod yazmaya gerek kalmadan özetlemeyi denemek için Microsoft Foundry'yi kullanabilirsiniz.
Başvuru belgeleri | Diğer örnekler | Paket (NuGet) | Kitaplık kaynak kodu
.NET için istemci kitaplığını kullanarak bir sağlık uygulaması için Metin Analizi oluşturmak üzere bu hızlı başlangıcı kullanın. Aşağıdaki örnekte, metinde görünen tıbbi varlıkları, ilişkileri ve onayları tanımlayabilen bir C# uygulaması oluşturacaksınız.
Önkoşullar
- Azure aboneliği - Ücretsiz olarak oluşturun
- Visual Studio IDE
- Azure aboneliğinizi aldıktan sonra bir Foundry kaynağı oluşturun.
- Uygulamanızı API'ye bağlamak için oluşturduğunuz kaynaktan anahtara ve uç noktaya ihtiyacınız vardır. Anahtarınızı ve uç noktanızı hızlı başlangıcın ilerleyen bölümlerinde koda yapıştırırsınız.
- Hizmeti denemek (her birinde 1.000 karakter olmak üzere 5.000 metin kaydı sağlayarak) ücretsiz fiyatlandırma katmanını (
Free F0) kullanabilir ve daha sonra üretim için fiyatlandırma katmanınaStandard Syükseltebilirsiniz.Standard Sfiyatlandırma katmanıyla da başlayabilir, ücretlendirilmeden önce aynı başlangıç kotasını (5000 metin kaydı) ücretsiz olarak alabilirsiniz. Fiyatlandırma hakkında daha fazla bilgi için Dil Fiyatlandırması adresini ziyaret edin.
Kurulum
Ortam değişkenlerini oluşturma
API istekleri göndermek için uygulamanızın kimliği doğrulanmalıdır. Üretim için kimlik bilgilerinizi depolamanın ve bunlara erişmenin güvenli bir yolunu kullanın. Bu örnekte, kimlik bilgilerinizi uygulamayı çalıştıran yerel makinedeki ortam değişkenlerine yazacaksınız.
Dil kaynak anahtarınızın ortam değişkenini ayarlamak için bir konsol penceresi açın ve işletim sisteminiz ve geliştirme ortamınıza yönelik yönergeleri izleyin.
- Ortam değişkenini ayarlamak için
LANGUAGE_KEYyerini kaynağınızın anahtarlarından biriyle değiştirinyour-key. - Çevre değişkenini ayarlamak için
LANGUAGE_ENDPOINT,your-endpointdeğerini kaynak uç noktanızla değiştirin.
Önemli
Kimlik bilgilerini bulutta çalışan uygulamalarınızla depolamaktan kaçınmak için Azure kaynakları için yönetilen kimliklerle Microsoft Entra Id kimlik doğrulaması yapmanızı öneririz.
API anahtarlarını dikkatli kullanın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin. API anahtarlarını kullanıyorsanız, bunları Azure Key Vault'ta güvenli bir şekilde depolayın, anahtarları düzenli olarak döndürün ve rol tabanlı erişim denetimi ve ağ erişim kısıtlamalarını kullanarak Azure Key Vault'a erişimi kısıtlayın. Uygulamalarınızda API anahtarlarını güvenli bir şekilde kullanma hakkında daha fazla bilgi için bkz . Azure Key Vault ile API anahtarları.
Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz . Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Not
Yalnızca geçerli çalışan konsoldaki ortam değişkenlerine erişmeniz gerekiyorsa, ortam değişkenini yerine setile setx ayarlayabilirsiniz.
Ortam değişkenlerini ekledikten sonra, konsol penceresi de dahil olmak üzere ortam değişkenlerini okuması gereken tüm çalışan programları yeniden başlatmanız gerekebilir. Örneğin, düzenleyici olarak Visual Studio kullanıyorsanız, örneği çalıştırmadan önce Visual Studio'yu yeniden başlatın.
Yeni .NET Core uygulaması oluşturma
Visual Studio IDE’yi kullanarak yeni bir .NET Core konsol uygulaması oluşturun. Bu eylem, tek bir C# kaynak dosyasıyla bir "Merhaba Dünya" projesi oluşturur: program.cs.
Çözüm Gezgini'nde çözüme sağ tıklayıp NuGet Paketlerini Yönet'i seçerek istemci kitaplığını yükleyin. Açılan paket yöneticisinde Gözat seçeneğini seçin ve Azure.AI.TextAnalytics arayın. Sürüm olarak 5.2.0 seçin ve Yükle seçeneğini belirleyin.
Paket Yöneticisi Konsolu’nu da kullanabilirsiniz.
Kod örneği
Aşağıdaki kodu program.cs dosyanıza kopyalayın. Sonra kodu çalıştırın.
Önemli
Azure portala gidin. Önkoşullar bölümünde oluşturduğunuz Azure Dili kaynağı başarıyla dağıtıldıysa, Sonraki Adımlar'ın altındaki Kaynağa Git düğmesine tıklayın. Kaynağınızın Anahtarlar ve Uç Nokta sayfasına gidip Kaynak Yönetimi'nin altında anahtarınızı ve uç noktanızı bulabilirsiniz.
Önemli
İşiniz bittiğinde anahtarı kodunuzdan kaldırmayı unutmayın ve asla herkese açık olarak göndermeyin. Üretim için Azure Key Vault gibi kimlik bilgilerinizi depolamanın ve bunlara erişmenin güvenli bir yolunu kullanın. Daha fazla bilgi için Döküm Araçları güvenlik makalesine bakın.
using Azure;
using System;
using Azure.AI.TextAnalytics;
using System.Collections.Generic;
using System.Threading.Tasks;
namespace Example
{
class Program
{
// This example requires environment variables named "LANGUAGE_KEY" and "LANGUAGE_ENDPOINT"
private static readonly AzureKeyCredential credentials = new (Environment.GetEnvironmentVariable("LANGUAGE_KEY"));
private static readonly Uri endpoint = new (Environment.GetEnvironmentVariable("LANGUAGE_ENDPOINT"));
// Example method for extracting information from healthcare-related text
static async Task healthExample(TextAnalyticsClient client)
{
string document = "Prescribed 100mg ibuprofen, taken twice daily.";
List<string> batchInput = new List<string>()
{
document
};
AnalyzeHealthcareEntitiesOperation healthOperation = await client.StartAnalyzeHealthcareEntitiesAsync(batchInput);
await healthOperation.WaitForCompletionAsync();
await foreach (AnalyzeHealthcareEntitiesResultCollection documentsInPage in healthOperation.Value)
{
Console.WriteLine($"Results of Azure Text Analytics for health async model, version: \"{documentsInPage.ModelVersion}\"");
Console.WriteLine("");
foreach (AnalyzeHealthcareEntitiesResult entitiesInDoc in documentsInPage)
{
if (!entitiesInDoc.HasError)
{
foreach (var entity in entitiesInDoc.Entities)
{
// view recognized healthcare entities
Console.WriteLine($" Entity: {entity.Text}");
Console.WriteLine($" Category: {entity.Category}");
Console.WriteLine($" Offset: {entity.Offset}");
Console.WriteLine($" Length: {entity.Length}");
Console.WriteLine($" NormalizedText: {entity.NormalizedText}");
}
Console.WriteLine($" Found {entitiesInDoc.EntityRelations.Count} relations in the current document:");
Console.WriteLine("");
// view recognized healthcare relations
foreach (HealthcareEntityRelation relations in entitiesInDoc.EntityRelations)
{
Console.WriteLine($" Relation: {relations.RelationType}");
Console.WriteLine($" For this relation there are {relations.Roles.Count} roles");
// view relation roles
foreach (HealthcareEntityRelationRole role in relations.Roles)
{
Console.WriteLine($" Role Name: {role.Name}");
Console.WriteLine($" Associated Entity Text: {role.Entity.Text}");
Console.WriteLine($" Associated Entity Category: {role.Entity.Category}");
Console.WriteLine("");
}
Console.WriteLine("");
}
}
else
{
Console.WriteLine(" Error!");
Console.WriteLine($" Document error code: {entitiesInDoc.Error.ErrorCode}.");
Console.WriteLine($" Message: {entitiesInDoc.Error.Message}");
}
Console.WriteLine("");
}
}
}
static async Task Main(string[] args)
{
var client = new TextAnalyticsClient(endpoint, credentials);
await healthExample(client);
}
}
}
Çıktı
Results of Azure Text Analytics for health async model, version: "2022-03-01"
Entity: 100mg
Category: Dosage
Offset: 11
Length: 5
NormalizedText:
Entity: ibuprofen
Category: MedicationName
Offset: 17
Length: 9
NormalizedText: ibuprofen
Entity: twice daily
Category: Frequency
Offset: 34
Length: 11
NormalizedText:
Found 2 relations in the current document:
Relation: DosageOfMedication
For this relation there are 2 roles
Role Name: Dosage
Associated Entity Text: 100mg
Associated Entity Category: Dosage
Role Name: Medication
Associated Entity Text: ibuprofen
Associated Entity Category: MedicationName
Relation: FrequencyOfMedication
For this relation there are 2 roles
Role Name: Medication
Associated Entity Text: ibuprofen
Associated Entity Category: MedicationName
Role Name: Frequency
Associated Entity Text: twice daily
Associated Entity Category: Frequency
İpucu
Hızlı Sağlık Hizmetleri Birlikte Çalışabilirlik Kaynakları (FHIR) yapılandırması, Azure Dil REST API'sini kullanarak kullanılabilir. İstemci kitaplıkları şu anda desteklenmiyor. API çağrınızda FHIR yapısını kullanma hakkında daha fazla bilgi edinin.
Başvuru belgeleri | Diğer örnekler | Paket (Maven) | Kitaplık kaynak kodu
Java için istemci kitaplığıyla sağlık için metin analizi uygulaması oluşturmak üzere bu hızlı başlangıç kılavuzunu kullanın. Aşağıdaki örnekte, metinde görünen tıbbi varlıkları, ilişkileri ve onayları tanımlayabilen bir Java uygulaması oluşturacaksınız.
Önkoşullar
- Azure aboneliği - Ücretsiz olarak oluşturun
- Java Geliştirme Seti (JDK) sürüm 8 veya üstü
- Azure aboneliğinizi aldıktan sonra bir Foundry kaynağı oluşturun.
- Uygulamanızı API'ye bağlamak için oluşturduğunuz kaynaktan anahtara ve uç noktaya ihtiyacınız vardır. Anahtarınızı ve uç noktanızı hızlı başlangıcın ilerleyen bölümlerinde koda yapıştırırsınız.
- Hizmeti denemek (her birinde 1.000 karakter olmak üzere 5.000 metin kaydı sağlayarak) ücretsiz fiyatlandırma katmanını (
Free F0) kullanabilir ve daha sonra üretim için fiyatlandırma katmanınaStandard Syükseltebilirsiniz. Fiyatlandırma katmanıStandard Sile de başlayabilir ve aynı başlangıç kotasını, ücretlendirilmeden önce ücretsiz olarak alabilirsiniz (5.000 metin kaydı). Fiyatlandırma hakkında daha fazla bilgi için Dil Fiyatlandırması adresini ziyaret edin.
Kurulum
Ortam değişkenlerini oluşturma
API istekleri göndermek için uygulamanızın kimliği doğrulanmalıdır. Üretim için kimlik bilgilerinizi depolamanın ve bunlara erişmenin güvenli bir yolunu kullanın. Bu örnekte, kimlik bilgilerinizi uygulamayı çalıştıran yerel makinedeki ortam değişkenlerine yazacaksınız.
Dil kaynak anahtarınızın ortam değişkenini ayarlamak için bir konsol penceresi açın ve işletim sisteminiz ve geliştirme ortamınıza yönelik yönergeleri izleyin.
- Ortam değişkenini ayarlamak için
LANGUAGE_KEYyerini kaynağınızın anahtarlarından biriyle değiştirinyour-key. - Çevre değişkenini ayarlamak için
LANGUAGE_ENDPOINT,your-endpointdeğerini kaynak uç noktanızla değiştirin.
Önemli
Kimlik bilgilerini bulutta çalışan uygulamalarınızla depolamaktan kaçınmak için Azure kaynakları için yönetilen kimliklerle Microsoft Entra Id kimlik doğrulaması yapmanızı öneririz.
API anahtarlarını dikkatli kullanın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin. API anahtarlarını kullanıyorsanız, bunları Azure Key Vault'ta güvenli bir şekilde depolayın, anahtarları düzenli olarak döndürün ve rol tabanlı erişim denetimi ve ağ erişim kısıtlamalarını kullanarak Azure Key Vault'a erişimi kısıtlayın. Uygulamalarınızda API anahtarlarını güvenli bir şekilde kullanma hakkında daha fazla bilgi için bkz . Azure Key Vault ile API anahtarları.
Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz . Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Not
Yalnızca geçerli çalışan konsoldaki ortam değişkenlerine erişmeniz gerekiyorsa, ortam değişkenini yerine setile setx ayarlayabilirsiniz.
Ortam değişkenlerini ekledikten sonra, konsol penceresi de dahil olmak üzere ortam değişkenlerini okuması gereken tüm çalışan programları yeniden başlatmanız gerekebilir. Örneğin, düzenleyici olarak Visual Studio kullanıyorsanız, örneği çalıştırmadan önce Visual Studio'yu yeniden başlatın.
İstemci kitaplığını ekleme
Tercih ettiğiniz IDE veya geliştirme ortamında bir Maven projesi oluşturun. Ardından aşağıdaki bağımlılığı projenizin pom.xml dosyasına ekleyin. Diğer derleme araçlarına yönelik uygulama söz dizimini çevrimiçi olarak bulabilirsiniz.
<dependencies>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-ai-textanalytics</artifactId>
<version>5.2.0</version>
</dependency>
</dependencies>
Kod örneği
EntityLinking.java adlı bir Java dosyası oluşturun. Dosyayı açın ve aşağıdaki kodu kopyalayın. Sonra kodu çalıştırın.
Önemli
Azure portala gidin. Önkoşullar bölümünde oluşturduğunuz Azure Dili kaynağı başarıyla dağıtıldıysa, Sonraki Adımlar'ın altındaki Kaynağa Git düğmesine tıklayın. Kaynağınızın Anahtarlar ve Uç Nokta sayfasına gidip Kaynak Yönetimi'nin altında anahtarınızı ve uç noktanızı bulabilirsiniz.
Önemli
İşiniz bittiğinde anahtarı kodunuzdan kaldırmayı unutmayın ve asla herkese açık olarak göndermeyin. Üretim için Azure Key Vault gibi kimlik bilgilerinizi depolamanın ve bunlara erişmenin güvenli bir yolunu kullanın. Daha fazla bilgi için Döküm Araçları güvenlik makalesine bakın.
import com.azure.core.credential.AzureKeyCredential;
import com.azure.ai.textanalytics.models.*;
import com.azure.ai.textanalytics.TextAnalyticsClientBuilder;
import com.azure.ai.textanalytics.TextAnalyticsClient;
import java.util.List;
import java.util.Arrays;
import com.azure.core.util.Context;
import com.azure.core.util.polling.SyncPoller;
import com.azure.ai.textanalytics.util.*;
public class Example {
// This example requires environment variables named "LANGUAGE_KEY" and "LANGUAGE_ENDPOINT"
private static String KEY = System.getenv("LANGUAGE_KEY");
private static String ENDPOINT = System.getenv("LANGUAGE_ENDPOINT");
public static void main(String[] args) {
TextAnalyticsClient client = authenticateClient(languageKey, languageEndpoint);
healthExample(client);
}
// Method to authenticate the client object with your key and endpoint
static TextAnalyticsClient authenticateClient(String key, String endpoint) {
return new TextAnalyticsClientBuilder()
.credential(new AzureKeyCredential(key))
.endpoint(endpoint)
.buildClient();
}
// Example method for extracting information from healthcare-related text
static void healthExample(TextAnalyticsClient client){
List<TextDocumentInput> documents = Arrays.asList(
new TextDocumentInput("0",
"Prescribed 100mg ibuprofen, taken twice daily."));
AnalyzeHealthcareEntitiesOptions options = new AnalyzeHealthcareEntitiesOptions().setIncludeStatistics(true);
SyncPoller<AnalyzeHealthcareEntitiesOperationDetail, AnalyzeHealthcareEntitiesPagedIterable>
syncPoller = client.beginAnalyzeHealthcareEntities(documents, options, Context.NONE);
System.out.printf("Poller status: %s.%n", syncPoller.poll().getStatus());
syncPoller.waitForCompletion();
// Task operation statistics
AnalyzeHealthcareEntitiesOperationDetail operationResult = syncPoller.poll().getValue();
System.out.printf("Operation created time: %s, expiration time: %s.%n",
operationResult.getCreatedAt(), operationResult.getExpiresAt());
System.out.printf("Poller status: %s.%n", syncPoller.poll().getStatus());
for (AnalyzeHealthcareEntitiesResultCollection resultCollection : syncPoller.getFinalResult()) {
// Model version
System.out.printf(
"Results of Azure Text Analytics for health entities\" Model, version: %s%n",
resultCollection.getModelVersion());
for (AnalyzeHealthcareEntitiesResult healthcareEntitiesResult : resultCollection) {
System.out.println("Document ID = " + healthcareEntitiesResult.getId());
System.out.println("Document entities: ");
// Recognized healthcare entities
for (HealthcareEntity entity : healthcareEntitiesResult.getEntities()) {
System.out.printf(
"\tText: %s, normalized name: %s, category: %s, subcategory: %s, confidence score: %f.%n",
entity.getText(), entity.getNormalizedText(), entity.getCategory(),
entity.getSubcategory(), entity.getConfidenceScore());
}
// Recognized healthcare entity relation groups
for (HealthcareEntityRelation entityRelation : healthcareEntitiesResult.getEntityRelations()) {
System.out.printf("Relation type: %s.%n", entityRelation.getRelationType());
for (HealthcareEntityRelationRole role : entityRelation.getRoles()) {
HealthcareEntity entity = role.getEntity();
System.out.printf("\tEntity text: %s, category: %s, role: %s.%n",
entity.getText(), entity.getCategory(), role.getName());
}
}
}
}
}
}
Çıktı
Poller status: IN_PROGRESS.
Operation created time: 2022-09-15T19:06:11Z, expiration time: 2022-09-16T19:06:11Z.
Poller status: SUCCESSFULLY_COMPLETED.
Results of Azure Text Analytics for health entities" Model, version: 2022-03-01
Document ID = 0
Document entities:
Text: 100mg, normalized name: null, category: Dosage, subcategory: null, confidence score: 0.980000.
Text: ibuprofen, normalized name: ibuprofen, category: MedicationName, subcategory: null, confidence score: 1.000000.
Text: twice daily, normalized name: null, category: Frequency, subcategory: null, confidence score: 1.000000.
Relation type: DosageOfMedication.
Entity text: 100mg, category: Dosage, role: Dosage.
Entity text: ibuprofen, category: MedicationName, role: Medication.
Relation type: FrequencyOfMedication.
Entity text: ibuprofen, category: MedicationName, role: Medication.
Entity text: twice daily, category: Frequency, role: Frequency.
İpucu
Hızlı Sağlık Hizmetleri Birlikte Çalışabilirlik Kaynakları (FHIR) yapılandırması, Azure Dil REST API'sini kullanarak kullanılabilir. İstemci kitaplıkları şu anda desteklenmiyor. API çağrınızda FHIR yapısını kullanma hakkında daha fazla bilgi edinin.
Başvuru belgeleri | Diğer örnekler | Paket (npm) | Kitaplık kaynak kodu
Node.js için istemci kitaplığıyla sağlık için Metin Analizi uygulaması oluşturmak için bu hızlı başlangıcı kullanın. Aşağıdaki örnekte, metinde görünen tıbbi varlıkları, ilişkileri ve onayları tanımlayabilen bir JavaScript uygulaması oluşturacaksınız.
Önkoşullar
- Azure aboneliği - Ücretsiz olarak oluşturun
- Node.js v14 LTS veya üzeri
- Azure aboneliğinizi aldıktan sonra bir Foundry kaynağı oluşturun.
- Uygulamanızı API'ye bağlamak için oluşturduğunuz kaynaktan anahtara ve uç noktaya ihtiyacınız vardır. Anahtarınızı ve uç noktanızı hızlı başlangıcın ilerleyen bölümlerinde koda yapıştırırsınız.
- Hizmeti denemek (her birinde 1.000 karakter olmak üzere 5.000 metin kaydı sağlayarak) ücretsiz fiyatlandırma katmanını (
Free F0) kullanabilir ve daha sonra üretim için fiyatlandırma katmanınaStandard Syükseltebilirsiniz. Fiyatlandırma katmanıStandard Sile de başlayabilir ve aynı başlangıç kotasını, ücretlendirilmeden önce ücretsiz olarak alabilirsiniz (5.000 metin kaydı). Fiyatlandırma hakkında daha fazla bilgi için Dil Fiyatlandırması adresini ziyaret edin.
Kurulum
Ortam değişkenlerini oluşturma
API istekleri göndermek için uygulamanızın kimliği doğrulanmalıdır. Üretim için kimlik bilgilerinizi depolamanın ve bunlara erişmenin güvenli bir yolunu kullanın. Bu örnekte, kimlik bilgilerinizi uygulamayı çalıştıran yerel makinedeki ortam değişkenlerine yazacaksınız.
Dil kaynak anahtarınızın ortam değişkenini ayarlamak için bir konsol penceresi açın ve işletim sisteminiz ve geliştirme ortamınıza yönelik yönergeleri izleyin.
- Ortam değişkenini ayarlamak için
LANGUAGE_KEYyerini kaynağınızın anahtarlarından biriyle değiştirinyour-key. - Çevre değişkenini ayarlamak için
LANGUAGE_ENDPOINT,your-endpointdeğerini kaynak uç noktanızla değiştirin.
Önemli
Kimlik bilgilerini bulutta çalışan uygulamalarınızla depolamaktan kaçınmak için Azure kaynakları için yönetilen kimliklerle Microsoft Entra Id kimlik doğrulaması yapmanızı öneririz.
API anahtarlarını dikkatli kullanın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin. API anahtarlarını kullanıyorsanız, bunları Azure Key Vault'ta güvenli bir şekilde depolayın, anahtarları düzenli olarak döndürün ve rol tabanlı erişim denetimi ve ağ erişim kısıtlamalarını kullanarak Azure Key Vault'a erişimi kısıtlayın. Uygulamalarınızda API anahtarlarını güvenli bir şekilde kullanma hakkında daha fazla bilgi için bkz . Azure Key Vault ile API anahtarları.
Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz . Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Not
Yalnızca geçerli çalışan konsoldaki ortam değişkenlerine erişmeniz gerekiyorsa, ortam değişkenini yerine setile setx ayarlayabilirsiniz.
Ortam değişkenlerini ekledikten sonra, konsol penceresi de dahil olmak üzere ortam değişkenlerini okuması gereken tüm çalışan programları yeniden başlatmanız gerekebilir. Örneğin, düzenleyici olarak Visual Studio kullanıyorsanız, örneği çalıştırmadan önce Visual Studio'yu yeniden başlatın.
Yeni bir Node.js uygulaması oluşturma
Konsol penceresinde (cmd, PowerShell veya Bash gibi), uygulamanız için yeni bir dizin oluşturun ve bu dizine gidin.
mkdir myapp
cd myapp
Bir npm init dosyası ile bir düğüm uygulaması oluşturmak için package.json komutunu çalıştırın.
npm init
İstemci kitaplığını yükleme
npm paketini yükleyin:
npm install @azure/ai-language-text
Kod örneği
Dosyayı açın ve aşağıdaki kodu kopyalayın. Sonra kodu çalıştırın.
Önemli
Azure portala gidin. Önkoşullar bölümünde oluşturduğunuz Azure Dili kaynağı başarıyla dağıtıldıysa, Sonraki Adımlar'ın altındaki Kaynağa Git düğmesine tıklayın. Kaynağınızın Anahtarlar ve Uç Nokta sayfasına gidip Kaynak Yönetimi'nin altında anahtarınızı ve uç noktanızı bulabilirsiniz.
Önemli
İşiniz bittiğinde anahtarı kodunuzdan kaldırmayı unutmayın ve asla herkese açık olarak göndermeyin. Üretim için Azure Key Vault gibi kimlik bilgilerinizi depolamanın ve bunlara erişmenin güvenli bir yolunu kullanın. Daha fazla bilgi için Döküm Araçları güvenlik makalesine bakın.
"use strict";
const { TextAnalyticsClient, AzureKeyCredential } = require("@azure/ai-text-analytics");
// This example requires environment variables named "LANGUAGE_KEY" and "LANGUAGE_ENDPOINT"
const key = process.env.LANGUAGE_KEY;
const endpoint = process.env.LANGUAGE_ENDPOINT;
const documents = ["Patient does not suffer from high blood pressure."];
async function main() {
console.log("== Text analytics for health sample ==");
const client = new TextAnalysisClient(endpoint, new AzureKeyCredential(key));
const actions = [
{
kind: "Healthcare",
},
];
const poller = await client.beginAnalyzeBatch(actions, documents, "en");
poller.onProgress(() => {
console.log(
`Last time the operation was updated was on: ${poller.getOperationState().modifiedOn}`
);
});
console.log(`The operation was created on ${poller.getOperationState().createdOn}`);
console.log(`The operation results will expire on ${poller.getOperationState().expiresOn}`);
const results = await poller.pollUntilDone();
for await (const actionResult of results) {
if (actionResult.kind !== "Healthcare") {
throw new Error(`Expected a healthcare results but got: ${actionResult.kind}`);
}
if (actionResult.error) {
const { code, message } = actionResult.error;
throw new Error(`Unexpected error (${code}): ${message}`);
}
for (const result of actionResult.results) {
console.log(`- Document ${result.id}`);
if (result.error) {
const { code, message } = result.error;
throw new Error(`Unexpected error (${code}): ${message}`);
}
console.log("\tRecognized Entities:");
for (const entity of result.entities) {
console.log(`\t- Entity "${entity.text}" of type ${entity.category}`);
if (entity.dataSources.length > 0) {
console.log("\t and it can be referenced in the following data sources:");
for (const ds of entity.dataSources) {
console.log(`\t\t- ${ds.name} with Entity ID: ${ds.entityId}`);
}
}
}
if (result.entityRelations.length > 0) {
console.log(`\tRecognized relations between entities:`);
for (const relation of result.entityRelations) {
console.log(
`\t\t- Relation of type ${relation.relationType} found between the following entities:`
);
for (const role of relation.roles) {
console.log(`\t\t\t- "${role.entity.text}" with the role ${role.name}`);
}
}
}
}
}
}
main().catch((err) => {
console.error("The sample encountered an error:", err);
});
Çıktı
== Text analytics for health sample ==
The operation was created on Mon Feb 13 2023 13:12:10 GMT-0800 (Pacific Standard Time)
The operation results will expire on Tue Feb 14 2023 13:12:10 GMT-0800 (Pacific Standard Time)
Last time the operation was updated was on: Mon Feb 13 2023 13:12:10 GMT-0800 (Pacific Standard Time)
- Document 0
Recognized Entities:
- Entity "high blood pressure" of type SymptomOrSign
and it can be referenced in the following data sources:
- UMLS with Entity ID: C0020538
- AOD with Entity ID: 0000023317
- BI with Entity ID: BI00001
- CCPSS with Entity ID: 1017493
- CCS with Entity ID: 7.1
- CHV with Entity ID: 0000015800
- COSTAR with Entity ID: 397
- CSP with Entity ID: 0571-5243
- CST with Entity ID: HYPERTENS
- DXP with Entity ID: U002034
- HPO with Entity ID: HP:0000822
- ICD10 with Entity ID: I10-I15.9
- ICD10AM with Entity ID: I10-I15.9
- ICD10CM with Entity ID: I10
- ICD9CM with Entity ID: 997.91
- ICPC2ICD10ENG with Entity ID: MTHU035456
- ICPC2P with Entity ID: K85004
- LCH with Entity ID: U002317
- LCH_NW with Entity ID: sh85063723
- LNC with Entity ID: LA14293-7
- MDR with Entity ID: 10020772
- MEDCIN with Entity ID: 33288
- MEDLINEPLUS with Entity ID: 34
- MSH with Entity ID: D006973
- MTH with Entity ID: 005
- MTHICD9 with Entity ID: 997.91
- NANDA-I with Entity ID: 00905
- NCI with Entity ID: C3117
- NCI_CPTAC with Entity ID: C3117
- NCI_CTCAE with Entity ID: E13785
- NCI_CTRP with Entity ID: C3117
- NCI_FDA with Entity ID: 1908
- NCI_GDC with Entity ID: C3117
- NCI_NCI-GLOSS with Entity ID: CDR0000458091
- NCI_NICHD with Entity ID: C3117
- NCI_caDSR with Entity ID: C3117
- NOC with Entity ID: 060808
- OMIM with Entity ID: MTHU002068
- PCDS with Entity ID: PRB_11000.06
- PDQ with Entity ID: CDR0000686951
- PSY with Entity ID: 23830
- RCD with Entity ID: XE0Ub
- SNM with Entity ID: F-70700
- SNMI with Entity ID: D3-02000
- SNOMEDCT_US with Entity ID: 38341003
- WHO with Entity ID: 0210
İpucu
Hızlı Sağlık Hizmetleri Birlikte Çalışabilirlik Kaynakları (FHIR) yapılandırması, Azure Dil REST API'sini kullanarak kullanılabilir. İstemci kitaplıkları şu anda desteklenmiyor. API çağrınızda FHIR yapısını kullanma hakkında daha fazla bilgi edinin.
Başvuru belgeleri | Diğer örnekler | Paket (PyPi) | Kitaplık kaynak kodu
Python için istemci kitaplığıyla sağlık için metin analizi uygulaması oluşturmak amacıyla bu hızlı başlangıcı kullanın. Aşağıdaki örnekte, metinde görünen tıbbi varlıkları, ilişkileri ve onayları tanımlayabilen bir Python uygulaması oluşturacaksınız.
Önkoşullar
- Azure aboneliği - Ücretsiz olarak oluşturun
- Python 3.8 veya üzeri
- Azure aboneliğinizi aldıktan sonra bir Foundry kaynağı oluşturun.
- Uygulamanızı API'ye bağlamak için oluşturduğunuz kaynaktan anahtara ve uç noktaya ihtiyacınız vardır. Anahtarınızı ve uç noktanızı hızlı başlangıcın ilerleyen bölümlerinde koda yapıştırırsınız.
- Hizmeti denemek (her birinde 1.000 karakter olmak üzere 5.000 metin kaydı sağlayarak) ücretsiz fiyatlandırma katmanını (
Free F0) kullanabilir ve daha sonra üretim için fiyatlandırma katmanınaStandard Syükseltebilirsiniz. Fiyatlandırma katmanıStandard Sile de başlayabilir ve aynı başlangıç kotasını, ücretlendirilmeden önce ücretsiz olarak alabilirsiniz (5.000 metin kaydı). Fiyatlandırma hakkında daha fazla bilgi için Dil Fiyatlandırması adresini ziyaret edin.
Kurulum
Ortam değişkenlerini oluşturma
API istekleri göndermek için uygulamanızın kimliği doğrulanmalıdır. Üretim için kimlik bilgilerinizi depolamanın ve bunlara erişmenin güvenli bir yolunu kullanın. Bu örnekte, kimlik bilgilerinizi uygulamayı çalıştıran yerel makinedeki ortam değişkenlerine yazacaksınız.
Dil kaynak anahtarınızın ortam değişkenini ayarlamak için bir konsol penceresi açın ve işletim sisteminiz ve geliştirme ortamınıza yönelik yönergeleri izleyin.
- Ortam değişkenini ayarlamak için
LANGUAGE_KEYyerini kaynağınızın anahtarlarından biriyle değiştirinyour-key. - Çevre değişkenini ayarlamak için
LANGUAGE_ENDPOINT,your-endpointdeğerini kaynak uç noktanızla değiştirin.
Önemli
Kimlik bilgilerini bulutta çalışan uygulamalarınızla depolamaktan kaçınmak için Azure kaynakları için yönetilen kimliklerle Microsoft Entra Id kimlik doğrulaması yapmanızı öneririz.
API anahtarlarını dikkatli kullanın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin. API anahtarlarını kullanıyorsanız, bunları Azure Key Vault'ta güvenli bir şekilde depolayın, anahtarları düzenli olarak döndürün ve rol tabanlı erişim denetimi ve ağ erişim kısıtlamalarını kullanarak Azure Key Vault'a erişimi kısıtlayın. Uygulamalarınızda API anahtarlarını güvenli bir şekilde kullanma hakkında daha fazla bilgi için bkz . Azure Key Vault ile API anahtarları.
Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz . Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Not
Yalnızca geçerli çalışan konsoldaki ortam değişkenlerine erişmeniz gerekiyorsa, ortam değişkenini yerine setile setx ayarlayabilirsiniz.
Ortam değişkenlerini ekledikten sonra, konsol penceresi de dahil olmak üzere ortam değişkenlerini okuması gereken tüm çalışan programları yeniden başlatmanız gerekebilir. Örneğin, düzenleyici olarak Visual Studio kullanıyorsanız, örneği çalıştırmadan önce Visual Studio'yu yeniden başlatın.
İstemci kitaplığını yükleme
Python yükledikten sonra şunları kullanarak istemci kitaplığını yükleyebilirsiniz:
pip install azure-ai-textanalytics==5.2.0
Kod örneği
Yeni bir Python dosyası oluşturun ve aşağıdaki kodu kopyalayın. Sonra kodu çalıştırın.
Önemli
Azure portala gidin. Önkoşullar bölümünde oluşturduğunuz Azure Dili kaynağı başarıyla dağıtıldıysa, Sonraki Adımlar'ın altındaki Kaynağa Git düğmesine tıklayın. Kaynağınızın Anahtarlar ve Uç Nokta sayfasına gidip Kaynak Yönetimi'nin altında anahtarınızı ve uç noktanızı bulabilirsiniz.
Önemli
İşiniz bittiğinde anahtarı kodunuzdan kaldırmayı unutmayın ve asla herkese açık olarak göndermeyin. Üretim için Azure Key Vault gibi kimlik bilgilerinizi depolamanın ve bunlara erişmenin güvenli bir yolunu kullanın. Daha fazla bilgi için Döküm Araçları güvenlik makalesine bakın.
# This example requires environment variables named "LANGUAGE_KEY" and "LANGUAGE_ENDPOINT"
key = os.environ.get('LANGUAGE_KEY')
endpoint = os.environ.get('LANGUAGE_ENDPOINT')
from azure.ai.textanalytics import TextAnalyticsClient
from azure.core.credentials import AzureKeyCredential
# Authenticate the client using your key and endpoint
def authenticate_client():
ta_credential = AzureKeyCredential(key)
text_analytics_client = TextAnalyticsClient(
endpoint=endpoint,
credential=ta_credential)
return text_analytics_client
client = authenticate_client()
# Example function for extracting information from healthcare-related text
def health_example(client):
documents = [
"""
Patient needs to take 50 mg of ibuprofen.
"""
]
poller = client.begin_analyze_healthcare_entities(documents)
result = poller.result()
docs = [doc for doc in result if not doc.is_error]
for idx, doc in enumerate(docs):
for entity in doc.entities:
print("Entity: {}".format(entity.text))
print("...Normalized Text: {}".format(entity.normalized_text))
print("...Category: {}".format(entity.category))
print("...Subcategory: {}".format(entity.subcategory))
print("...Offset: {}".format(entity.offset))
print("...Confidence score: {}".format(entity.confidence_score))
for relation in doc.entity_relations:
print("Relation of type: {} has the following roles".format(relation.relation_type))
for role in relation.roles:
print("...Role '{}' with entity '{}'".format(role.name, role.entity.text))
print("------------------------------------------")
health_example(client)
Çıktı
Entity: 50 mg
...Normalized Text: None
...Category: Dosage
...Subcategory: None
...Offset: 31
...Confidence score: 1.0
Entity: ibuprofen
...Normalized Text: ibuprofen
...Category: MedicationName
...Subcategory: None
...Offset: 40
...Confidence score: 1.0
Relation of type: DosageOfMedication has the following roles
...Role 'Dosage' with entity '50 mg'
...Role 'Medication' with entity 'ibuprofen'
İpucu
Hızlı Sağlık Hizmetleri Birlikte Çalışabilirlik Kaynakları (FHIR) yapılandırması, Azure Dil REST API'sini kullanarak kullanılabilir. İstemci kitaplıkları şu anda desteklenmiyor. API çağrınızda FHIR yapısını kullanma hakkında daha fazla bilgi edinin.
REST API kullanarak dil algılama istekleri göndermek için bu hızlı başlangıcı kullanın. Aşağıdaki örnekte, metinde görünen tıbbi varlıkları, ilişkileri ve onayları tanımlamak için cURL kullanırsınız.
Önkoşullar
- cURL'nin geçerli sürümü
- Azure aboneliği - ücretsiz bir abonelik oluşturun
- Azure aboneliğinizi aldıktan sonra bir Foundry kaynağı oluşturun.
- Uygulamanızı API'ye bağlamak için oluşturduğunuz kaynaktan anahtara ve uç noktaya ihtiyacınız vardır. Anahtarınızı ve uç noktanızı hızlı başlangıcın ilerleyen bölümlerinde koda yapıştırırsınız.
- Hizmeti denemek (her birinde 1.000 karakter olmak üzere 5.000 metin kaydı sağlayarak) ücretsiz fiyatlandırma katmanını (
Free F0) kullanabilir ve daha sonra üretim için fiyatlandırma katmanınaStandard Syükseltebilirsiniz. Fiyatlandırma katmanıStandard Sile de başlayabilir ve aynı başlangıç kotasını, ücretlendirilmeden önce ücretsiz olarak alabilirsiniz (5.000 metin kaydı). Fiyatlandırma hakkında daha fazla bilgi için Dil Fiyatlandırması adresini ziyaret edin.
Not
- Aşağıdaki BASH örneklerinde satır devamlılığı karakteri kullanılır
\. Konsolunuz veya terminaliniz farklı bir satır devamlılığı karakteri kullanıyorsa bu karakteri kullanın. - Dile özgü örnekleri GitHub'da bulabilirsiniz.
- Azure portalına gidin ve önkoşullarda oluşturduğunuz Azure Dil kaynağının anahtarını ve uç noktasını bulun. Bunlar kaynağın anahtar ve uç nokta sayfasında, kaynak yönetimi altında bulunur. Ardından aşağıdaki koddaki dizeleri anahtarınızla ve uç noktanızla değiştirin. API'yi çağırmak için aşağıdaki bilgilere ihtiyacınız vardır:
Kurulum
Ortam değişkenlerini oluşturma
API istekleri göndermek için uygulamanızın kimliği doğrulanmalıdır. Üretim için kimlik bilgilerinizi depolamanın ve bunlara erişmenin güvenli bir yolunu kullanın. Bu örnekte, kimlik bilgilerinizi uygulamayı çalıştıran yerel makinedeki ortam değişkenlerine yazacaksınız.
Dil kaynak anahtarınızın ortam değişkenini ayarlamak için bir konsol penceresi açın ve işletim sisteminiz ve geliştirme ortamınıza yönelik yönergeleri izleyin.
- Ortam değişkenini ayarlamak için
LANGUAGE_KEYyerini kaynağınızın anahtarlarından biriyle değiştirinyour-key. - Çevre değişkenini ayarlamak için
LANGUAGE_ENDPOINT,your-endpointdeğerini kaynak uç noktanızla değiştirin.
Önemli
Kimlik bilgilerini bulutta çalışan uygulamalarınızla depolamaktan kaçınmak için Azure kaynakları için yönetilen kimliklerle Microsoft Entra Id kimlik doğrulaması yapmanızı öneririz.
API anahtarlarını dikkatli kullanın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin. API anahtarlarını kullanıyorsanız, bunları Azure Key Vault'ta güvenli bir şekilde depolayın, anahtarları düzenli olarak döndürün ve rol tabanlı erişim denetimi ve ağ erişim kısıtlamalarını kullanarak Azure Key Vault'a erişimi kısıtlayın. Uygulamalarınızda API anahtarlarını güvenli bir şekilde kullanma hakkında daha fazla bilgi için bkz . Azure Key Vault ile API anahtarları.
Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz . Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Not
Yalnızca geçerli çalışan konsoldaki ortam değişkenlerine erişmeniz gerekiyorsa, ortam değişkenini yerine setile setx ayarlayabilirsiniz.
Ortam değişkenlerini ekledikten sonra, konsol penceresi de dahil olmak üzere ortam değişkenlerini okuması gereken tüm çalışan programları yeniden başlatmanız gerekebilir. Örneğin, düzenleyici olarak Visual Studio kullanıyorsanız, örneği çalıştırmadan önce Visual Studio'yu yeniden başlatın.
| parametre | Açıklama |
|---|---|
-X POST <endpoint> |
API'ye erişmek için uç noktanızı belirtir. |
-H Content-Type: application/json |
JSON verilerini göndermek için içerik türü. |
-H "Ocp-Apim-Subscription-Key:<key> |
API'ye erişmek için anahtarı belirtir. |
-d <documents> |
Göndermek istediğiniz belgeleri içeren JSON. |
Aşağıdaki cURL komutları bir BASH kabuğundan yürütülür. Bu komutları kendi kaynak adınız, kaynak anahtarınız ve JSON değerlerinizle düzenleyin.
Sağlık için Metin Analizi
- Komutu bir metin düzenleyicisine kopyalayın.
- Gerektiğinde komutta aşağıdaki değişiklikleri yapın:
- değerini
<your-language-resource-key>anahtarınız ile değiştirin. - İstek URL'sinin ilk bölümünü uç nokta URL'nizle
<your-language-resource-endpoint>değiştirin.
- değerini
- Bir komut istemi penceresi açın.
- Metin düzenleyicisindeki komutu komut istemi penceresine yapıştırın ve komutu çalıştırın.
curl -i -X POST $LANGUAGE_ENDPOINT/language/analyze-text/jobs?api-version=2022-05-15-preview \
-H "Content-Type: application/json" \
-H "Ocp-Apim-Subscription-Key: $LANGUAGE_KEY" \
-d '{"analysisInput":{"documents": [{"text": "The doctor prescried 200mg Ibuprofen.","language": "en","id": "1"}]},"tasks":[{"taskId": "analyze 1","kind": "Healthcare","parameters": {"fhirVersion": "4.0.1"}}]}'
Yanıt üst bilgisinden operation-location öğesini alın. Değer aşağıdaki URL'ye benzer olacaktır:
https://your-resource.cognitiveservices.azure.com/language/analyze-text/jobs/{JOB-ID}?api-version=2022-05-15-preview
İsteğin sonuçlarını almak için aşağıdaki cURL komutunu kullanın. Önceki {JOB-ID} yanıt üst bilgisinden aldığınız sayısal kimlik değeriyle operation-location değerini değiştirmenizden emin olun.
curl -X GET $LANGUAGE_ENDPOINT/language/analyze-text/jobs/{JOB-ID}?api-version=2022-05-15-preview \
-H "Content-Type: application/json" \
-H "Ocp-Apim-Subscription-Key: $LANGUAGE_KEY"
JSON yanıtı
{
"jobId": "{JOB-ID}",
"lastUpdatedDateTime": "2022-06-27T22:04:39Z",
"createdDateTime": "2022-06-27T22:04:38Z",
"expirationDateTime": "2022-06-28T22:04:38Z",
"status": "succeeded",
"errors": [],
"tasks": {
"completed": 1,
"failed": 0,
"inProgress": 0,
"total": 1,
"items": [
{
"kind": "HealthcareLROResults",
"lastUpdateDateTime": "2022-06-27T22:04:39.7086762Z",
"status": "succeeded",
"results": {
"documents": [
{
"id": "1",
"entities": [
{
"offset": 4,
"length": 6,
"text": "doctor",
"category": "HealthcareProfession",
"confidenceScore": 0.76
},
{
"offset": 21,
"length": 5,
"text": "200mg",
"category": "Dosage",
"confidenceScore": 0.99
},
{
"offset": 27,
"length": 9,
"text": "Ibuprofen",
"category": "MedicationName",
"confidenceScore": 1.0,
"name": "ibuprofen",
"links": [
{
"dataSource": "UMLS",
"id": "C0020740"
},
{
"dataSource": "AOD",
"id": "0000019879"
},
{
"dataSource": "ATC",
"id": "M01AE01"
},
{
"dataSource": "CCPSS",
"id": "0046165"
},
{
"dataSource": "CHV",
"id": "0000006519"
},
{
"dataSource": "CSP",
"id": "2270-2077"
},
{
"dataSource": "DRUGBANK",
"id": "DB01050"
},
{
"dataSource": "GS",
"id": "1611"
},
{
"dataSource": "LCH_NW",
"id": "sh97005926"
},
{
"dataSource": "LNC",
"id": "LP16165-0"
},
{
"dataSource": "MEDCIN",
"id": "40458"
},
{
"dataSource": "MMSL",
"id": "d00015"
},
{
"dataSource": "MSH",
"id": "D007052"
},
{
"dataSource": "MTHSPL",
"id": "WK2XYI10QM"
},
{
"dataSource": "NCI",
"id": "C561"
},
{
"dataSource": "NCI_CTRP",
"id": "C561"
},
{
"dataSource": "NCI_DCP",
"id": "00803"
},
{
"dataSource": "NCI_DTP",
"id": "NSC0256857"
},
{
"dataSource": "NCI_FDA",
"id": "WK2XYI10QM"
},
{
"dataSource": "NCI_NCI-GLOSS",
"id": "CDR0000613511"
},
{
"dataSource": "NDDF",
"id": "002377"
},
{
"dataSource": "PDQ",
"id": "CDR0000040475"
},
{
"dataSource": "RCD",
"id": "x02MO"
},
{
"dataSource": "RXNORM",
"id": "5640"
},
{
"dataSource": "SNM",
"id": "E-7772"
},
{
"dataSource": "SNMI",
"id": "C-603C0"
},
{
"dataSource": "SNOMEDCT_US",
"id": "387207008"
},
{
"dataSource": "USP",
"id": "m39860"
},
{
"dataSource": "USPMG",
"id": "MTHU000060"
},
{
"dataSource": "VANDF",
"id": "4017840"
}
]
}
],
"relations": [
{
"relationType": "DosageOfMedication",
"entities": [
{
"ref": "#/results/documents/0/entities/1",
"role": "Dosage"
},
{
"ref": "#/results/documents/0/entities/2",
"role": "Medication"
}
]
}
],
"warnings": [],
"fhirBundle": {
"resourceType": "Bundle",
"id": "95d61191-402a-48c6-9657-a1e4efbda877",
"meta": {
"profile": [
"http://hl7.org/fhir/4.0.1/StructureDefinition/Bundle"
]
},
"identifier": {
"system": "urn:ietf:rfc:3986",
"value": "urn:uuid:95d61191-402a-48c6-9657-a1e4efbda877"
},
"type": "document",
"entry": [
{
"fullUrl": "Composition/34b666d3-45e7-474d-a398-d3b0329541ad",
"resource": {
"resourceType": "Composition",
"id": "34b666d3-45e7-474d-a398-d3b0329541ad",
"status": "final",
"type": {
"coding": [
{
"system": "http://loinc.org",
"code": "11526-1",
"display": "Pathology study"
}
],
"text": "Pathology study"
},
"subject": {
"reference": "Patient/68dd21ce-58ae-4e59-9445-8331f99899ed",
"type": "Patient"
},
"encounter": {
"reference": "Encounter/90c75fea-4526-4e94-82f8-8df3bc983a14",
"type": "Encounter",
"display": "unknown"
},
"date": "2022-06-27",
"author": [
{
"reference": "Practitioner/a8ef1526-d4ce-41df-96df-e9d03428c840",
"type": "Practitioner",
"display": "Unknown"
}
],
"title": "Pathology study",
"section": [
{
"title": "General",
"code": {
"coding": [
{
"system": "",
"display": "Unrecognized Section"
}
],
"text": "General"
},
"text": {
"div": "<div>\r\n\t\t\t\t\t\t\t<h1>General</h1>\r\n\t\t\t\t\t\t\t<p>The doctor prescried 200mg Ibuprofen.</p>\r\n\t\t\t\t\t</div>"
},
"entry": [
{
"reference": "List/c8ca6757-1d7c-4c49-94e9-ef5263cb943c",
"type": "List",
"display": "General"
}
]
}
]
}
},
{
"fullUrl": "Practitioner/a8ef1526-d4ce-41df-96df-e9d03428c840",
"resource": {
"resourceType": "Practitioner",
"id": "a8ef1526-d4ce-41df-96df-e9d03428c840",
"extension": [
{
"extension": [
{
"url": "offset",
"valueInteger": -1
},
{
"url": "length",
"valueInteger": 7
}
],
"url": "http://hl7.org/fhir/StructureDefinition/derivation-reference"
}
],
"name": [
{
"text": "Unknown",
"family": "Unknown"
}
]
}
},
{
"fullUrl": "Patient/68dd21ce-58ae-4e59-9445-8331f99899ed",
"resource": {
"resourceType": "Patient",
"id": "68dd21ce-58ae-4e59-9445-8331f99899ed",
"gender": "unknown"
}
},
{
"fullUrl": "Encounter/90c75fea-4526-4e94-82f8-8df3bc983a14",
"resource": {
"resourceType": "Encounter",
"id": "90c75fea-4526-4e94-82f8-8df3bc983a14",
"meta": {
"profile": [
"http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter"
]
},
"status": "finished",
"class": {
"system": "http://terminology.hl7.org/CodeSystem/v3-ActCode",
"display": "unknown"
},
"subject": {
"reference": "Patient/68dd21ce-58ae-4e59-9445-8331f99899ed",
"type": "Patient"
}
}
},
{
"fullUrl": "MedicationStatement/17aeee32-1189-47fc-9223-8abe174f1292",
"resource": {
"resourceType": "MedicationStatement",
"id": "17aeee32-1189-47fc-9223-8abe174f1292",
"extension": [
{
"extension": [
{
"url": "offset",
"valueInteger": 27
},
{
"url": "length",
"valueInteger": 9
}
],
"url": "http://hl7.org/fhir/StructureDefinition/derivation-reference"
}
],
"status": "active",
"medicationCodeableConcept": {
"coding": [
{
"system": "http://www.nlm.nih.gov/research/umls",
"code": "C0020740",
"display": "ibuprofen"
},
{
"system": "http://www.nlm.nih.gov/research/umls/aod",
"code": "0000019879"
},
{
"system": "http://www.whocc.no/atc",
"code": "M01AE01"
},
{
"system": "http://www.nlm.nih.gov/research/umls/ccpss",
"code": "0046165"
},
{
"system": "http://www.nlm.nih.gov/research/umls/chv",
"code": "0000006519"
},
{
"system": "http://www.nlm.nih.gov/research/umls/csp",
"code": "2270-2077"
},
{
"system": "http://www.nlm.nih.gov/research/umls/drugbank",
"code": "DB01050"
},
{
"system": "http://www.nlm.nih.gov/research/umls/gs",
"code": "1611"
},
{
"system": "http://www.nlm.nih.gov/research/umls/lch_nw",
"code": "sh97005926"
},
{
"system": "http://loinc.org",
"code": "LP16165-0"
},
{
"system": "http://www.nlm.nih.gov/research/umls/medcin",
"code": "40458"
},
{
"system": "http://www.nlm.nih.gov/research/umls/mmsl",
"code": "d00015"
},
{
"system": "http://www.nlm.nih.gov/research/umls/msh",
"code": "D007052"
},
{
"system": "http://www.nlm.nih.gov/research/umls/mthspl",
"code": "WK2XYI10QM"
},
{
"system": "http://ncimeta.nci.nih.gov",
"code": "C561"
},
{
"system": "http://www.nlm.nih.gov/research/umls/nci_ctrp",
"code": "C561"
},
{
"system": "http://www.nlm.nih.gov/research/umls/nci_dcp",
"code": "00803"
},
{
"system": "http://www.nlm.nih.gov/research/umls/nci_dtp",
"code": "NSC0256857"
},
{
"system": "http://www.nlm.nih.gov/research/umls/nci_fda",
"code": "WK2XYI10QM"
},
{
"system": "http://www.nlm.nih.gov/research/umls/nci_nci-gloss",
"code": "CDR0000613511"
},
{
"system": "http://www.nlm.nih.gov/research/umls/nddf",
"code": "002377"
},
{
"system": "http://www.nlm.nih.gov/research/umls/pdq",
"code": "CDR0000040475"
},
{
"system": "http://www.nlm.nih.gov/research/umls/rcd",
"code": "x02MO"
},
{
"system": "http://www.nlm.nih.gov/research/umls/rxnorm",
"code": "5640"
},
{
"system": "http://snomed.info/sct",
"code": "E-7772"
},
{
"system": "http://snomed.info/sct/900000000000207008",
"code": "C-603C0"
},
{
"system": "http://snomed.info/sct/731000124108",
"code": "387207008"
},
{
"system": "http://www.nlm.nih.gov/research/umls/usp",
"code": "m39860"
},
{
"system": "http://www.nlm.nih.gov/research/umls/uspmg",
"code": "MTHU000060"
},
{
"system": "http://hl7.org/fhir/ndfrt",
"code": "4017840"
}
],
"text": "Ibuprofen"
},
"subject": {
"reference": "Patient/68dd21ce-58ae-4e59-9445-8331f99899ed",
"type": "Patient"
},
"context": {
"reference": "Encounter/90c75fea-4526-4e94-82f8-8df3bc983a14",
"type": "Encounter",
"display": "unknown"
},
"dosage": [
{
"text": "200mg",
"doseAndRate": [
{
"doseQuantity": {
"value": 200
}
}
]
}
]
}
},
{
"fullUrl": "List/c8ca6757-1d7c-4c49-94e9-ef5263cb943c",
"resource": {
"resourceType": "List",
"id": "c8ca6757-1d7c-4c49-94e9-ef5263cb943c",
"status": "current",
"mode": "snapshot",
"title": "General",
"subject": {
"reference": "Patient/68dd21ce-58ae-4e59-9445-8331f99899ed",
"type": "Patient"
},
"encounter": {
"reference": "Encounter/90c75fea-4526-4e94-82f8-8df3bc983a14",
"type": "Encounter",
"display": "unknown"
},
"entry": [
{
"item": {
"reference": "MedicationStatement/17aeee32-1189-47fc-9223-8abe174f1292",
"type": "MedicationStatement",
"display": "Ibuprofen"
}
}
]
}
}
]
}
}
],
"errors": [],
"modelVersion": "2022-03-01"
}
}
]
}
}
İpucu
Hızlı Sağlık Hizmetleri Birlikte Çalışabilirlik Kaynakları (FHIR) yapılandırması, Azure Dil REST API'sini kullanarak kullanılabilir. İstemci kitaplıkları şu anda desteklenmiyor. API çağrınızda FHIR yapısını kullanma hakkında daha fazla bilgi edinin.
Önkoşullar
Foundry Oyun Alanı'na gidin
Sol taraftaki bölmeyi kullanarak Oyun Alanları'nı seçin. Ardından Azure Language Playground'ı deneyin düğmesini seçin.
Foundry Playground'da Sağlık için Metin Analizi kullanma
Language Playground dört bölümden oluşur:
- Üst başlık: Şu anda kullanılabilir olan Dillerden herhangi birini buradan seçebilirsiniz.
- Sağ bölme: Bu bölme, hizmete özgü özelliklerin yanı sıra API ve model sürümü gibi hizmetin Yapılandırma seçeneklerini bulabileceğiniz yerdir.
- Orta bölme: Bu bölme, işlemek üzere metninizi girdiğiniz yerdir. İşlem çalıştırıldıktan sonra burada bazı sonuçlar gösterilir.
- Sağ bölme: Bu bölmede çalıştırma işleminin ayrıntıları gösterilir.
Burada, Sağlık bilgilerini ayıkla başlıklı üst başlık kutucuğunu seçerek Sağlık için Metin Analizi özelliğini seçebilirsiniz.
Sağlık bilgilerini ayıklamayı kullan
Sağlık bilgilerini ayıklama, metindeki sağlık bilgilerini tanımlamak ve ayıklamak için tasarlanmıştır.
Yapılandırma'da aşağıdaki seçenekler vardır:
| Seçenek | Açıklama |
|---|---|
| API sürümünü seçin | API'nin hangi sürümünün kullanılacağını seçin. |
| Model sürümünü seçin | Modelin hangi sürümünün kullanılacağını seçin. |
| Metin dilini seçme | Dil girişinin hangi dilde yapıldığını seçin. |
| Çıktıyı FHIR yapısında döndür. | Hızlı Sağlık Bakımı Birlikte Çalışabilirlik Kaynakları (FHIR) yapısında çıktıyı döndürür. |
İşleminiz tamamlandıktan sonra, varlık türü orta bölmedeki her varlığın altında görüntülenir ve Ayrıntılar bölümünde her varlık için aşağıdaki alanlar bulunur:
| Alan | Açıklama |
|---|---|
| Varlık | Algılanan varlık. |
| Kategori | Algılanan varlığın türü. |
| Güven | Modelin varlığın türünü belirlemenin doğruluğundan ne kadar emin olduğu. |
Kaynakları temizleme
Azure AI kaynağını temizlemek ve kaldırmak için tek tek kaynağı veya kaynak grubunun tamamını silebilirsiniz. Kaynak grubunu silerseniz içindeki tüm kaynaklar da silinir.