Tworzenie i wdrażanie zasobu usługi Azure OpenAI Service

W tym artykule opisano sposób rozpoczynania pracy z usługą Azure OpenAI Service i przedstawiono instrukcje krok po kroku dotyczące tworzenia zasobu i wdrażania modelu. Zasoby na platformie Azure można tworzyć na kilka różnych sposobów:

  • Azure Portal
  • Interfejsy API REST, interfejs wiersza polecenia platformy Azure, program PowerShell lub biblioteki klienckie
  • Szablony usługi Azure Resource Manager (ARM)

W tym artykule zapoznasz się z przykładami tworzenia i wdrażania zasobów w witrynie Azure Portal oraz przy użyciu interfejsu wiersza polecenia platformy Azure.

Wymagania wstępne

Uwaga

Obecnie musisz przesłać aplikację, aby uzyskać dostęp do usługi Azure OpenAI Service. Aby ubiegać się o dostęp, wypełnij ten formularz. Jeśli potrzebujesz pomocy, otwórz problem w tym repozytorium, aby skontaktować się z firmą Microsoft.

Utwórz zasób

W poniższych krokach pokazano, jak utworzyć zasób usługi Azure OpenAI w witrynie Azure Portal.

Identyfikowanie zasobu

  1. Zaloguj się przy użyciu subskrypcji platformy Azure w witrynie Azure Portal.

  2. Wybierz pozycję Utwórz zasób i wyszukaj usługę Azure OpenAI. Po zlokalizowaniu usługi wybierz pozycję Utwórz.

    Zrzut ekranu przedstawiający sposób tworzenia nowego zasobu usługi Azure OpenAI Service w witrynie Azure Portal.

  3. Na stronie Tworzenie usługi Azure OpenAI podaj następujące informacje dotyczące pól na karcie Podstawy:

    Pole opis
    Subskrypcja Subskrypcja platformy Azure używana w aplikacji dołączania usługi Azure OpenAI Service.
    Grupa zasobów: Grupa zasobów platformy Azure zawierająca zasób usługi Azure OpenAI. Możesz utworzyć nową grupę lub użyć istniejącej grupy.
    Region Lokalizacja wystąpienia. Różne lokalizacje mogą wprowadzać opóźnienia, ale nie mają wpływu na dostępność zasobu w czasie wykonywania.
    Nazwa/nazwisko Opisowa nazwa zasobu usługi Azure OpenAI Service, taka jak MyOpenAIResource.
    Warstwa cenowa Warstwa cenowa zasobu. Obecnie tylko warstwa Standardowa jest dostępna dla usługi Azure OpenAI. Aby uzyskać więcej informacji na temat cen, odwiedź stronę cennika usługi Azure OpenAI

    Zrzut ekranu przedstawiający sposób konfigurowania zasobu usługi Azure OpenAI w witrynie Azure Portal.

  4. Wybierz Dalej.

Konfigurowanie zabezpieczeń sieci

Karta Sieć zawiera trzy opcje dla typu zabezpieczeń:

  • Opcja 1: Wszystkie sieci, w tym Internet, mogą uzyskiwać dostęp do tego zasobu.
  • Opcja 2: Wybrane sieci, skonfiguruj zabezpieczenia sieci dla zasobu usług Azure AI.
  • Opcja 3: Wyłączone, żadne sieci nie mogą uzyskać dostępu do tego zasobu. Możesz skonfigurować połączenia prywatnych punktów końcowych, które będą wyłącznym sposobem uzyskiwania dostępu do tego zasobu.

Zrzut ekranu przedstawiający opcje zabezpieczeń sieci dla zasobu usługi Azure OpenAI w witrynie Azure Portal.

W zależności od wybranej opcji może być konieczne podanie dodatkowych informacji.

Opcja 1. Zezwalaj na wszystkie sieci

Pierwsza opcja umożliwia wszystkim sieciom, w tym Internetowi, dostęp do zasobu. Ta opcja jest ustawieniem domyślnym. Dla tej opcji nie są wymagane żadne dodatkowe ustawienia.

Opcja 2. Zezwalaj tylko na określone sieci

Druga opcja umożliwia zidentyfikowanie określonych sieci, które mogą uzyskiwać dostęp do zasobu. Po wybraniu tej opcji strona zostanie zaktualizowana w celu uwzględnienia następujących wymaganych pól:

Pole opis
Sieć wirtualna Określ sieci wirtualne, które mają dozwolony dostęp do zasobu. Domyślną nazwę sieci wirtualnej można edytować w witrynie Azure Portal.
Podsieci Określ podsieci, które mają dozwolony dostęp do zasobu. Domyślną nazwę podsieci można edytować w witrynie Azure Portal.

