Wektoryzator Azure OpenAI

Uwaga

Wyszukiwanie AI platformy Azure jest dostępna za pośrednictwem portalu Azure, interfejsów API REST i Azure SDKs. Jest także podstawą Foundry IQ — zarządzanej warstwy wiedzy, która przekształca treści przedsiębiorstwa w bazy wiedzy wielokrotnego użytku z uwzględnieniem uprawnień dla agentów w portalu Microsoft Foundry.

Wektoryzator Azure OpenAI łączy się z modelem osadzającym wdrożonym w zasobie Azure OpenAI w usłudze Foundry Models lub projekcie Microsoft Foundry, aby generować embeddingi w czasie wykonywania zapytania. Dane są przetwarzane w obszarze geograficznym , w którym wdrożono model.

Mimo że wektoryzatory są używane w czasie wykonywania zapytania, należy określić je w definicjach indeksu i odwoływać się do nich w polach wektorów za pośrednictwem profilu wektorowego. Aby uzyskać więcej informacji, zobacz Konfigurowanie wektoryzatora w indeksie wyszukiwania.

Wektoryzator Azure OpenAI nosi nazwę AzureOpenAIVectorizer w interfejsie API REST. Użyj najnowszej stabilnej wersji Indexes — tworzenie (interfejs API REST) lub pakiet Azure SDK, który udostępnia tę funkcję.

Uwaga

Ten wektoryzator jest powiązany z usługą Azure OpenAI i jest rozliczany według ceny standardowej usługi Azure OpenAI.

Wymagania wstępne

  • Zasób Azure OpenAI w usłudze Foundry Models lub projekt Foundry.

    • Zasób Azure OpenAI musi mieć poddomenę custom, taką jak https://<resource-name>.openai.azure.com. Ten punkt końcowy można znaleźć na stronie Keys i Endpoint w portalu Azure i użyć go dla właściwości resourceUri w tej umiejętności.

    • Zasób nadrzędny projektu Foundry zapewnia dostęp do wielu punktów końcowych, w tym https://<resource-name>.openai.azure.com, https://<resource-name>.services.ai.azure.comi https://<resource-name>.cognitiveservices.azure.com. Te punkty końcowe można znaleźć na stronie Klucze i punkt końcowy w portalu Azure i użyć dowolnego z nich dla właściwości resourceUri w tej umiejętności.

  • Model osadzania Azure OpenAI wdrożony w Twoim zasobie lub projekcie. Aby zapoznać się z obsługiwanymi modelami, zobacz następną sekcję.

Parametry wektoryzatora

W parametrach jest rozróżniana wielkość liter.

Nazwa parametru Opis
resourceUri (Wymagane) Identyfikator URI dostawcy modelu. Obsługiwane domeny to:

  • openai.azure.com
  • services.ai.azure.com
  • cognitiveservices.azure.com

obsługiwane są również punkty końcowe Azure API Management z wyjątkiem domen niestandardowych usługi API Management. Aby uzyskać informacje na temat konfiguracji, w tym uwierzytelniania, kontroli dostępu opartej na rolach (RBAC) i opcjonalnej łączności prywatnej, zobacz Używanie usługi Azure API Management z umiejętnościami i wektoryzatorami usługi Azure OpenAI.

apiKey Klucz tajny używany do uzyskiwania dostępu do modelu. Jeśli podasz klucz, pozostaw authIdentity wartość pustą. Jeśli ustawisz zarówno apiKey, jak i authIdentity, dla połączenia zostanie użyty parametr apiKey.
deploymentId (Wymagane) Identyfikator wdrożonego modelu osadzania Azure OpenAI. Jest to nazwa wdrożenia określona podczas wdrażania modelu.
authIdentity Tożsamość zarządzana przez użytkownika używana przez usługę wyszukiwania dla połączenia. Możesz użyć tożsamości zarządzanej przez system lub użytkownika. Aby użyć tożsamości zarządzanej przez system, pozostaw apiKey i authIdentity puste. Tożsamość zarządzana przez system jest używana automatycznie. Tożsamość zarządzana musi mieć uprawnienia Cognitive Services OpenAI User do wysyłania tekstu do programu Azure OpenAI.
modelName (Wymagane) Nazwa modelu Azure OpenAI wdrożonego w określonym deploymentId. Obsługiwane wartości to:

  • text-embedding-ada-002
  • text-embedding-3-large
  • text-embedding-3-small

