Dodaj zasób usługi modelu Unity Gateway do aplikacji Databricks

Important

Ta funkcja jest dostępna w publicznej wersji testowej.

Dodaj usługi modeli Unity Gateway jako zasoby aplikacji Databricks, aby Twoja aplikacja mogła wysyłać żądania inferencji, w tym czat, uzupełnienia i osadzenia, do modeli AI zarządzanych w Unity Catalog. Usługi modeli Unity Gateway obejmują modele podstawowe z płatnością za token dostępne w sekcji system.ai, a także usługi modelowe, które tworzysz.

Note

Przypisanie użycia dla usług modelu Unity Gateway jest dokładne tylko dla standardowych aplikacji Databricks. Aplikacje działające w środowisku mikro VM, takie jak aplikacje Genie app builder, nie raportują dokładnej atrybucji użycia.

Zobacz śledzenie korzystania z Unity Gateway.

Wymagania dotyczące uprawnień

Aby uzyskać dostęp do usługi modelowej Unity Gateway, nazwa główna usługi aplikacji musi mieć uprawnienie USE CATALOG do katalogu nadrzędnego, uprawnienie USE SCHEMA do schematu nadrzędnego oraz uprawnienie EXECUTE do usługi modelowej. Gdy dodajesz zasób usługi modelu, Azure Databricks automatycznie przyznaje te uprawnienia jednostce usługi aplikacji.

Aby to automatyczne udzielanie powiodło się, należy spełnić jeden z następujących warunków dla każdego uprawnienia:

  • W przypadku USE CATALOG: wszyscy użytkownicy konta mają USE CATALOG uprawnienia do katalogu lub masz MANAGE uprawnienia do katalogu.
  • W przypadku USE SCHEMA: wszyscy użytkownicy konta mają uprawnienia USE SCHEMA do schematu lub masz uprawnienia MANAGE do schematu.
  • Dla EXECUTE: Albo wszyscy użytkownicy konta mają EXECUTE uprawnienia do usługi modelowej, albo ty masz MANAGE uprawnienia do usługi modelowej.

Zobacz odniesienie dotyczące uprawnień Unity Catalog.

Dodaj zasób usługi modelu Unity Gateway

Zanim dodasz usługę modelu Unity Gateway jako zasób, zapoznaj się z wymaganiami wstępnymi dotyczącymi zasobu aplikacji.

  1. W sekcji zasobów aplikacji, gdy tworzysz lub edytujesz aplikację, kliknij + Dodaj zasób>Model.
  2. W wyborze zasobów wybierz usługę modelu z sekcji Unity Gateway . Selektor wymienia także niestandardowe punkty końcowe obsługi w sekcji Punkty końcowe obsługi. Aby połączyć jeden z tych punktów końcowych, zobacz Dodaj zasób końcowy obsługujący model do aplikacji Databricks. Aby użyć modelu podstawowego pay-per-token, wybierz usługę modelu z katalogu system.ai .
  3. Wybierz poziom uprawnień dla aplikacji:
    • Może wykonywać: Daje jednostce usługi (service principal) aplikacji przywilej wysyłania żądań do usługi modelowej. To jedyny poziom uprawnień dostępny dla usługi modelowej.
  4. (Opcjonalnie) Określ niestandardowy klucz zasobu, który służy do odniesienia się do usługi modelu w konfiguracji aplikacji. Kluczem domyślnym jest model.

Skonfiguruj za pomocą Databricks Asset Bundles

Jeśli definiujesz aplikację za pomocą Declarative Automation Bundles, dodaj usługę modelu jako zasób uc_securable w konfiguracji pakietu:

resources:
  apps:
    my_app:
      name: 'my-app'
      source_code_path: ./app
      resources:
        - name: 'model'
          uc_securable:
            securable_full_name: '<catalog>.<schema>.<model_service>'
            securable_type: 'MODEL_SERVICE'
            permission: 'EXECUTE'

Aby uzyskać informacje o zasobach aplikacji w Declarative Automation Bundles, zobacz app.resources.

Zmienne środowiskowe

Gdy wdrażasz aplikację z zasobem usługi modelu Unity Gateway, Azure Databricks udostępnia pełną, trzyczęściową nazwę Unity Catalog usługi modelu za pomocą zmiennych środowiskowych, do których możesz się odwołać za pomocą pola valueFrom.

Przykładowa konfiguracja:

env:
  - name: MODEL_SERVICE_NAME
    valueFrom: model # Use your custom resource key if you set one

Pole valueFrom jest rozwijane do pełnej, trzyczęściowej nazwy usługi modelu w katalogu Unity (na przykład system.ai.databricks-dbrx-instruct). Używaj tej nazwy podczas wywoływania usługi modelowej przez Azure Databricks SDK lub Unity Gateway REST API.

Aby uzyskać więcej informacji, zobacz Używanie zmiennych środowiskowych do uzyskiwania dostępu do zasobów.

Usuń zasób usługi modelu Unity Gateway

Gdy usuwasz zasób usługi modelu Unity Gateway z aplikacji, główna jednostka usługi aplikacji traci uprawnienie EXECUTE do usługi modelu. Sama usługa modelowa pozostaje niezmieniona i nadal jest dostępna dla innych użytkowników oraz aplikacji posiadających odpowiednie uprawnienia.

Najlepsze rozwiązania

Weź pod uwagę następujące rzeczy, pracując z zasobami usług modelu Unity Gateway:

  • EXECUTE to jedyny dostępny poziom uprawnień. Daje aplikacji dostęp do wysyłania żądań inferencji i nie przyznaje uprawnień administracyjnych dla usługi modelowej.
  • Aby używać modeli bazowych pay-per-token bez dodatkowego przygotowania, wybierz usługę modelu z katalogu system.ai .
  • Zmienna środowiskowa wskazuje na pełną, trzyczęściową nazwę Unity Catalog (catalog.schema.model_service). Użyj tej wartości podczas wywoływania usługi modelu przez Azure Databricks SDK lub REST API.
  • Obsługuj błędy wnioskowania i limity szybkości żądań w kodzie aplikacji. Unity Gateway egzekwuje limity żądań i zabezpieczenia skonfigurowane dla każdej modelowej usługi.
  • Selektor zasobów Model zawiera także klasyczne punkty końcowe serwowania modeli, pogrupowane w sekcji Punkty końcowe serwowania. Usługi modelowe i endpointy udostępniania mogą współistnieć w tej samej aplikacji.