Zrzut ekranu przedstawiający sposób konfigurowania zabezpieczeń sieci dla zasobu usługi Azure OpenAI w celu zezwolenia tylko na określone sieci.

Sekcja Zapora zawiera opcjonalne pole Zakres adresów, którego można użyć do skonfigurowania ustawień zapory dla zasobu.

Opcja 3. Wyłączanie dostępu do sieci

Trzecia opcja umożliwia wyłączenie dostępu sieciowego do zasobu. Po wybraniu tej opcji strona zostanie zaktualizowana w celu uwzględnienia tabeli prywatnego punktu końcowego.

Zrzut ekranu przedstawiający sposób wyłączania zabezpieczeń sieci dla zasobu usługi Azure OpenAI w witrynie Azure Portal.

Jako opcję możesz dodać prywatny punkt końcowy w celu uzyskania dostępu do zasobu. Wybierz pozycję Dodaj prywatny punkt końcowy i ukończ konfigurację punktu końcowego.

Potwierdź konfigurację i utwórz zasób

  1. Wybierz pozycję Dalej i skonfiguruj dowolne tagi dla zasobu zgodnie z potrzebami.

  2. Wybierz pozycję Dalej , aby przejść do ostatniego etapu procesu: Przeglądanie i przesyłanie.

  3. Potwierdź ustawienia konfiguracji i wybierz pozycję Utwórz.

W witrynie Azure Portal zostanie wyświetlone powiadomienie, gdy nowy zasób jest dostępny.

Wdrażanie modelu

Przed wygenerowaniem tekstu lub wnioskowania należy wdrożyć model. Możesz wybrać jeden z kilku dostępnych modeli w programie Azure OpenAI Studio.

Aby wdrożyć model, wykonaj następujące kroki:

  1. Zaloguj się do programu Azure OpenAI Studio.

  2. Wybierz subskrypcję i zasób usługi Azure OpenAI do pracy, a następnie wybierz pozycję Użyj zasobu.

  3. W obszarze Zarządzanie wybierz pozycję Wdrożenia.

  4. Wybierz pozycję Utwórz nowe wdrożenie i skonfiguruj następujące pola:

    Pole opis
    Wybieranie modelu Dostępność różni się w zależności od regionu Aby uzyskać listę dostępnych modeli na region, zobacz Tabela podsumowania modelu i dostępność regionów.
    Nazwa wdrożenia Starannie wybierz nazwę. Nazwa wdrożenia jest używana w kodzie do wywoływania modelu przy użyciu bibliotek klienckich i interfejsów API REST.
    Opcje zaawansowane (opcjonalnie) Możesz ustawić opcjonalne ustawienia zaawansowane zgodnie z potrzebami dla zasobu.
    — W przypadku filtru zawartości przypisz filtr zawartości do wdrożenia.
    — W przypadku tokenów na minutę limit szybkości dostosuj tokeny na minutę (TPM), aby ustawić obowiązujący limit szybkości wdrożenia. Tę wartość można modyfikować w dowolnym momencie za pomocą menu Przydziały . Limit przydziału dynamicznego umożliwia korzystanie z większego limitu przydziału, gdy dostępna jest dodatkowa pojemność.
  5. Wybierz model z listy rozwijanej.

  6. Wprowadź nazwę wdrożenia, aby zidentyfikować model.

    Ważne

    W przypadku uzyskiwania dostępu do modelu za pośrednictwem interfejsu API należy odwołać się do nazwy wdrożenia, a nie bazowej nazwy modelu w wywołaniach interfejsu API, co jest jedną z kluczowych różnic między interfejsem OpenAI i usługą Azure OpenAI. Interfejs OpenAI wymaga tylko nazwy modelu. Interfejs Azure OpenAI zawsze wymaga nazwy wdrożenia, nawet jeśli używasz parametru modelu. W naszych dokumentach często mamy przykłady, w których nazwy wdrożeń są reprezentowane jako identyczne z nazwami modeli, aby pomóc wskazać, który model działa z określonym punktem końcowym interfejsu API. Ostatecznie nazwy wdrożeń mogą być zgodne z dowolną konwencją nazewnictwa najlepszą dla twojego przypadku użycia.

  7. W przypadku pierwszego wdrożenia pozostaw opcje zaawansowane ustawione na wartości domyślne.

  8. Wybierz pozycję Utwórz.

W tabeli deployments (Wdrożenia) przedstawiono nowy wpis odpowiadający nowo utworzonemu modelowi.

Po zakończeniu wdrażania stan wdrożenia modelu zmieni się na powodzenie.

