تطوير تطبيقات خدمات Azure الذكاء الاصطناعي باستخدام Key Vault

تعرف على كيفية تطوير تطبيقات خدمات Azure الذكاء الاصطناعي بأمان باستخدام Azure Key Vault.

يقلل Key Vault من خطر تسرب الأسرار عن طريق الخطأ، لأنك تتجنب تخزين معلومات الأمان في التطبيق الخاص بك.

المتطلبات الأساسية

إشعار

راجع الوثائق ومقالات التشغيل السريع لخدمة Azure الذكاء الاصطناعي التي تستخدمها للحصول على فهم لما يلي:

  • بيانات الاعتماد والمعلومات الأخرى التي ستحتاجها لإرسال استدعاءات واجهة برمجة التطبيقات.
  • الحزم والتعليمات البرمجية الذي ستحتاج إليها لتشغيل تطبيقك.

الحصول على بيانات الاعتماد الخاصة بك من مورد خدمات Azure الذكاء الاصطناعي

قبل إضافة معلومات بيانات الاعتماد الخاصة بك إلى مخزن مفاتيح Azure، تحتاج إلى استردادها من مورد خدمات Azure الذكاء الاصطناعي. على سبيل المثال، إذا كانت خدمتك تحتاج إلى مفتاح ونقطة نهاية، فستجدها باستخدام الخطوات التالية:

  1. انتقل إلى موارد Azure في مدخل Microsoft Azure.

  2. من القائمة القابلة للطي على الجانب الأيسر، حدد المفاتيح ونقطة النهاية.

    A screenshot showing the key and endpoint page in the Azure portal.

تتطلب بعض خدمات Azure الذكاء الاصطناعي معلومات مختلفة لمصادقة استدعاءات واجهة برمجة التطبيقات، مثل مفتاح ومنطقة. تأكد من استرداد هذه المعلومات قبل المتابعة.

إضافة بيانات الاعتماد الخاصة بك إلى مخزن المفاتيح الخاص بك

لكي يقوم تطبيقك باسترداد بيانات الاعتماد واستخدامها لمصادقة استدعاءات واجهة برمجة التطبيقات، ستحتاج إلى إضافتها إلى البيانات السرية لمخزن المفاتيح.

كرر هذه الخطوات لإنشاء بيانات سرية لكل بيانات اعتماد مورد مطلوبة. على سبيل المثال، مفتاح ونقطة نهاية. سيتم استخدام أسماء البيانات السرية هذه لاحقًا لمصادقة التطبيق الخاص بك.

  1. افتح علامة تبويب أو نافذة مستعرض جديدة. انتقل إلى key vault في مدخل Microsoft Azure.

  2. من القائمة القابلة للطي على الجانب الأيسر، حدد العناصر>البيانات السرية.

  3. حدد إنشاء/استيراد.

    A screenshot showing the key vault key page in the Azure portal.

  4. في شاشة إنشاء بيانات سرية أدخل القيم التالية:

    الاسم القيمة‬
    خيارات التحميل يدوي
    الاسم اسم بيانات سرية للمفتاح أو نقطة النهاية. على سبيل المثال: "CognitiveServicesKey" أو "CognitiveServicesEndpoint"
    القيمة‬ مفتاح مورد خدمات Azure الذكاء الاصطناعي أو نقطة النهاية.

    لاحقًا سيستخدم تطبيقك "اسم" البيانات السرية للوصول بأمان إلى "القيمة".

  5. اترك القيم الأخرى كقيم افتراضية. حدد إنشاء.

    تلميح

    تأكد من تذكر الأسماء التي قمت بتعيينها للبيانات السرية الخاصة بك، حيث ستستخدمها لاحقًا في التطبيق الخاص بك.

يجب أن يكون لديك الآن بيانات سرية مسماة لمعلومات الموارد الخاصة بك.

إنشاء متغير بيئة لاسم مخزن المفاتيح الخاص بك

نوصي بإنشاء متغير بيئة لاسم Azure key vault الخاص بك. سيقرأ التطبيق الخاص بك متغير البيئة هذا في وقت التشغيل لاسترداد معلومات المفتاح ونقطة النهاية.