Obsługiwane typy zapytań wektorowych

Wektoryzator Azure OpenAI obsługuje tylko zapytania text vector.

Oczekiwane wymiary pola

Oczekiwane wymiary pola skonfigurowanego za pomocą wektoryzatora Azure OpenAI zależą od skonfigurowanego modelName.

modelName Minimalne wymiary Maksymalne wymiary
text-embedding-ada-002 1536 1536
osadzanie tekstu —3 — duże 1 3072
osadzanie tekstu — 3 małe 1 1536

Przykładowa definicja

"vectorizers": [
    {
        "name": "my-openai-vectorizer",
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
            "resourceUri": "https://my-fake-azure-openai-resource.openai.azure.com",
            "apiKey": "0000000000000000000000000000000000000",
            "deploymentId": "my-ada-002-deployment",
            "authIdentity": null,
            "modelName": "text-embedding-ada-002",
        },
    }
]

Najlepsze rozwiązania dotyczące wydajności

Poniżej przedstawiono niektóre najlepsze rozwiązania, które należy wziąć pod uwagę podczas korzystania z tego wektoryzatora:

  • Jeśli osiągniesz limit TPM (tokenów na minutę) usługi Azure OpenAI, zapoznaj się ze wskazówkami dotyczącymi limitów przydziału, aby odpowiednio temu zaradzić. Aby uzyskać więcej informacji na temat wydajności wystąpienia Azure OpenAI, zapoznaj się z dokumentacją monitorowania Azure OpenAI.

  • Wdrożenie modelu osadzania Azure OpenAI używane na potrzeby tego wektoryzatora powinno być idealnie oddzielone od wdrożenia używanego w innych przypadkach użycia, w tym umiejętności embedding. Ułatwia to dostosowanie każdego wdrożenia do jego konkretnego przypadku użycia, co prowadzi do zoptymalizowanej wydajności oraz ułatwia identyfikację ruchu pochodzącego z indeksatora i wywołań osadzania indeksu.

  • Wystąpienie usługi OpenAI Azure powinno znajdować się w tym samym regionie lub co najmniej w pobliżu regionu, w którym jest hostowana usługa wyszukiwania sztucznej inteligencji. Zmniejsza to opóźnienie i zwiększa szybkość transferu danych między usługami.

  • Aby uniknąć częstych kodów błędów 429, rozważ zaimplementowanie równoważenia obciążenia za pośrednictwem usługi API Management przez zaimplementowanie bramy równoważenia obciążenia przed wieloma Azure wdrożeniach modelu osadzania openAI.

  • Jeśli masz limit TPM (tokenów na minutę) usługi Azure OpenAI wyższy niż domyślny, opisany w dokumentacji limitów i przydziałów, otwórz zgłoszenie do pomocy technicznej w zespole Wyszukiwanie AI platformy Azure, aby można go było odpowiednio dostosować. Dzięki temu proces indeksowania nie jest niepotrzebnie spowalniany przez udokumentowany domyślny limit modułu TPM, jeśli masz wyższe limity.

Zagadnienia dotyczące zabezpieczeń uwierzytelniania tożsamości zarządzanej

