Databricks 앱에 Unity Gateway 모델 서비스 리소스를 추가하세요

Unity Gateway 모델 서비스를 Databricks Apps 리소스로 추가하세요. 그러면 앱이 채팅, 완료, 임베딩 등 추론 요청을 Unity 카탈로그에서 관리되는 AI 모델로 보낼 수 있습니다. Unity Gateway 모델 서비스에는 system.ai에서 제공되는 토큰당 지불 방식의 파운데이션 모델과 직접 생성하는 모델 서비스가 포함됩니다.

Note

Unity Gateway 모델 서비스에 대한 사용 귀속은 표준 Databricks 앱에만 정확합니다. Genie 앱 빌더 앱과 같은 마이크로 VM 환경에서 실행되는 앱은 정확한 사용 귀속을 보고하지 않습니다.

Unity Gateway 사용 추적을 참고하세요.

권한 요구 사항

Unity Gateway 모델 서비스에 액세스하려면 앱의 서비스 주체에 부모 카탈로그에 대한 USE SCHEMA 권한, 부모 스키마에 대한 EXECUTE 권한, 그리고 모델 서비스에 대한 USE CATALOG 권한이 있어야 합니다. 모델 서비스 리소스를 추가하면 Azure Databricks가 자동으로 이 권한을 앱의 서비스 프린시펄에 부여합니다.

이 자동 부여가 성공하려면 각 권한에 대해 다음 중 하나가 true여야 합니다.

  • 의 경우 USE CATALOG: 모든 계정 사용자가 카탈로그에 USE CATALOG 권한이 있거나, 당신이 카탈로그에 MANAGE 권한을 가지고 있습니다.
  • 의 경우 USE SCHEMA: 모든 계정 사용자가 스키마에 대한 USE SCHEMA 권한을 가지고 있거나, 당신이 스키마에 대한 MANAGE 권한을 가지고 있습니다.
  • EXECUTE의 경우: 모든 계정 사용자에게 모델 서비스에 대한 EXECUTE 권한이 있거나, 사용자에게 모델 서비스에 대한 MANAGE 권한이 있습니다.

Unity 카탈로그 권한 참조를 참조하세요.

Unity 게이트웨이 모델 서비스 리소스 추가

Unity Gateway 모델 서비스를 리소스로 추가하기 전에 앱 리소스 전제 조건을 검토하세요.

  1. 앱 리소스 섹션에서 앱을 생성하거나 편집할 때 + 리소스 추가>모델을 클릭하세요.
  2. 리소스 선택기에서 Unity Gateway 섹션에서 모델 서비스를 선택하세요. 선택기는 또한 ' Serving Endpoints ' 섹션 내에 맞춤형 서빙 엔드포인트를 나열합니다. 이 엔드포인트 중 하나를 연결하려면 Databricks 앱에 모델 서비스 엔드포인트 리소스 추가(Add a model serving endpoint resource to a Databricks app)를 참조하세요. 토큰당 지불 방식의 파운데이션 모델을 사용하려면 system.ai 카탈로그에서 모델 서비스를 선택하세요.
  3. 앱에 대한 권한 수준을 선택합니다.
    • 실행 가능: 앱의 서비스 주체 EXECUTE 에게 모델 서비스에 추론 요청을 보낼 권한을 부여합니다. 이것이 모델 서비스에서 제공되는 유일한 권한 수준입니다.
  4. (선택 사항) 사용자 지정 리소스 키를 지정하세요. 이 키는 앱 구성에서 모델 서비스를 참조하는 방법입니다. 기본 키는 .입니다 model.

Databricks 자산 번들로 구성

선언적 자동화 번들(Declarative Automation Bundles)을 사용해 앱을 정의한다면, 번들 구성 내에 모델 서비스를 uc_securable 리소스로 추가하세요:

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'

선언적 자동화 번들(Declarative Automation Bundles)의 앱 자원에 관한 정보는 app.resources를 참조하세요.

환경 변수

Unity Gateway 모델 서비스 리소스를 사용하는 앱을 배포하면, Azure Databricks는 환경 변수를 통해 모델 서비스의 전체 세 부분으로 된 Unity 카탈로그 이름을 노출시켜 valueFrom 필드를 사용해 참조할 수 있습니다.

예제 구성:

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

필드는 valueFrom 모델 서비스의 전체 3부분 Unity 카탈로그 이름으로 변환됩니다(예: system.ai.databricks-dbrx-instruct). Azure Databricks SDK 또는 Unity Gateway REST API를 통해 모델 서비스를 호출할 때 이 이름을 사용하세요.

자세한 내용은 환경 변수를 사용하여 리소스에 액세스하는 방법을 참조하세요.

Unity Gateway 모델 서비스 리소스를 제거하세요

Unity Gateway 모델 서비스 리소스를 앱에서 제거하면, 앱의 서비스 주체는 모델 서비스에 대한 권한을 잃게 됩니다. 모델 서비스 자체는 변경되지 않았으며, 적절한 권한을 가진 다른 사용자와 애플리케이션에 계속 제공됩니다.

모범 사례

Unity Gateway 모델 서비스 리소스를 다룰 때 다음 사항을 고려해 보세요:

  • EXECUTE만 사용 가능한 권한 수준입니다. 앱에 추론 요청을 보낼 수 있는 권한을 부여하며, 모델 서비스에 대한 관리자 권한은 부여하지 않습니다.
  • 추가 설정 없이 토큰당 지불 파운데이션 모델을 사용하려면 system.ai 카탈로그에서 모델 서비스를 선택하세요.
  • 환경 변수는 전체 3부분으로 된 Unity Catalog 이름(catalog.schema.model_service)으로 해석됩니다. Azure Databricks SDK 또는 REST API를 통해 모델 서비스를 호출할 때 이 값을 사용하세요.
  • 앱 코드에서 추론 오류와 요청 한도를 처리하세요. Unity 게이트웨이는 각 모델 서비스에 설정된 속도 제한과 가드레일을 강제합니다.
  • 모델 리소스 선택기는 또한 고전적인 모델 서빙 엔드포인트를 나열하며, Serving Endpoints 섹션 아래에 그룹화합니다. 모델 서비스와 서빙 엔드포인트는 동일한 앱 내에서 공존할 수 있습니다.