لتعيين متغيرات البيئة، استخدم أحد الأوامر التالية. استبدلKEY_VAULT_NAME باسم متغير البيئة، واستبدل Your-Key-Vault-Name باسم مخزن المفاتيح الخاص بك، والذي سيتم تخزينه في متغير البيئة.

إنشاء وتعيين متغير البيئة المستمر، مع إعطاء القيمة.

setx KEY_VAULT_NAME "Your-Key-Vault-Name"

في مثيل جديد من موجه الأوامر، اقرأ متغير البيئة.

echo %KEY_VAULT_NAME%

المصادقة على Azure باستخدام Visual Studio

يمكن للمطورين الذين يستخدمون Visual Studio 2017 أو أحدث مصادقة حساب Microsoft Entra من خلال Visual Studio. يمكنك هذا من الوصول إلى البيانات السرية في مخزن المفاتيح الخاص بك عن طريق تسجيل الدخول إلى اشتراك Azure الخاص بك من داخل IDE.

للمصادقة في Visual Studio، حدد الأدوات من قائمة التنقل العلوية، وحدد الخيارات. انتقل إلى خيار مصادقة خدمة Azure لتسجيل الدخول باستخدام اسم المستخدم وكلمة المرور.

المصادقة باستخدام سطر الأوامر

قبل أن تتمكن من منح حق الوصول إلى مخزن المفاتيح الخاص بك، يجب عليك المصادقة باستخدام اسم مستخدم Microsoft Entra وكلمة المرور.

للمصادقة باستخدام Azure CLI، شغّل الأمر az login.

az login

على نظام مزود بمستعرض ويب افتراضي، سيقوم Azure CLI بتشغيل المستعرض للمصادقة. بالنسبة للأنظمة التي لا تحتوي على مستعرض ويب افتراضي، سيستخدم الأمر az login تدفق مصادقة رمز الجهاز. يمكنك أيضًا إجبار Azure CLI على استخدام تدفق التعليمات البرمجية للجهاز بدلًا من تشغيل مستعرض عن طريق تحديد الوسيطة --use-device-code.

إذا كان لديك اشتراكات متعددة، فتأكد من تحديد اشتراك Azure الذي يحتوي على مخزن المفاتيح الخاص بك.

امنح حق الوصول إلى خزنة المفاتيح الخاصة بك

إنشاء سياسة وصول إلى خزنة المفاتيح التي تمنح أذونات سرية لحساب المستخدم الخاص بك.

لتعيين نهج الوصول، قم بتشغيل الأمر az keyvault set-policy. استبدل Your-Key-Vault-Name باسم مخزن المفاتيح الخاصة بك. استبدل user@domain.com باسم مستخدم Microsoft Entra.

az keyvault set-policy --name Your-Key-Vault-Name --upn user@domain.com --secret-permissions delete get list set purge

إنشاء تطبيق C# جديد

باستخدام Visual Studio IDE، قم بإنشاء تطبيق وحدة تحكم .NET Core جديد. سيؤدي هذا إلى إنشاء مشروع "مرحبًا بالعالم" مع ملف مصدر C# واحد: program.cs.

ثبت مكتبات العميل التالية بالنقر بزر الماوس الأيمن فوق الحل في مستكشف الحلول وتحديد إدارة حزم NuGet. في مدير الحزم الذي يفتح حدد استعراض وابحث عن المكتبات التالية، وحدد تثبيت لكل منها:

  • Azure.Security.KeyVault.Secrets
  • Azure.Identity

استيراد التعليمة البرمجية المثال

انسخ التعليمات البرمجية المثال التالية في الملف program.cs. استبدل Your-Key-Secret-Name وYour-Endpoint-Secret-Name بأسماء البيانات السرية التي قمت بتعيينها في مخزن المفاتيح الخاص بك.

using System;
using System.Threading.Tasks;
using Azure;
using Azure.Identity;
using Azure.Security.KeyVault.Secrets;
using System.Net;

