Udostępnij za pośrednictwem


Jak zaimplementować zintegrowaną wektoryzację przy użyciu modeli z usługi Azure AI Studio

Ważne

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

W tym artykule dowiesz się, jak uzyskać dostęp do modeli osadzania w katalogu modeli usługi Azure AI Studio na potrzeby konwersji wektorów podczas indeksowania i zapytań w usłudze Azure AI Search.

Przepływ pracy obejmuje kroki wdrażania modelu. Wykaz modeli obejmuje osadzanie modeli z usług Azure OpenAI, Cohere, Facebook i OpenAI. Wdrażanie modelu jest rozliczane zgodnie ze strukturą rozliczeń każdego dostawcy.

Po wdrożeniu modelu można go użyć do zintegrowanej wektoryzacji podczas indeksowania lub z wektoryzatorem AI Studio dla zapytań.

Wdrażanie modelu osadzania z katalogu modeli usługi Azure AI Studio

  1. Otwórz katalog modeli usługi Azure AI Studio.

  2. Zastosuj filtr, aby wyświetlić tylko modele osadzania. W obszarze Zadania wnioskowania wybierz pozycję Osadzanie:

    Zrzut ekranu przedstawiający stronę wykazu modeli usługi Azure AI Studio z wyróżnionym sposobem filtrowania przez osadzanie modeli.

  3. Wybierz model, za pomocą którego chcesz wektoryzować zawartość. Następnie wybierz pozycję Wdróż i wybierz opcję wdrożenia.

    Zrzut ekranu przedstawiający wdrażanie punktu końcowego za pośrednictwem wykazu modeli usługi Azure AI Studio.

  4. Wypełnij żądane szczegóły. Wybierz lub utwórz nowy projekt sztucznej inteligencji, a następnie wybierz pozycję Wdróż. Szczegóły wdrożenia różnią się w zależności od wybranego modelu.

  5. Poczekaj na zakończenie wdrażania modelu, monitorując stan aprowizacji. Powinna zostać zmieniona z "Aprowizacja" na "Aktualizowanie" na "Powodzenie". Może być konieczne wybranie pozycji Odśwież co kilka minut, aby wyświetlić aktualizację stanu.

  6. Skopiuj pola Adres URL, Klucz podstawowy i Identyfikator modelu i odłóż je na później. Te wartości są potrzebne dla definicji wektoryzatora w indeksie wyszukiwania oraz zestawu umiejętności, który wywołuje punkty końcowe modelu podczas indeksowania.

    Opcjonalnie możesz zmienić punkt końcowy tak, aby używał uwierzytelniania tokenu zamiast uwierzytelniania za pomocą klucza. Jeśli włączysz uwierzytelnianie tokenu, musisz skopiować tylko adres URL i identyfikator modelu, a także zanotować region, w którym wdrożono model.

    Zrzut ekranu przedstawiający wdrożony punkt końcowy w programie AI Studio z wyróżnionymi polami do skopiowania i zapisania na później.

  7. Teraz można skonfigurować indeks wyszukiwania i indeksator do korzystania z wdrożonego modelu.

Przykładowe ładunki umiejętności AML

Podczas wdrażania modeli osadzania z katalogu modeli usługi Azure AI Studio łączysz się z nimi przy użyciu umiejętności AML w usłudze Azure AI Search na potrzeby indeksowania obciążeń.

W tej sekcji opisano definicję umiejętności AML i mapowania indeksów. Zawiera on przykładowe ładunki, które są już skonfigurowane do pracy z odpowiednimi wdrożonymi punktami końcowymi. Aby uzyskać więcej informacji technicznych na temat sposobu działania tych ładunków, przeczytaj informacje na temat kontekstu umiejętności i języka adnotacji wejściowych.

Ten ładunek umiejętności AML działa z następującymi modelami z programu AI Studio:

  • OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32
  • OpenAI-CLIP-Image-Text-Embeddings-ViT-Large-Patch14-336