Gdy wektorizer Azure OpenAI używa uwierzytelniania tożsamości zarządzanej, Wyszukiwanie AI platformy Azure uzyskuje token dostępu Microsoft Entra dla odbiorców narzędzi Foundry Tools (https://cognitiveservices.azure.com) i dołącza go do żądań wysyłanych do punktu końcowego określonego przez resourceUri. Uwierzytelnianie tożsamości zarządzanej ma zastosowanie w przypadku ustawienia authIdentity, lub gdy zarówno apiKey , jak i authIdentity są puste, a usługa korzysta z tożsamości przypisanej przez system.

Punkt końcowy, do których odwołuje resourceUri się użytkownik, powinien być twoim zasobem Azure OpenAI lub Foundry Tools. Obsługiwane domeny to:

  • openai.azure.com
  • cognitiveservices.azure.com
  • services.ai.azure.com

Obsługiwane są również punkty końcowe Azure API Management (*.azure-api.netAPIM). Ponieważ nie można zweryfikować nazwy hosta usługi APIM z samej nazwy, Wyszukiwanie AI platformy Azure weryfikuje te punkty końcowe przy użyciu kontroli łączności na żywo w czasie konfiguracji, a nie przez dopasowanie domeny. Odpowiadasz za konfigurowanie i utrzymywanie relacji między punktem końcowym usługi APIM a zasobem Azure openAI lub narzędzi Foundry Tools.

Uwaga

Token tożsamości zarządzanej wystawiony dla odbiorców narzędzi Foundry Tools jest prawidłowy dla wszystkich narzędzi Foundry Tools lub Azure zasób OpenAI, na którym jest autoryzowana tożsamość. Wysłanie go do niezaufanego punktu końcowego może uwidocznić token.

Aby ułatwić utrzymanie bezpiecznego wdrożenia, postępuj zgodnie z następującymi rozwiązaniami:

  • Ustaw resourceUri tylko punkty końcowe, których jesteś właścicielem i ufasz. Preferuj domeny narzędzi foundry wymienione wcześniej. Jeśli używasz punktu końcowego usługi APIM, przed włączeniem tożsamości zarządzanej upewnij się, że jest on frontonem twojego zasobu. Zaufana nazwa hosta nie jest dowodem własności.
  • Zastosuj zasadę najniższych uprawnień do tożsamości zarządzanej używanej przez usługę wyszukiwania. Wektoryzator openAI Azure wymaga tylko roli użytkownika OpenAI usług Cognitive Services w zasobie docelowym. Unikaj udzielania szerszych ról.
  • Użyj obwodu zabezpieczeń sieci (NSP) i prywatnych punktów końcowych lub integracji z siecią wirtualną, aby ograniczyć, z których punktów końcowych usługa wyszukiwania może uzyskiwać dostęp i z których źródeł zasób docelowy akceptuje żądania.
  • Jeśli używasz punktu końcowego usługi APIM, upewnij się, że brama weryfikuje żądania przychodzące i przekazuje je tylko do zamierzonego zaplecza. Należy również okresowo przeglądać zasady dostępu.
  • Preferuj tożsamość zarządzaną za pośrednictwem apiKey. Jeśli używasz apiKeymetody , zapisz ją i obracaj ją bezpiecznie i nie osadzaj jej w kontroli źródła. Usługa odrzuca konfiguracje, które ustawiają zarówno , jak apiKey i authIdentity.
  • Okresowo przeglądaj definicje indeksów, przypisania ról tożsamości zarządzanej i konfiguracje usługi APIM, aby potwierdzić, że resourceUri wartości, mechanizmy kontroli dostępu i uprawnienia tożsamości pozostają aktualne i odpowiednie. Przejrzyj zmiany konfiguracji za pomocą ustanowionych procesów zarządzania zmianami i przeglądu zabezpieczeń.
  • Monitoruj dzienniki logowania Azure OpenAI i Foundry Tools, zdarzenia uwierzytelniania i dzienniki dostępu pod kątem nieoczekiwanych lub nieautoryzowanych działań.
  • Usuń nieużywane wektoryzatory, punkty końcowe, przypisania ról i klucze interfejsu API, które nie są już wymagane.

Ograniczanie dostępu do konfiguracji indeksu i wektoryzatora

Użytkownicy, którzy mogą tworzyć lub modyfikować definicje indeksów, kontrolują zarówno docelowy punkt końcowy (resourceUri), jak i konfigurację uwierzytelniania używaną przez wektoryzator. Ponieważ wektoryzator wysyła token tożsamości zarządzanej dla odbiorców narzędzi Foundry Tools do tego punktu końcowego, ogranicz te uprawnienia do zaufanych administratorów i postępuj zgodnie ze standardowymi procesami zarządzania zmianami i przeglądu zabezpieczeń podczas konfigurowania wektoryzatorów z obsługą tożsamości zarządzanej.

Zobacz też