namespace key_vault_console_app
{
    class Program
    {
        static async Task Main(string[] args)
        {
            //Name of your key vault
            var keyVaultName = Environment.GetEnvironmentVariable("KEY_VAULT_NAME");

            //variables for retrieving the key and endpoint from your key vault.
            //Set these variables to the names you created for your secrets
            const string keySecretName = "Your-Key-Secret-Name";
            const string endpointSecretName = "Your-Endpoint-Secret-Name";

            //Endpoint for accessing your key vault
            var kvUri = $"https://{keyVaultName}.vault.azure.net";

            var keyVaultClient = new SecretClient(new Uri(kvUri), new DefaultAzureCredential());

            Console.WriteLine($"Retrieving your secrets from {keyVaultName}.");

            //Key and endpoint secrets retrieved from your key vault
            var keySecret = await keyVaultClient.GetSecretAsync(keySecretName);
            var endpointSecret = await keyVaultClient.GetSecretAsync(endpointSecretName);
            Console.WriteLine($"Your key secret value is: {keySecret.Value.Value}");
            Console.WriteLine($"Your endpoint secret value is: {endpointSecret.Value.Value}");
            Console.WriteLine("Secrets retrieved successfully");

        }
    }
}

شغّل التطبيق

شغّل التطبيق بتحديد زر تتبع الأخطاء أعلى Visual studio. سيتم استرداد البيانات السرية للمفتاح ونقطة النهاية من مخزن المفاتيح الخاص بك.

إرسال استدعاء خدمة Language الاختبار (اختياري)

إذا كنت تستخدم موردًا متعدد الخدمات أو مورد Language، يمكنك تحديث التطبيق الخاص بك باتباع هذه الخطوات لإرسال مثال استدعاء Named Entity Recognition عن طريق استرداد مفتاح ونقطة نهاية من مخزن المفاتيح الخاص بك.

  1. ثبت مكتبة Azure.AI.TextAnalytics بالنقر بزر الماوس الأيمن فوق الحل في مستكشف الحلول وتحديد إدارة حزم NuGet. في مدير الحزم الذي يفتح حدد استعراض وابحث عن المكتبات التالية، وحدد تثبيت لكل منها:

  2. أضف التوجيه التالي إلى أعلى الملف program.cs الخاص بك.

    using Azure.AI.TextAnalytics;
    
  3. أضف عينة التعليمة البرمجية التالية إلى تطبيقك.

    // Example method for extracting named entities from text 
    private static void EntityRecognitionExample(string keySecret, string endpointSecret)
    {
        //String to be sent for Named Entity Recognition
        var exampleString = "I had a wonderful trip to Seattle last week.";
    
        AzureKeyCredential azureKeyCredential = new AzureKeyCredential(keySecret);
        Uri endpoint = new Uri(endpointSecret);
        var languageServiceClient = new TextAnalyticsClient(endpoint, azureKeyCredential);
    
        Console.WriteLine($"Sending a Named Entity Recognition (NER) request");
        var response = languageServiceClient.RecognizeEntities(exampleString);
        Console.WriteLine("Named Entities:");
        foreach (var entity in response.Value)
        {
            Console.WriteLine($"\tText: {entity.Text},\tCategory: {entity.Category},\tSub-Category: {entity.SubCategory}");
            Console.WriteLine($"\t\tScore: {entity.ConfidenceScore:F2},\tLength: {entity.Length},\tOffset: {entity.Offset}\n");
        }
    }
    
  4. أضف التعليمات البرمجية التالية لاستدعاء EntityRecognitionExample() من أسلوبك الرئيسي، مع قيم المفتاح ونقطة النهاية.

    EntityRecognitionExample(keySecret.Value.Value, endpointSecret.Value.Value);
    
  5. قم بتشغيل التطبيق:

مصادقة تطبيقك

قبل أن تتمكن من منح حق الوصول إلى مخزن المفاتيح الخاص بك، يجب عليك المصادقة باستخدام اسم مستخدم Microsoft Entra وكلمة المرور.

للمصادقة باستخدام Azure CLI، شغّل الأمر az login.

az login