Wymagania wstępne

Uwaga

Obecnie musisz przesłać aplikację, aby uzyskać dostęp do usługi Azure OpenAI Service. Aby ubiegać się o dostęp, wypełnij ten formularz. Jeśli potrzebujesz pomocy, otwórz problem w tym repozytorium, aby skontaktować się z firmą Microsoft.

Logowanie się do interfejsu wiersza polecenia platformy Azure

Zaloguj się do interfejsu wiersza polecenia platformy Azure lub wybierz pozycję Otwórz program CloudShell w poniższych krokach.

Tworzenie grupy zasobów platformy Azure

Aby utworzyć zasób usługi Azure OpenAI, potrzebujesz grupy zasobów platformy Azure. Podczas tworzenia nowego zasobu za pomocą interfejsu wiersza polecenia platformy Azure możesz również utworzyć nową grupę zasobów lub poinstruować platformę Azure o użyciu istniejącej grupy. W poniższym przykładzie pokazano, jak utworzyć nową grupę zasobów o nazwie OAIResourceGroup za pomocą polecenia az group create . Grupa zasobów jest tworzona w lokalizacji Wschodnie stany USA.

az group create \
--name OAIResourceGroup \
--location eastus

Utwórz zasób

Użyj polecenia az cognitiveservices account create, aby utworzyć zasób usługi Azure OpenAI w grupie zasobów. W poniższym przykładzie utworzysz zasób o nazwie MyOpenAIResource w grupie zasobów OAIResourceGroup . Po wypróbowaniu przykładu zaktualizuj kod, aby używał żądanych wartości dla grupy zasobów i nazwy zasobu wraz z identyfikatorem <subskrypcji platformy Azure subscriptionID>.

az cognitiveservices account create \
--name MyOpenAIResource \
--resource-group OAIResourceGroup \
--location eastus \
--kind OpenAI \
--sku s0 \
--subscription <subscriptionID>

Pobieranie informacji o zasobie

Po utworzeniu zasobu możesz użyć różnych poleceń, aby znaleźć przydatne informacje o wystąpieniu usługi Azure OpenAI Service. W poniższych przykładach pokazano, jak pobrać podstawowy adres URL punktu końcowego interfejsu API REST i klucze dostępu dla nowego zasobu.

Uzyskiwanie adresu URL punktu końcowego

Użyj polecenia az cognitiveservices account show, aby pobrać podstawowy adres URL punktu końcowego interfejsu API REST dla zasobu. W tym przykładzie kierujemy dane wyjściowe polecenia za pośrednictwem procesora jq JSON w celu zlokalizowania .properties.endpoint wartości.

Po wypróbowaniu przykładu zaktualizuj kod, aby używał wartości dla grupy zasobów myResourceGroupName> i zasobu< myResourceName>.<

az cognitiveservices account show \
--name <myResourceName> \
--resource-group  <myResourceGroupName> \
| jq -r .properties.endpoint

Pobieranie podstawowego klucza interfejsu API

Aby pobrać klucze dostępu dla zasobu, użyj polecenia az cognitiveservices account keys list . W tym przykładzie kierujemy dane wyjściowe polecenia za pośrednictwem procesora jq JSON w celu zlokalizowania .key1 wartości.

Po wypróbowaniu przykładu zaktualizuj kod tak, aby używał wartości dla grupy zasobów i zasobu.

az cognitiveservices account keys list \
--name <myResourceName> \
--resource-group  <myResourceGroupName> \
| jq -r .key1

Wdrażanie modelu

Aby wdrożyć model, użyj polecenia az cognitiveservices account deployment create . W poniższym przykładzie wdrożysz wystąpienie text-embedding-ada-002 modelu i nadasz mu nazwę MyModel. Po wypróbowaniu przykładu zaktualizuj kod tak, aby używał wartości dla grupy zasobów i zasobu. Nie trzeba zmieniać model-versionwartości , model-format ani sku-capacity.sku-name

az cognitiveservices account deployment create \
--name <myResourceName> \
--resource-group  <myResourceGroupName> \
--deployment-name MyModel \
--model-name text-embedding-ada-002 \
--model-version "1"  \
--model-format OpenAI \
--sku-capacity "1" \
--sku-name "Standard"

Ważne

