Umiejętność osadzania w usłudze Azure OpenAI

Ważne

Ta funkcja jest dostępna w publicznej wersji zapoznawczej w obszarze Dodatkowe warunki użytkowania. Interfejs API REST 2023-10-01-Preview obsługuje tę funkcję.

Umiejętność osadzania w usłudze Azure OpenAI łączy się z wdrożonym modelem osadzania w zasobie usługi Azure OpenAI w celu wygenerowania osadzania.

Importowanie i wektoryzowanie danych używa umiejętności osadzania usługi Azure OpenAI w celu wektoryzacji zawartości. Możesz uruchomić kreatora i przejrzeć wygenerowany zestaw umiejętności, aby zobaczyć, jak kreator go kompiluje.

Uwaga

Ta umiejętność jest powiązana z usługą Azure OpenAI i jest naliczana za istniejącą cenę płatności zgodnie z rzeczywistym użyciem w usłudze Azure OpenAI.

@odata.type

Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill

Limity danych

Maksymalny rozmiar danych wejściowych tekstu powinien wynosić 8000 tokenów. Jeśli dane wejściowe przekraczają dozwoloną wartość maksymalną, model zgłasza nieprawidłowy błąd żądania. Aby uzyskać więcej informacji, zobacz kluczową koncepcję tokenów w dokumentacji usługi Azure OpenAI. Rozważ użycie umiejętności Dzielenie tekstu, jeśli potrzebujesz fragmentowania danych.

Parametry umiejętności

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

Dane wejściowe opis
resourceUri Identyfikator URI dostawcy modelu, taki jak zasób usługi Azure OpenAI lub adres URL interfejsu OpenAI.
apiKey Klucz tajny używany do uzyskiwania dostępu do modelu. Jeśli podasz klucz, pozostaw authIdentity wartość pustą. W przypadku ustawienia parametru apiKey i authIdentityapiKey parametr jest używany w połączeniu.
deploymentId Nazwa wdrożonego modelu osadzania usługi Azure OpenAI. Model powinien być modelem osadzania, takim jak osadzanie tekstu-ada-002. Zobacz listę modeli usługi Azure OpenAI dla obsługiwanych modeli.
authIdentity Tożsamość zarządzana przez użytkownika używana przez usługę wyszukiwania do nawiązywania połączenia z usługą Azure OpenAI. Możesz użyć tożsamości zarządzanej przez system lub użytkownika. Aby użyć tożsamości manged systemu, pozostaw apiKey i authIdentity puste. Tożsamość zarządzana przez system jest używana automatycznie. Tożsamość zarządzana musi mieć uprawnienia użytkownika openAI usług Cognitive Services do wysyłania tekstu do usługi Azure OpenAI.

Dane wejściowe umiejętności

Dane wejściowe opis
text Tekst wejściowy do wektoryzowania. Jeśli używasz fragmentowania danych, źródłem może być /document/pages/*.

Dane wyjściowe umiejętności

Wyjście opis
embedding Wektoryzowane osadzanie dla tekstu wejściowego.

Przykładowa definicja

Rozważ rekord, który ma następujące pola:

{
    "content": "Microsoft released Windows 10."
}

Następnie definicja umiejętności może wyglądać następująco:

{
  "@odata.type": "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill",
  "description": "Connects a deployed embedding model.",
  "resourceUri": "https://my-demo-openai-eastus.openai.azure.com/",
  "deploymentId": "my-text-embedding-ada-002-model",
  "inputs": [
    {
      "name": "text",
      "source": "/document/content"
    }
  ],
  "outputs": [
    {
      "name": "embedding"
    }
  ]
}

Przykładowe dane wyjściowe

W przypadku danego tekstu wejściowego generowany jest wektoryzowany wynik osadzania.

{
  "embedding": [
        0.018990106880664825,
        -0.0073809814639389515,
        .... 
        0.021276434883475304,
      ]
}

Dane wyjściowe znajdują się w pamięci. Aby wysłać te dane wyjściowe do pola w indeksie wyszukiwania, należy zdefiniować element outputFieldMapping, który mapuje wektoryzowane dane wyjściowe osadzania (czyli tablicę) na pole wektorowe. Zakładając, że dane wyjściowe umiejętności znajdują się w węźle osadzania dokumentu, a content_vector jest polem w indeksie wyszukiwania, dane wyjścioweFieldMapping w indeksatorze powinny wyglądać następująco:

  "outputFieldMappings": [
    {
      "sourceFieldName": "/document/embedding/*",
      "targetFieldName": "content_vector"
    }
  ]

Najlepsze rozwiązania

Poniżej przedstawiono kilka najlepszych rozwiązań, które należy wziąć pod uwagę podczas korzystania z tej umiejętności:

  • Jeśli osiągasz limit modułu TPM usługi Azure OpenAI (tokeny na minutę), weź pod uwagę porady dotyczące limitów przydziałów, aby odpowiednio rozwiązać problem. Aby uzyskać więcej informacji na temat wydajności wystąpienia usługi Azure OpenAI, zapoznaj się z dokumentacją monitorowania usługi Azure OpenAI.
  • Wdrożenie modelu osadzania usługi Azure OpenAI używane na potrzeby tej umiejętności powinno być idealnie oddzielone od wdrożenia używanego w innych przypadkach użycia, w tym wektoryzatora zapytań. Ułatwia to dostosowanie każdego wdrożenia do konkretnego przypadku użycia, co prowadzi do zoptymalizowanej wydajności i identyfikowania ruchu z indeksatora i łatwego osadzania wywołań indeksu.
  • Wystąpienie usługi Azure OpenAI 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.
  • Jeśli masz większy niż domyślny limit modułu TPM usługi Azure OpenAI (tokeny na minutę) opublikowany w dokumentacji limitów przydziałów i limitów , otwórz zgłoszenie do pomocy technicznej z zespołem usługi Azure AI Search, aby można było to 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.

Błędy i ostrzeżenia

Stan Result
Identyfikator URI o wartości null lub nieprawidłowy Błąd
Identyfikator wdrożenia o wartości null lub nieprawidłowy identyfikator wdrożenia Błąd
Tekst jest pusty Ostrzeżenie
Tekst jest większy niż 8000 tokenów Błąd

Zobacz też