على نظام مزود بمستعرض ويب افتراضي، سيقوم Azure CLI بتشغيل المستعرض للمصادقة. بالنسبة للأنظمة التي لا تحتوي على مستعرض ويب افتراضي، سيستخدم الأمر az login تدفق مصادقة رمز الجهاز. يمكنك أيضًا إجبار Azure CLI على استخدام تدفق التعليمات البرمجية للجهاز بدلًا من تشغيل مستعرض عن طريق تحديد الوسيطة --use-device-code.

إذا كان لديك اشتراكات متعددة، فتأكد من تحديد اشتراك Azure الذي يحتوي على مخزن المفاتيح الخاص بك.

امنح حق الوصول إلى خزنة المفاتيح الخاصة بك

إنشاء سياسة وصول إلى خزنة المفاتيح التي تمنح أذونات سرية لحساب المستخدم الخاص بك.

لتعيين نهج الوصول، قم بتشغيل الأمر az keyvault set-policy. استبدل Your-Key-Vault-Name باسم مخزن المفاتيح الخاصة بك. استبدل user@domain.com باسم مستخدم Microsoft Entra.

az keyvault set-policy --name Your-Key-Vault-Name --upn user@domain.com --secret-permissions delete get list set purge

إنشاء تطبيق Python

أنشئ مجلدًا جديدًا باسم keyVaultExample. ثم استخدم محرر التعليمات البرمجية المفضل لديك لإنشاء ملف باسم program.py داخل المجلد الذي تم إنشاؤه حديثًا.

تثبيت حزم خدمتي Key Vault وLanguage

  1. في محطة طرفية أو موجه أوامر، انتقل إلى مجلد المشروع وقم بتثبيت مكتبة هوية Microsoft Entra:

    pip install azure-identity
    
  2. تثبيت مكتبة البيانات السرية بالمخزن الرئيسي:

    pip install azure-keyvault-secrets
    

استيراد التعليمة البرمجية المثال

أضف عينة التعليمات البرمجية التالية إلى الملف المسمى program.py. استبدل Your-Key-Secret-Name وYour-Endpoint-Secret-Name بأسماء البيانات السرية التي قمت بتعيينها في مخزن المفاتيح الخاص بك.

import os
from azure.keyvault.secrets import SecretClient
from azure.identity import DefaultAzureCredential
from azure.core.credentials import AzureKeyCredential

keyVaultName = os.environ["KEY_VAULT_NAME"]

# Set these variables to the names you created for your secrets
keySecretName = "Your-Key-Secret-Name"
endpointSecretName = "Your-Endpoint-Secret-Name"

# URI for accessing key vault
KVUri = f"https://{keyVaultName}.vault.azure.net"

# Instantiate the client and retrieve secrets
credential = DefaultAzureCredential()
kv_client = SecretClient(vault_url=KVUri, credential=credential)

print(f"Retrieving your secrets from {keyVaultName}.")

retrieved_key = kv_client.get_secret(keySecretName).value
retrieved_endpoint = kv_client.get_secret(endpointSecretName).value

print(f"Your secret key value is {retrieved_key}.");
print(f"Your secret endpoint value is {retrieved_endpoint}.");

شغّل التطبيق

استخدم الأمر التالي لتشغيل التطبيق. سيتم استرداد البيانات السرية للمفتاح ونقطة النهاية من مخزن المفاتيح الخاص بك.

python ./program.py

إرسال استدعاء خدمة Language الاختبار (اختياري)