W przypadku uzyskiwania dostępu do modelu za pośrednictwem interfejsu API należy odwołać się do nazwy wdrożenia, a nie bazowej nazwy modelu w wywołaniach interfejsu API, co jest jedną z kluczowych różnic między interfejsem OpenAI i usługą Azure OpenAI. Interfejs OpenAI wymaga tylko nazwy modelu. Interfejs Azure OpenAI zawsze wymaga nazwy wdrożenia, nawet jeśli używasz parametru modelu. W naszych dokumentach często mamy przykłady, w których nazwy wdrożeń są reprezentowane jako identyczne z nazwami modeli, aby pomóc wskazać, który model działa z określonym punktem końcowym interfejsu API. Ostatecznie nazwy wdrożeń mogą być zgodne z dowolną konwencją nazewnictwa najlepszą dla twojego przypadku użycia.

Usuwanie modelu z zasobu

Możesz usunąć dowolny model wdrożony z zasobu za pomocą polecenia az cognitiveservices account deployment delete . W poniższym przykładzie usuniesz model o nazwie MyModel. Po wypróbowaniu przykładu zaktualizuj kod, aby używał wartości dla grupy zasobów, zasobu i wdrożonego modelu.

az cognitiveservices account deployment delete \
--name <myResourceName> \
--resource-group  <myResourceGroupName> \
--deployment-name MyModel

Usuwanie zasobu

Jeśli chcesz wyczyścić po tych ćwiczeniach, możesz usunąć zasób usługi Azure OpenAI, usuwając zasób za pomocą interfejsu wiersza polecenia platformy Azure. Możesz również usunąć grupę zasobów. Jeśli zdecydujesz się usunąć grupę zasobów, wszystkie zasoby zawarte w grupie również zostaną usunięte.

Aby usunąć grupę zasobów i skojarzone z nią zasoby, użyj polecenia az cognitiveservices account delete .

Jeśli nie zamierzasz nadal korzystać z zasobów utworzonych w tych ćwiczeniach, uruchom następujące polecenie, aby usunąć grupę zasobów. Pamiętaj, aby zaktualizować przykładowy kod, aby używał wartości dla grupy zasobów i zasobu.

az cognitiveservices account delete \
--name <myResourceName> \
--resource-group  <myResourceGroupName>

Wymagania wstępne

Uwaga

Obecnie musisz przesłać aplikację, aby uzyskać dostęp do usługi Azure OpenAI Service. Aby ubiegać się o dostęp, wypełnij ten formularz. Jeśli potrzebujesz pomocy, otwórz problem w tym repozytorium, aby skontaktować się z firmą Microsoft.

Logowanie się do programu Azure PowerShell

Zaloguj się do programu Azure PowerShell lub wybierz pozycję Otwórz program CloudShell w poniższych krokach.

Tworzenie grupy zasobów platformy Azure

Aby utworzyć zasób usługi Azure OpenAI, potrzebujesz grupy zasobów platformy Azure. Podczas tworzenia nowego zasobu za pomocą programu Azure PowerShell możesz również utworzyć nową grupę zasobów lub poinstruować platformę Azure o użyciu istniejącej grupy. W poniższym przykładzie pokazano, jak utworzyć nową grupę zasobów o nazwie OAIResourceGroup za pomocą polecenia New-AzResourceGroup. Grupa zasobów jest tworzona w lokalizacji Wschodnie stany USA.

New-AzResourceGroup -Name OAIResourceGroup -Location eastus

Utwórz zasób

Użyj polecenia New-AzCognitiveServicesAccount, aby utworzyć zasób usługi Azure OpenAI w grupie zasobów. W poniższym przykładzie utworzysz zasób o nazwie MyOpenAIResource w grupie zasobów OAIResourceGroup . Po wypróbowaniu przykładu zaktualizuj kod, aby używał żądanych wartości dla grupy zasobów i nazwy zasobu wraz z identyfikatorem <subskrypcji platformy Azure subscriptionID>.

New-AzCognitiveServicesAccount -ResourceGroupName OAIResourceGroup -Name MyOpenAIResource -Type OpenAI -SkuName S0 -Location eastus

Pobieranie informacji o zasobie

Po utworzeniu zasobu możesz użyć różnych poleceń, aby znaleźć przydatne informacje o wystąpieniu usługi Azure OpenAI Service. W poniższych przykładach pokazano, jak pobrać podstawowy adres URL punktu końcowego interfejsu API REST i klucze dostępu dla nowego zasobu.

Uzyskiwanie adresu URL punktu końcowego

Użyj polecenia Get-AzCognitiveServicesAccount, aby pobrać podstawowy adres URL punktu końcowego interfejsu API REST dla zasobu. W tym przykładzie kierujemy dane wyjściowe polecenia za pomocą polecenia cmdlet Select-Object , aby zlokalizować endpoint wartość.

Po wypróbowaniu przykładu zaktualizuj kod tak, aby używał wartości dla grupy <myResourceGroupName> zasobów i zasobu <myResourceName>.