Przyjęto założenie, że fragmentujesz zawartość przy użyciu umiejętności Dzielenie tekstu i że tekst, który ma zostać wektoryzowany, znajduje się w ścieżce /document/pages/* . Jeśli tekst pochodzi z innej ścieżki, zaktualizuj odpowiednio wszystkie odwołania do /document/pages/* ścieżki.

Identyfikator URI i klucz są generowane podczas wdrażania modelu z wykazu. Aby uzyskać więcej informacji na temat tych wartości, zobacz How to deploy large language models with Azure AI Studio (Jak wdrażać duże modele językowe za pomocą programu Azure AI Studio).

{
  "@odata.type": "#Microsoft.Skills.Custom.AmlSkill",
  "context": "/document/pages/*",
  "uri": "<YOUR_MODEL_URL_HERE>",
  "key": "<YOUR_MODEL_KEY_HERE>",
  "inputs": [
    {
      "name": "input_data",
      "sourceContext": "/document/pages/*",
      "inputs": [
        {
          "name": "columns",
          "source": "=['image', 'text']"
        },
        {
          "name": "index",
          "source": "=[0]"
        },
        {
          "name": "data",
          "source": "=[['', $(/document/pages/*)]]"
        }
      ]
    }
  ],
  "outputs": [
    {
      "name": "text_features"
    }
  ]
}

Przykładowy ładunek wektoryzatora programu AI Studio

Wektoryzator AI Studio, w przeciwieństwie do umiejętności AML, jest dostosowany do pracy tylko z tymi modelami osadzania, które można wdrożyć za pośrednictwem katalogu modeli AI Studio. Główną różnicą jest to, że nie musisz martwić się o ładunek żądania i odpowiedzi, ale musisz podać modelNameelement , który odpowiada identyfikatorowi modelu skopiowanemu po wdrożeniu modelu w programie AI Studio.

Oto przykładowy ładunek sposobu konfigurowania wektoryzatora w definicji indeksu, biorąc pod uwagę właściwości skopiowane z programu AI Studio.

W przypadku modeli Cohere nie należy dodawać /v1/embed ścieżki na końcu adresu URL, tak jak w przypadku umiejętności.

"vectorizers": [
    {
        "name": "<YOUR_VECTORIZER_NAME_HERE>",
        "kind": "aml",
        "amlParameters": {
            "uri": "<YOUR_URL_HERE>",
            "key": "<YOUR_PRIMARY_KEY_HERE>",
            "modelName": "<YOUR_MODEL_ID_HERE>"
        },
    }
]

Nawiązywanie połączenia przy użyciu uwierzytelniania tokenu

Jeśli nie możesz użyć uwierzytelniania opartego na kluczach, możesz zamiast tego skonfigurować umiejętności AML i połączenie wektoryzatora AI Studio na potrzeby uwierzytelniania tokenu za pośrednictwem kontroli dostępu opartej na rolach na platformie Azure. Usługa wyszukiwania musi mieć tożsamość zarządzaną przypisaną przez użytkownika lub system, a tożsamość musi mieć uprawnienia Właściciel lub Współautor dla obszaru roboczego projektu AML. Następnie możesz usunąć pole klucza z definicji umiejętności i wektoryzatora, zastępując je polem resourceId. Jeśli projekt AML i usługa wyszukiwania znajdują się w różnych regionach, podaj również pole regionu.

"uri": "<YOUR_URL_HERE>",
"resourceId": "subscriptions/<YOUR_SUBSCRIPTION_ID_HERE>/resourceGroups/<YOUR_RESOURCE_GROUP_NAME_HERE>/providers/Microsoft.MachineLearningServices/workspaces/<YOUR_AML_WORKSPACE_NAME_HERE>/onlineendpoints/<YOUR_AML_ENDPOINT_NAME_HERE>",
"region": "westus", // Only need if AML project lives in different region from search service

Następne kroki