إذا كنت تستخدم موردًا متعدد الخدمات أو مورد Language، يمكنك تحديث التطبيق الخاص بك باتباع هذه الخطوات لإرسال مثال استدعاء Named Entity Recognition عن طريق استرداد مفتاح ونقطة نهاية من مخزن المفاتيح الخاص بك.

  1. ثبّت مكتبة خدمة Language:

    pip install azure-ai-textanalytics==5.1.0
    
  2. إضافة التعليمة البرمجية التالية إلى تطبيقك

    from azure.ai.textanalytics import TextAnalyticsClient
    # Authenticate the key vault secrets client using your key and endpoint 
    azure_key_credential = AzureKeyCredential(retrieved_key)
    # Now you can use key vault credentials with the Language service
    language_service_client = TextAnalyticsClient(
        endpoint=retrieved_endpoint, 
        credential=azure_key_credential)
    
    # Example of recognizing entities from text
    
    print("Sending NER request")
    
    try:
        documents = ["I had a wonderful trip to Seattle last week."]
        result = language_service_client.recognize_entities(documents = documents)[0]
        print("Named Entities:\n")
        for entity in result.entities:
            print("\tText: \t", entity.text, "\tCategory: \t", entity.category, "\tSubCategory: \t", entity.subcategory,
                    "\n\tConfidence Score: \t", round(entity.confidence_score, 2), "\tLength: \t", entity.length, "\tOffset: \t", entity.offset, "\n")
    
    except Exception as err:
        print("Encountered exception. {}".format(err))
    
  3. قم بتشغيل التطبيق:

مصادقة تطبيقك

قبل أن تتمكن من منح حق الوصول إلى مخزن المفاتيح الخاص بك، يجب عليك المصادقة باستخدام اسم مستخدم Microsoft Entra وكلمة المرور.

للمصادقة باستخدام Azure CLI، شغّل الأمر az login.

az login

على نظام مزود بمستعرض ويب افتراضي، سيقوم Azure CLI بتشغيل المستعرض للمصادقة. بالنسبة للأنظمة التي لا تحتوي على مستعرض ويب افتراضي، سيستخدم الأمر az login تدفق مصادقة رمز الجهاز. يمكنك أيضًا إجبار Azure CLI على استخدام تدفق التعليمات البرمجية للجهاز بدلًا من تشغيل مستعرض عن طريق تحديد الوسيطة --use-device-code.

إذا كان لديك اشتراكات متعددة، فتأكد من تحديد اشتراك Azure الذي يحتوي على مخزن المفاتيح الخاص بك.

امنح حق الوصول إلى خزنة المفاتيح الخاصة بك

إنشاء سياسة وصول إلى خزنة المفاتيح التي تمنح أذونات سرية لحساب المستخدم الخاص بك.

لتعيين نهج الوصول، قم بتشغيل الأمر az keyvault set-policy. استبدل Your-Key-Vault-Name باسم مخزن المفاتيح الخاصة بك. استبدل user@domain.com باسم مستخدم Microsoft Entra.

az keyvault set-policy --name Your-Key-Vault-Name --upn user@domain.com --secret-permissions delete get list set purge

إنشاء تطبيق Java

في IDE المفضل لديك، قم بإنشاء مشروع تطبيق وحدة تحكم Java جديد، وأنشئ فئة تسمى Example.

إضافة تبعيات

في مشروعك، أضف التبعيات التالية إلى ملفك pom.xml.

<dependencies>

        <dependency>
            <groupId>com.azure</groupId>
            <artifactId>azure-security-keyvault-secrets</artifactId>
            <version>4.2.3</version>
        </dependency>
        <dependency>
            <groupId>com.azure</groupId>
            <artifactId>azure-identity</artifactId>
            <version>1.2.0</version>
        </dependency>
    </dependencies>

استيراد التعليمة البرمجية المثال

انسخ التعليمة البرمجية التالية لملف يسمى Example.java. استبدل Your-Key-Secret-Name وYour-Endpoint-Secret-Name بأسماء البيانات السرية التي قمت بتعيينها في مخزن المفاتيح الخاص بك.

import com.azure.identity.DefaultAzureCredentialBuilder;
import com.azure.security.keyvault.secrets.SecretClient;
import com.azure.security.keyvault.secrets.SecretClientBuilder;
import com.azure.core.credential.AzureKeyCredential;

public class Example {