Get-AzCognitiveServicesAccount -ResourceGroupName OAIResourceGroup -Name MyOpenAIResource |
  Select-Object -Property endpoint

Pobieranie podstawowego klucza interfejsu API

Aby pobrać klucze dostępu dla zasobu, użyj polecenia Get-AzCognitiveServicesAccountKey . W tym przykładzie kierujemy dane wyjściowe polecenia za pomocą polecenia cmdlet Select-Object , aby zlokalizować Key1 wartość.

Po wypróbowaniu przykładu zaktualizuj kod tak, aby używał wartości dla grupy zasobów i zasobu.

Get-AzCognitiveServicesAccountKey -Name MyOpenAIResource -ResourceGroupName OAIResourceGroup |
  Select-Object -Property Key1

Wdrażanie modelu

Aby wdrożyć model, użyj polecenia New-AzCognitiveServicesAccountDeployment . W poniższym przykładzie wdrożysz wystąpienie text-embedding-ada-002 modelu i nadasz mu nazwę MyModel. Po wypróbowaniu przykładu zaktualizuj kod tak, aby używał wartości dla grupy zasobów i zasobu. Nie trzeba zmieniać model-versionwartości , model-format ani sku-capacity.sku-name

$model = New-Object -TypeName 'Microsoft.Azure.Management.CognitiveServices.Models.DeploymentModel' -Property @{
    Name = 'text-embedding-ada-002'
    Version = '2'
    Format = 'OpenAI'
}

$properties = New-Object -TypeName 'Microsoft.Azure.Management.CognitiveServices.Models.DeploymentProperties' -Property @{
    Model = $model
}

$sku = New-Object -TypeName "Microsoft.Azure.Management.CognitiveServices.Models.Sku" -Property @{
    Name = 'Standard'
    Capacity = '1'
}

New-AzCognitiveServicesAccountDeployment -ResourceGroupName OAIResourceGroup -AccountName MyOpenAIResource -Name MyModel -Properties $properties -Sku $sku

Ważne

W przypadku uzyskiwania dostępu do modelu za pośrednictwem interfejsu API należy odwołać się do nazwy wdrożenia, a nie bazowej nazwy modelu w wywołaniach interfejsu API, co jest jedną z kluczowych różnic między interfejsem OpenAI i usługą Azure OpenAI. Interfejs OpenAI wymaga tylko nazwy modelu. Interfejs Azure OpenAI zawsze wymaga nazwy wdrożenia, nawet jeśli używasz parametru modelu. W naszych dokumentach często mamy przykłady, w których nazwy wdrożeń są reprezentowane jako identyczne z nazwami modeli, aby pomóc wskazać, który model działa z określonym punktem końcowym interfejsu API. Ostatecznie nazwy wdrożeń mogą być zgodne z dowolną konwencją nazewnictwa najlepszą dla twojego przypadku użycia.

Usuwanie modelu z zasobu

Dowolny model wdrożony z zasobu można usunąć za pomocą polecenia Remove-AzCognitiveServicesAccountDeployment . W poniższym przykładzie usuniesz model o nazwie MyModel. Po wypróbowaniu przykładu zaktualizuj kod, aby używał wartości dla grupy zasobów, zasobu i wdrożonego modelu.

Remove-AzCognitiveServicesAccountDeployment -ResourceGroupName OAIResourceGroup -AccountName MyOpenAIResource -Name MyModel

Usuwanie zasobu

Jeśli chcesz wyczyścić po tych ćwiczeniach, możesz usunąć zasób usługi Azure OpenAI, usuwając zasób za pomocą programu Azure PowerShell. Możesz również usunąć grupę zasobów. Jeśli zdecydujesz się usunąć grupę zasobów, wszystkie zasoby zawarte w grupie również zostaną usunięte.

Aby usunąć grupę zasobów i skojarzone z nią zasoby, użyj polecenia Remove-AzCognitiveServicesAccount .

Jeśli nie zamierzasz nadal korzystać z zasobów utworzonych w tych ćwiczeniach, uruchom następujące polecenie, aby usunąć grupę zasobów. Pamiętaj, aby zaktualizować przykładowy kod, aby używał wartości dla grupy zasobów i zasobu.

Remove-AzCognitiveServicesAccount -Name MyOpenAIResource -ResourceGroupName OAIResourceGroup

Następne kroki

  • Wykonywanie wywołań interfejsu API i generowanie tekstu za pomocą przewodników Szybki start usługi Azure OpenAI Service.
  • Dowiedz się więcej o modelach usługi Azure OpenAI Service.
  • Aby uzyskać informacje na temat cen, odwiedź stronę cennika usługi Azure OpenAI