    public static void main(String[] args) {

        String keyVaultName = System.getenv("KEY_VAULT_NAME");
        String keyVaultUri = "https://" + keyVaultName + ".vault.azure.net";

        //variables for retrieving the key and endpoint from your key vault.
        //Set these variables to the names you created for your secrets
        String keySecretName = "Your-Key-Secret-Name";
        String endpointSecretName = "Your-Endpoint-Secret-Name";

        //Create key vault secrets client
        SecretClient secretClient = new SecretClientBuilder()
                .vaultUrl(keyVaultUri)
                .credential(new DefaultAzureCredentialBuilder().build())
                .buildClient();

        //retrieve key and endpoint from key vault
        String keyValue = secretClient.getSecret(keySecretName).getValue();
        String endpointValue = secretClient.getSecret(endpointSecretName).getValue();
        System.out.printf("Your secret key value is: %s", keyValue)
        System.out.printf("Your secret endpoint value is: %s", endpointValue)
    }
}

إرسال استدعاء خدمة Language الاختبار (اختياري)

إذا كنت تستخدم موردًا متعدد الخدمات أو مورد Language، يمكنك تحديث التطبيق الخاص بك باتباع هذه الخطوات لإرسال مثال استدعاء Named Entity Recognition عن طريق استرداد مفتاح ونقطة نهاية من مخزن المفاتيح الخاص بك.

  1. في التطبيق الخاص بك، أضف التبعية التالية:

    <dependency>
        <groupId>com.azure</groupId>
        <artifactId>azure-ai-textanalytics</artifactId>
        <version>5.1.12</version>
    </dependency>
    
  2. أضف عبارات الاستيراد التالية إلى ملفك.

    import com.azure.ai.textanalytics.models.*;
    import com.azure.ai.textanalytics.TextAnalyticsClientBuilder;
    import com.azure.ai.textanalytics.TextAnalyticsClient;
    
  3. أضف التعليمة البرمجية التالية إلى أسلوب main() في تطبيقك:

    
    TextAnalyticsClient languageClient = new TextAnalyticsClientBuilder()
            .credential(new AzureKeyCredential(keyValue))
            .endpoint(endpointValue)
            .buildClient();
    
    // Example for recognizing entities in text
    String text = "I had a wonderful trip to Seattle last week.";
    
    for (CategorizedEntity entity : languageClient.recognizeEntities(text)) {
        System.out.printf(
                "Recognized entity: %s, entity category: %s, entity sub-category: %s, score: %s, offset: %s, length: %s.%n",
                entity.getText(),
                entity.getCategory(),
                entity.getSubcategory(),
                entity.getConfidenceScore(),
                entity.getOffset(),
                entity.getLength());
    }
    
  4. تشغيل التطبيق الخاص بك

مصادقة تطبيقك

قبل أن تتمكن من منح حق الوصول إلى مخزن المفاتيح الخاص بك، يجب عليك المصادقة باستخدام اسم مستخدم Microsoft Entra وكلمة المرور.

للمصادقة باستخدام Azure CLI، شغّل الأمر az login.

az login

على نظام مزود بمستعرض ويب افتراضي، سيقوم Azure CLI بتشغيل المستعرض للمصادقة. بالنسبة للأنظمة التي لا تحتوي على مستعرض ويب افتراضي، سيستخدم الأمر az login تدفق مصادقة رمز الجهاز. يمكنك أيضًا إجبار Azure CLI على استخدام تدفق التعليمات البرمجية للجهاز بدلًا من تشغيل مستعرض عن طريق تحديد الوسيطة --use-device-code.

إذا كان لديك اشتراكات متعددة، فتأكد من تحديد اشتراك Azure الذي يحتوي على مخزن المفاتيح الخاص بك.

امنح حق الوصول إلى خزنة المفاتيح الخاصة بك

إنشاء سياسة وصول إلى خزنة المفاتيح التي تمنح أذونات سرية لحساب المستخدم الخاص بك.

لتعيين نهج الوصول، قم بتشغيل الأمر az keyvault set-policy. استبدل Your-Key-Vault-Name باسم مخزن المفاتيح الخاصة بك. استبدل user@domain.com باسم مستخدم Microsoft Entra.

az keyvault set-policy --name Your-Key-Vault-Name --upn user@domain.com --secret-permissions delete get list set purge

إنشاء تطبيق Node.js جديد

أنشئ تطبيق Node.js يستخدم مخزن المفاتيح الخاص بك.

في terminal، أنشئ مجلد باسم key-vault-js-example، وقم بتغييره إلى ذلك المجلد:

mkdir key-vault-js-example && cd key-vault-js-example

تهيئة مشروع Node.js:

npm init -y

تثبيت حزم خدمتي Key Vault وLanguage

  1. باستخدام الـ terminal، قم بتثبيت مكتبة البيانات السرية لـ Azure Key Vault،azure/keyvault-secrets@ لـ Node.js.

    npm install @azure/keyvault-secrets
    
  2. قم بتثبيت مكتب هوية Azure، حزمة azure/identity@، للمصادقة على Key Vault.

    npm install @azure/identity
    

استيراد عينة التعليمة البرمجية

أضف عينة التعليمات البرمجية التالية إلى ملف يسمى index.js. استبدل Your-Key-Secret-Name وYour-Endpoint-Secret-Name بأسماء البيانات السرية التي قمت بتعيينها في مخزن المفاتيح الخاص بك.

const { SecretClient } = require("@azure/keyvault-secrets");
const { DefaultAzureCredential } = require("@azure/identity");
// Load the .env file if it exists
const dotenv = require("dotenv");
dotenv.config();

async function main() {
    const credential = new DefaultAzureCredential();

    const keyVaultName = process.env["KEY_VAULT_NAME"];
    const url = "https://" + keyVaultName + ".vault.azure.net";

    const kvClient = new SecretClient(url, credential);

    // Set these variables to the names you created for your secrets
    const keySecretName = "Your-Key-Secret-Name";
    const endpointSecretName = "Your-Endpoint-Secret-Name";

    console.log("Retrieving secrets from ", keyVaultName);
    const retrievedKey = await (await kvClient.getSecret(keySecretName)).value;
    const retrievedEndpoint = await (await kvClient.getSecret(endpointSecretName)).value;
    console.log("Your secret key value is: ", retrievedKey);
    console.log("Your secret endpoint value is: ", retrievedEndpoint);
}

main().catch((error) => {
  console.error("An error occurred:", error);
  process.exit(1);
});

تشغيل نموذج التطبيق

استخدم الأمر التالي لتشغيل التطبيق. سيتم استرداد البيانات السرية للمفتاح ونقطة النهاية من مخزن المفاتيح الخاص بك.

node index.js

إرسال استدعاء خدمة Language الاختبار (اختياري)

إذا كنت تستخدم موردًا متعدد الخدمات أو مورد Language، يمكنك تحديث التطبيق الخاص بك باتباع هذه الخطوات لإرسال مثال استدعاء Named Entity Recognition عن طريق استرداد مفتاح ونقطة نهاية من مخزن المفاتيح الخاص بك.

  1. قم بتثبيت خدمة Azure الذكاء الاصطناعي لمكتبة Language، @azure/ai-text-analytics لإرسال طلبات واجهة برمجة التطبيقات إلى خدمة Language.

    npm install @azure/ai-text-analytics@5.1.0
    
  2. أضف التعليمة البرمجية التالية إلى تطبيقك:

    const { TextAnalyticsClient, AzureKeyCredential } = require("@azure/ai-text-analytics");
    // Authenticate the language client with your key and endpoint
    const languageClient = new TextAnalyticsClient(retrievedEndpoint,  new AzureKeyCredential(retrievedKey));
    
    // Example for recognizing entities in text
    console.log("Sending NER request")
    const entityInputs = [
        "I had a wonderful trip to Seattle last week."
    ];
    const entityResults = await languageClient.recognizeEntities(entityInputs);
    entityResults.forEach(document => {
        console.log(`Document ID: ${document.id}`);
        document.entities.forEach(entity => {
            console.log(`\tName: ${entity.text} \tCategory: ${entity.category} \tSubcategory: ${entity.subCategory ? entity.subCategory : "N/A"}`);
            console.log(`\tScore: ${entity.confidenceScore}`);
        });
    });
    
  3. قم بتشغيل التطبيق:

الخطوات التالية