기업에서 생성형 AI 및 머신러닝 모델을 빌드하고 배포

Last reviewed 2024-03-28 UTC

기업의 비즈니스 활동 및 비즈니스 프로세스에서 생성형 AI 및 머신러닝(ML) 모델이 점점 더 일반화됨에 따라 일관성, 반복성, 보안, 안전을 보장하기 위해서는 모델 개발에 대한 안내가 점점 더 많이 필요합니다. Google에서는 대기업에서 생성형 AI 및 ML 모델을 빌드하고 배포할 수 있도록 엔터프라이즈 생성형 AI 및 머신러닝 청사진을 만들었습니다. 이 청사진은 예비 데이터 탐색 및 실험부터 모델 학습, 배포, 모니터링에 이르기까지 전체 AI 개발 수명 주기에 대한 포괄적인 가이드를 제공합니다.

엔터프라이즈 생성형 AI 및 ML 청사진은 다음과 같은 많은 이점을 제공합니다.

  • 처방적 안내: Vertex AI를 기반으로 한 생성형 AI 및 ML 개발 환경을 생성, 구성, 배포하는 방법에 대한 명확한 안내입니다. Vertex AI를 사용하여 자체 모델을 개발할 수 있습니다.
  • 향상된 효율: 인프라 배포와 생성형 AI 및 ML 모델 개발에 따른 반복 업무를 줄이는 데 도움이 되는 광범위한 자동화입니다. 자동화를 통해 모델 설계 및 실험과 같은 부가 가치 태스크에 집중할 수 있습니다.
  • 향상된 거버넌스 및 감사 가능성: 모델의 재현성, 추적 가능성, 제어되는 배포가 이 청사진의 설계에 통합되어 있습니다. 이러한 이점 덕분에 생성형 AI 및 ML 모델 수명 주기를 보다 효과적으로 관리할 수 있고, 명확한 감사 추적을 통해 모델을 일관성 있게 재학습시키고 평가할 수 있습니다.
  • 보안: 청사진은 미국 국립 표준 기술 연구소(NIST) 프레임워크사이버 위험 연구소(CRI) 프레임워크의 요구사항에 맞게 설계됩니다.

엔터프라이즈 생성형 AI 및 ML 청사진에는 다음이 포함됩니다.

  • Terraform 구성 세트, Jupyter 노트북, Vertex AI Pipelines 정의, Cloud Composer 방향성 비순환 그래프(DAG), 보조 스크립트를 포함하는 GitHub 저장소. 저장소의 구성요소는 다음을 완료합니다.
    • Terraform 구성은 여러 모델 개발팀을 지원할 수 있는 Vertex AI 모델 개발 플랫폼을 설정합니다.
    • Jupyter 노트북을 사용하면 모델을 대화형으로 개발할 수 있습니다.
    • Vertex AI Pipelines 정의는 Jupyter 노트북을 프로덕션 환경에 사용할 수 있는 재현 가능한 패턴으로 변환합니다.
    • Cloud Composer DAG는 Vertex AI Pipelines의 대체 방법을 제공합니다.
    • 보조 스크립트는 Terraform 코드 및 파이프라인을 배포하는 데 도움이 됩니다.
  • 이 청사진을 사용하여 구현하는 아키텍처, 디자인, 보안 제어 및 운영 프로세스에 대한 가이드(이 문서)

엔터프라이즈 생성형 AI 및 ML 청사진은 엔터프라이즈 기반 청사진과 호환되도록 설계되었습니다. 엔터프라이즈 기반 청사진은 VPC 네트워크와 같이 이 청사진이 사용하는 여러 기본 수준 서비스를 제공합니다. Google Cloud 환경에서 엔터프라이즈 생성형 AI 및 ML 청사진을 지원하는 데 필요한 기능을 제공하는 경우 엔터프라이즈 기반 청사진을 배포하지 않고도 엔터프라이즈 생성형 AI 및 ML 청사진을 배포할 수 있습니다.

이 문서는 청사진을 사용하여 Google Cloud에서 새로운 생성형 AI 또는 ML 모델을 빌드하고 배포할 수 있는 클라우드 설계자, 데이터 과학자, 데이터 엔지니어를 대상으로 합니다. 이 문서에서는 사용자가 생성형 AI 및 ML 모델 개발Vertex AI 머신러닝 플랫폼에 익숙하다고 가정합니다.

엔터프라이즈 생성형 AI 및 ML 청사진 개요

엔터프라이즈 생성형 AI 및 ML 청사진은 계층적 접근 방식을 사용하여 생성형 AI 및 ML 모델 학습을 사용 설정하는 기능을 제공합니다. 청사진은 ML 작업(MLOps) 워크플로를 통해 배포 및 제어할 수 있습니다. 다음 다이어그램은 이 청사진으로 배포된 MLOps 레이어가 환경의 다른 레이어와 어떤 관련이 있는지 보여줍니다.

청사진 레이어.

이 다이어그램에는 다음이 포함됩니다.

  • Google Cloud 인프라저장 데이터 암호화전송 중인 데이터 암호화와 같은 보안 기능뿐만 아니라 컴퓨팅 및 스토리지와 같은 기본 구성요소도 제공합니다.
  • 엔터프라이즈 기반은 AI 워크로드에 Google Cloud를 채택할 수 있게 해주는 ID, 네트워킹, 로깅, 모니터링, 배포 시스템과 같은 리소스 기준을 제공합니다.
  • 데이터 영역은 데이터 수집, 데이터 저장, 데이터 액세스 제어, 데이터 거버넌스, 데이터 모니터링, 데이터 공유와 같은 다양한 기능을 제공하는 개발 스택의 선택적 레이어입니다.
  • 생성형 AI 및 ML 레이어(이 청사진)를 사용하면 모델을 빌드하고 배포할 수 있습니다. 이 레이어를 예비 데이터 탐색 및 실험, 모델 학습, 모델 서빙, 모니터링에 사용할 수 있습니다.
  • CI/CD는 인프라, 워크플로, 소프트웨어 구성요소의 프로비저닝, 구성, 관리, 배포를 자동화하는 도구를 제공합니다. 이러한 구성요소는 일관적이고 안정적이며 감사 가능한 배포를 보장하고, 수동 오류를 최소화하고, 전반적인 개발 주기를 가속화하는 데 도움이 됩니다.

생성형 AI 및 ML 환경의 사용 방법을 보여주기 위해 샘플 ML 모델 개발이 청사진에 포함되어 있습니다. 샘플 모델 개발에서는 모델 빌드, 운영 파이프라인 만들기, 모델 학습, 모델 테스트, 모델 배포를 안내합니다.

아키텍처

엔터프라이즈 생성형 AI 및 ML 청사진은 데이터로 직접 작업할 수 있는 기능을 제공합니다. 대화형 (개발) 환경에서 모델을 만들고 모델을 운영(프로덕션 또는 비프로덕션) 환경으로 승격할 수 있습니다.

대화형 환경에서 Google에서 관리하는 Jupyter 노트북 서비스인 Vertex AI Workbench를 사용하여 ML 모델을 개발합니다. 대화형 환경에서 데이터 추출, 데이터 변환, 모델 조정 기능을 빌드하고 이를 운영 환경으로 승격합니다.

운영(비프로덕션) 환경에서 파이프라인을 사용하여 반복 가능하고 제어 가능한 방식으로 모델을 빌드하고 테스트합니다. 모델의 성능이 만족스러우면 모델을 운영(프로덕션) 환경에 배포할 수 있습니다. 다음 다이어그램은 대화형 및 운영 환경의 다양한 구성요소를 보여줍니다.

청사진 아키텍처.

이 다이어그램에는 다음이 포함됩니다.

  1. 배포 시스템: 서비스 카탈로그Cloud Build와 같은 서비스는 Google Cloud 리소스를 대화형 환경에 배포합니다. 또한 Cloud Build는 Google Cloud 리소스 및 모델 빌드 워크플로를 운영 환경에 배포합니다.
  2. 데이터 소스: BigQuery, Cloud Storage, Spanner, PostgreSQL용 AlloyDB와 같은 서비스가 데이터를 호스팅합니다. 청사진은 BigQuery 및 Cloud Storage의 예시 데이터를 제공합니다.
  3. 대화형 환경: 데이터와 직접 상호작용하고, 모델을 실험하고, 운영 환경에 사용할 파이프라인을 빌드할 수 있는 환경입니다.
  4. 운영 환경: 반복 가능한 방법으로 모델을 빌드하고 테스트한 후 프로덕션에 모델을 배포할 수 있는 환경입니다.
  5. 모델 서비스: 다음 서비스는 다양한 MLOps 활동을 지원합니다.
    • Vertex AI Feature Store는 모델에 특성 데이터를 제공합니다.
    • Model Garden에는 Google 모델을 사용하고 오픈소스 모델을 선택할 수 있게 해주는 ML 모델 라이브러리가 포함되어 있습니다.
    • Vertex AI Model Registry는 ML 모델의 수명 주기를 관리합니다.
  6. 아티팩트 스토리지: 이러한 서비스는 모델 개발 및 파이프라인을 위한 코드 및 컨테이너를 저장합니다. 여기에는 다음과 같은 서비스가 포함됩니다.
    • Artifact Registry는 운영 환경의 파이프라인에서 모델 개발의 다양한 단계를 제어하는 데 사용하는 컨테이너를 저장합니다.
    • Git 저장소는 모델 개발에 사용되는 다양한 구성요소의 코드베이스를 저장합니다.

플랫폼 캐릭터

청사진을 배포할 때 MLOps 엔지니어 그룹, DevOps 엔지니어 그룹, 데이터 과학자 그룹, 데이터 엔지니어 그룹이라는 4가지 유형의 사용자 그룹을 만듭니다. 그룹의 담당 업무는 다음과 같습니다.

  • MLOps 엔지니어 그룹은 서비스 카탈로그에서 사용하는 Terraform 템플릿을 개발합니다. 이 팀은 여러 모델에서 사용하는 템플릿을 제공합니다.
  • DevOps 엔지니어 그룹은 MLOps 개발자 그룹이 만드는 Terraform 템플릿을 승인합니다.
  • 데이터 과학자 그룹은 파이프라인에서 사용하는 모델, 파이프라인, 컨테이너를 개발합니다. 일반적으로 단일 팀은 단일 모델만 빌드합니다.
  • 데이터 엔지니어 그룹은 데이터 과학 그룹이 만든 아티팩트의 사용을 승인합니다.

조직 구조

이 청사진은 엔터프라이즈 기반 청사진의 조직 구조를 기반으로 AI 및 ML 워크로드를 배포합니다. 다음 다이어그램은 AI 및 ML 워크로드를 사용 설정하기 위해 기반에 추가된 프로젝트를 보여줍니다.

청사진 조직 구조.

다음 표에서는 생성형 AI 및 ML 청사진에서 사용하는 프로젝트를 설명합니다.

폴더 프로젝트 설명

common

prj-c-infra-pipeline

청사진의 생성형 AI 및 ML 구성요소를 빌드하는 데 사용되는 배포 파이프라인을 포함합니다. 자세한 내용은 엔터프라이즈 기반 청사진의 인프라 파이프라인을 참조하세요.

prj-c-service-catalog

서비스 카탈로그에서 대화형 환경에 리소스를 배포하는 데 사용되는 인프라가 포함되어 있습니다.

development

prj-d-machine-learning

대화형 모드에서 AI 및 ML 사용 사례를 개발하기 위한 구성요소가 포함되어 있습니다.

non-production

prj-n-machine-learning

프로덕션에 배포할 수 있는 AI 및 ML 사용 사례를 테스트하고 평가하기 위한 구성요소가 포함되어 있습니다.

production

prj-p-machine-learning

AI 및 ML 사용 사례를 프로덕션에 배포하기 위한 구성요소가 포함되어 있습니다.

네트워킹

청사진은 엔터프라이즈 기반 청사진에서 생성된 공유 VPC 네트워크를 사용합니다. 대화형 (개발) 환경에서 Vertex AI Workbench 노트북이 서비스 프로젝트에 배포됩니다. 온프레미스 사용자는 공유 VPC 네트워크에서 비공개 IP 주소 공간을 사용하여 프로젝트에 액세스할 수 있습니다. 온프레미스 사용자는 Private Service Connect를 통해 Cloud Storage와 같은 Google Cloud API에 액세스할 수 있습니다. 각 공유 VPC 네트워크(개발, 비프로덕션, 프로덕션)에는 고유한 Private Service Connect 엔드포인트가 있습니다.

청사진 네트워크.

운영 환경(비프로덕션 및 프로덕션)에는 온프레미스 리소스가 비공개 IP 주소를 통해 액세스할 수 있는 두 개의 개별 공유 VPC 네트워크가 있습니다. 대화형 및 운영 환경은 VPC 서비스 제어를 사용하여 보호됩니다.

Cloud Logging

이 청사진은 엔터프라이즈 기반 청사진에서 제공하는 Cloud Logging 기능을 사용합니다.

Cloud Monitoring

커스텀 학습 작업을 모니터링하기 위해 다음 측정항목을 모니터링할 수 있는 대시보드가 청사진에 포함되어 있습니다.

  • 각 학습 노드의 CPU 사용률
  • 각 학습 노드의 메모리 사용률
  • 네트워크 사용량

커스텀 학습 작업이 실패하면 청사진이 Cloud Monitoring을 사용하여 실패를 알리는 이메일 알림 메커니즘을 제공합니다. Vertex AI 엔드포인트를 사용하는 배포된 모델을 모니터링하기 위해 다음 측정항목이 포함된 대시보드가 청사진에 제공됩니다.

  • 성능 측정항목:
    • 초당 예측
    • 모델 지연 시간
  • 리소스 사용량:
    • CPU 사용량
    • 메모리 사용량

조직 정책 설정

이 청사진은 엔터프라이즈 기반 청사진에서 만든 조직 정책 외에도 보안 AI의 사전 정의된 상황, 확장 요소에 나와 있는 조직 정책을 추가합니다.

운영

이 섹션에서는 청사진에 포함된 환경에 대해 설명합니다.

대화형 환경

대화형 환경은 조직의 보안 상황을 유지하면서 데이터를 탐색하고 모델을 개발할 수 있도록 사용자가 수행할 수 있는 제어된 작업 집합을 제공합니다. 다음 방법 중 하나를 사용하여 Google Cloud 리소스를 배포할 수 있습니다.

  • 리소스 템플릿을 사용한 자동화를 통해 사전 구성된 서비스 카탈로그 사용
  • Vertex AI Workbench 노트북을 사용하여 코드 아티팩트를 빌드하고 Git 저장소에 커밋

다음 다이어그램은 대화형 환경을 보여줍니다.

청사진 대화형 환경.

일반적인 대화형 흐름에는 다음과 같은 단계 및 구성요소가 연결되어 있습니다.

  1. 서비스 카탈로그는 데이터 과학자가 대화형 환경에 배포할 수 있는 선별된 Google Cloud 리소스 목록을 제공합니다. 데이터 과학자가 서비스 카탈로그의 Vertex AI Workbench 노트북 리소스를 배포합니다.
  2. Vertex AI Workbench 노트북은 데이터 과학자가 대화형 환경에 배포된 Google Cloud 리소스로 작업하는 데 사용하는 기본 인터페이스입니다. 데이터 과학자는 이 노트북을 사용하여 Git에서 코드를 가져오고 필요에 따라 코드를 업데이트할 수 있습니다.
  3. 소스 데이터는 대화형 환경 외부에 저장되고 이 청사진과 별도로 관리됩니다. 데이터에 대한 액세스는 데이터 소유자가 제어합니다. 데이터 과학자는 소스 데이터에 대한 읽기 액세스 권한을 요청할 수 있지만 소스 데이터에 쓸 수는 없습니다.
  4. 데이터 과학자는 소스 데이터를 서비스 카탈로그를 통해 생성된 리소스로 대화형 환경으로 전송할 수 있습니다. 데이터 과학자는 대화형 환경에서 데이터를 읽고 쓰고 조작할 수 있습니다. 하지만 데이터 과학자는 대화형 환경 외부로 데이터를 전송하거나 서비스 카탈로그에서 만든 리소스에 대한 액세스 권한을 부여할 수 없습니다. BigQuery는 구조화된 데이터와 반구조화된 데이터를 저장하고, Cloud Storage는 구조화되지 않은 데이터를 저장합니다.
  5. Feature Store는 데이터 과학자가 모델 학습용 특성에 짧은 지연 시간으로 액세스할 수 있는 권한을 제공합니다.
  6. 데이터 과학자는 Vertex AI 커스텀 학습 작업을 사용하여 모델을 학습시킵니다. 청사진은 또한 초매개변수 조정에 Vertex AI를 사용합니다.

  7. 데이터 과학자는 Vertex AI 실험Vertex AI 텐서보드를 사용하여 모델을 평가합니다. Vertex AI 실험을 사용하면 서로 다른 매개변수, 모델링 기법, 아키텍처, 입력을 사용하여 모델에 대해 여러 학습을 실행할 수 있습니다. Vertex AI 텐서보드를 사용하면 실행한 다양한 실험을 추적, 시각화, 비교한 다음, 잘 관찰된 특성이 있는 모델을 선택하여 검증할 수 있습니다.

  8. 데이터 과학자는 Vertex AI 평가로 모델을 검증합니다. 데이터 과학자는 모델을 검증하기 위해 소스 데이터를 학습 데이터 세트와 검증 데이터 세트로 분할하고 모델에 대해 Vertex AI 평가를 실행합니다.

  9. 데이터 과학자는 Cloud Build를 사용하여 컨테이너를 빌드하고, Artifact Registry에 컨테이너를 저장하고, 운영 환경에 있는 파이프라인에서 컨테이너를 사용합니다.

운영 환경

운영 환경에는 Git 저장소와 파이프라인이 사용됩니다. 이 환경에는 엔터프라이즈 기반 청사진의 프로덕션 환경과 비프로덕션 환경이 포함되어 있습니다. 비프로덕션 환경에서는 데이터 과학자가 대화형 환경에서 개발된 파이프라인 중 하나에서 파이프라인을 선택합니다. 데이터 과학자는 비프로덕션 환경에서 파이프라인을 실행하고 결과를 평가한 후 프로덕션 환경으로 승격할 모델을 결정할 수 있습니다.

청사진에는 Cloud Composer를 사용하여 빌드된 예시 파이프라인과 Vertex AI Pipelines를 사용하여 빌드된 예시 파이프라인이 포함됩니다. 아래 다이어그램은 운영 환경을 보여줍니다.

청사진 운영 환경.

일반적인 운영 흐름은 다음 단계로 진행됩니다.

  1. 데이터 과학자가 개발 브랜치를 배포 분기에 성공적으로 병합합니다.
  2. 배포 브랜치에 병합되면 Cloud Build 파이프라인이 트리거됩니다.
  3. 다음 항목 중 하나가 발생합니다.
    • 데이터 과학자가 Cloud Composer를 조정자로 사용하는 경우 Cloud Build 파이프라인이 DAG를 Cloud Storage로 이동합니다.
    • 데이터 과학자가 Vertex AI Pipelines를 조정자로 사용하는 경우 파이프라인은 Python 파일을 Cloud Storage로 이동합니다.
  4. Cloud Build 파이프라인이 조정자(Cloud Composer 또는 Vertex AI Pipelines)를 트리거합니다.
  5. 조정자는 Cloud Storage에서 파이프라인 정의를 가져와서 파이프라인 실행을 시작합니다.
  6. 파이프라인은 파이프라인의 모든 단계에서 Vertex AI 서비스를 트리거하는 데 사용되는 Artifact Registry에서 컨테이너를 가져옵니다.
  7. 파이프라인은 컨테이너를 사용하여 소스 데이터 프로젝트에서 운영 환경으로의 데이터 전송을 트리거합니다.
  8. 데이터는 변환, 검증, 분할되고 모델 학습 및 파이프라인을 통한 검증을 수행할 수 있게 준비됩니다.
  9. 필요한 경우 모델 학습 중에 데이터에 쉽게 액세스할 수 있도록 파이프라인이 데이터를 Vertex AI Feature Store로 이동합니다.
  10. 파이프라인은 Vertex AI 커스텀 모델 학습을 사용하여 모델을 학습시킵니다.
  11. 파이프라인은 Vertex AI 평가를 사용하여 모델을 검증합니다.
  12. 검증된 모델은 파이프라인을 통해 Model Registry가져옵니다.
  13. 그런 다음 가져온 모델을 사용하여 온라인 예측 또는 일괄 예측을 통해 예측을 생성합니다.
  14. 모델이 프로덕션 환경에 배포되면 파이프라인에서 Vertex AI 모델 모니터링을 사용하여 학습-서빙 편향예측 드리프트를 모니터링하는 방식으로 모델 성능 저하 여부를 감지합니다.

Deployment

청사진은 일련의 Cloud Build 파이프라인을 사용하여 청사진 인프라, 운영 환경의 파이프라인, 생성형 AI 및 ML 모델을 만드는 데 사용되는 컨테이너를 프로비저닝합니다. 사용되는 파이프라인과 프로비저닝되는 리소스는 다음과 같습니다.

  • 인프라 파이프라인: 이 파이프라인은 엔터프라이즈 기반 청사진의 일부입니다. 이 파이프라인은 대화형 환경 및 운영 환경과 연결된 Google Cloud 리소스를 프로비저닝합니다.
  • 대화형 파이프라인: 대화형 파이프라인은 대화형 환경의 일부입니다. 이 파이프라인은 Git 저장소의 Terraform 템플릿을 서비스 카탈로그가 읽을 수 있는 Cloud Storage 버킷으로 복사합니다. 대화형 파이프라인은 기본 브랜치와 병합하기 위해 pull 요청이 수행될 때 트리거됩니다.
  • 컨테이너 파이프라인: 청사진에는 운영 파이프라인에 사용되는 컨테이너를 빌드하는 Cloud Build 파이프라인이 포함됩니다. 여러 환경에 배포된 컨테이너는 변경 불가 컨테이너 이미지입니다. 변경 불가 컨테이너 이미지는 모든 환경 전반에 동일한 이미지가 배포되고 컨테이너가 실행되는 동안 수정할 수 없게 하는 데 도움이 됩니다. 애플리케이션을 수정해야 하는 경우 이미지를 다시 빌드하고 재배포해야 합니다. 청사진에 사용되는 컨테이너 이미지는 Artifact Registry에 저장되며 운영 파이프라인에 사용되는 구성 파일에서 참조됩니다.
  • 운영 파이프라인: 운영 파이프라인은 운영 환경의 일부입니다. 이 파이프라인은 Cloud Composer 또는 Vertex AI Pipelines의 DAG를 복사한 후 이를 사용하여 모델을 빌드, 테스트, 배포합니다.

서비스 카탈로그

서비스 카탈로그를 사용하면 개발자와 클라우드 관리자가 내부의 기업 사용자에게 솔루션을 제공할 수 있습니다. 서비스 카탈로그의 Terraform 모듈은 Cloud Build CI/CD 파이프라인을 통해 빌드되어 Cloud Storage 버킷에 아티팩트로 게시됩니다. 모듈이 버킷에 복사되면 개발자는 모듈을 사용하여 서비스 카탈로그 관리 페이지에 Terraform 솔루션을 만들고, 서비스 카탈로그에 솔루션을 추가하고, 솔루션을 대화형 환경 프로젝트와 공유하여 사용자가 리소스를 배포하도록 할 수 있습니다.

대화형 환경에서는 서비스 카탈로그를 사용하여 데이터 과학자가 기업의 보안 상황에 따라 Google Cloud 리소스를 배포할 수 있도록 합니다. Cloud Storage 버킷과 같이 Google Cloud 리소스가 필요한 모델을 개발할 때 데이터 과학자는 서비스 카탈로그에서 리소스를 선택하고, 리소스를 구성하고, 대화형 환경에 리소스를 배포합니다. 서비스 카탈로그에는 다양한 Google Cloud 리소스에 대해 사전 구성된 템플릿이 포함되어 있으며, 데이터 과학자는 이를 대화형 환경에 배포할 수 있습니다. 데이터 과학자는 리소스 템플릿을 변경할 수 없지만 템플릿이 노출하는 구성 변수를 통해 리소스를 구성할 수 있습니다. 다음 다이어그램은 서비스 카탈로그와 대화형 환경이 상호 연관되는 구조를 보여줍니다.

청사진 카탈로그.

데이터 과학자는 다음 단계의 설명대로 서비스 카탈로그를 사용하여 리소스를 배포합니다.

  1. MLOps 엔지니어가 Google Cloud용 Terraform 리소스 템플릿을 Git 저장소에 저장합니다.
  2. Git에 커밋하면 Cloud Build 파이프라인이 트리거됩니다.
  3. Cloud Build가 템플릿 및 관련 구성 파일을 Cloud Storage에 복사합니다.
  4. MLOps 엔지니어가 서비스 카탈로그 솔루션 및 서비스 카탈로그를 수동으로 설정합니다. 그런 다음 엔지니어는 대화형 환경에서 서비스 카탈로그를 서비스 프로젝트와 공유합니다.
  5. 데이터 과학자가 서비스 카탈로그에서 리소스를 선택합니다.
  6. 서비스 카탈로그가 대화형 환경에 템플릿을 배포합니다.
  7. 리소스가 필요한 구성 스크립트를 가져옵니다.
  8. 데이터 과학자가 리소스와 상호작용합니다.

저장소

배포에 설명된 파이프라인은 해당 저장소의 변경사항에 의해 트리거됩니다. 아무도 프로덕션 환경을 독립적으로 변경할 수 없도록 코드를 제출할 수 있는 사용자와 코드 변경을 승인할 수 있는 사용자의 담당 업무가 분리되어 있습니다. 다음 표에서는 청사진 저장소와 해당 제출자 및 승인자에 대해 설명합니다.

저장소 파이프라인 설명 제출자 승인 담당자

ml-foundation

인프라
대화형 및 운영 환경을 만드는 생성형 AI 및 ML 청사진의 Terraform 코드가 포함됩니다. MLOps 엔지니어 DevOps 엔지니어

service-catalog

양방향 서비스 카탈로그가 배포할 수 있는 리소스의 템플릿이 포함됩니다. MLOps 엔지니어 DevOps 엔지니어

artifact-publish

컨테이너 운영 환경의 파이프라인이 사용할 수 있는 컨테이너가 포함됩니다. 데이터 과학자 데이터 엔지니어

machine-learning

운영 운영 환경의 파이프라인에서 사용할 수 있는 소스 코드가 포함됩니다. 데이터 과학자 데이터 엔지니어

브랜칭 전략

청사진은 영구 브랜칭을 사용하여 연결된 환경에 코드를 배포합니다. 청사진에는 해당 환경이 반영된 세 가지 브랜치(개발, 비프로덕션, 프로덕션)가 사용됩니다.

보안 제어

엔터프라이즈 생성형 AI 및 ML 청사진은 기본 Google Cloud 기능, Google Cloud 서비스, 엔터프라이즈 기반 청사진을 통해 구성된 보안 기능을 사용하는 레이어링된 심층 방어 보안 모델을 사용합니다. 다음 다이어그램은 청사진의 다양한 보안 제어 레이어를 보여줍니다.

청사진 보안 제어.

레이어의 기능은 다음과 같습니다.

  • 인터페이스: 제어된 방식으로 청사진과 상호작용할 수 있는 서비스를 데이터 과학자에게 제공합니다.
  • 배포: 인프라를 배포하고 컨테이너를 빌드하고 모델을 만드는 일련의 파이프라인을 제공합니다. 파이프라인을 사용하면 감사 가능성, 추적 가능성, 반복성이 허용됩니다.
  • 네트워킹: API 레이어 및 IP 레이어에서 청사진 리소스 주위에 데이터 무단 반출 보호를 제공합니다.
  • 액세스 관리: 누가 어떤 리소스에 액세스할 수 있는지를 제어하고 리소스 무단 사용을 방지합니다.
  • 암호화: 암호화 키, 보안 비밀을 제어하고 기본 저장 데이터 암호화 및 전송 중 데이터 암호화를 통해 데이터를 보호할 수 있습니다.
  • 감지: 잘못된 구성 및 악의적인 활동을 감지하는 데 도움이 됩니다.
  • 예방: 인프라 배포 방법을 제어하고 제한하는 방법을 제공합니다.

다음 표에서는 각 레이어와 관련된 보안 제어를 설명합니다.

레이어 리소스 보안 제어
인터페이스 Vertex AI Workbench 사용자 액세스 제어, 네트워크 액세스 제어, IAM 액세스 제어, 사용 중지된 파일 다운로드가 통합된 관리형 노트북 경험을 제공합니다. 이러한 기능은 보다 안전한 사용자 환경을 지원합니다.
Git 저장소 저장소 보호를 위해 사용자 액세스 제어를 제공합니다.
서비스 카탈로그 승인된 구성으로만 배포될 수 있는 선별된 리소스 목록을 데이터 과학자에게 제공합니다.
Deployment 인프라 파이프라인 Terraform을 사용하여 청사진 인프라를 배포하는 보안 흐름을 제공합니다.
대화형 파이프라인 Git 저장소에서 Google Cloud 조직 내 버킷으로 템플릿을 전송하는 보안 흐름을 제공합니다.
컨테이너 파이프라인 운영 파이프라인에서 사용되는 컨테이너를 빌드하는 보안 흐름을 제공합니다.
운영 파이프라인 모델을 학습, 테스트, 검증, 배포하는 제어된 흐름을 제공합니다.
Artifact Registry 리소스 액세스 제어를 사용하여 컨테이너 이미지를 안전한 방식으로 저장
네트워크 Private Service Connect 인터넷에 트래픽이 노출되지 않도록 비공개 IP 주소를 사용하여 Google Cloud API와 통신할 수 있습니다.
비공개 IP 주소를 사용하는 VPC 청사진은 비공개 IP 주소를 사용하는 VPC를 통해 인터넷 연결 위협에 대한 노출을 제거합니다.
VPC 서비스 제어 보호되는 리소스를 데이터 무단 반출로부터 보호하는 데 도움이 됩니다.
방화벽 VPC 네트워크를 무단 액세스로부터 보호하는 데 도움이 됩니다.
액세스 관리 Cloud ID 중앙 집중식 사용자 관리를 제공하여 무단 액세스 위험을 줄입니다.
IAM 누가 어떤 리소스에 어떤 작업을 수행할 수 있는지에 대한 세분화된 제어를 제공하여 액세스 관리 시 최소 권한을 사용 설정합니다.
암호화 Cloud KMS Google Cloud 조직 내에서 사용되는 암호화 키를 제어할 수 있습니다.
Secret Manager IAM에서 제어하는 모델의 보안 비밀 저장소를 제공합니다.
저장 데이터 암호화 기본적으로 Google Cloud는 저장 데이터를 암호화합니다.
전송 중인 데이터 암호화 기본적으로 Google Cloud는 전송 중인 데이터를 암호화합니다.
탐지 Security Command Center Google Cloud 조직을 보호하는 데 도움이 되는 위협 감지기를 제공합니다.
지속적 아키텍처 Google Cloud 조직이 일련의 정의된 Open Policy Agent(OPA) 정책을 준수하는지 지속적으로 확인합니다.
IAM 추천자 사용자 권한을 분석하고 최소 권한의 원칙을 적용할 수 있도록 권한 축소를 추천합니다.
방화벽 통계 방화벽 규칙을 분석하고, 과도한 권한이 부여된 방화벽 규칙을 식별하고, 전반적인 보안 상태를 강화하는 데 도움이 되는 보다 제한적인 방화벽을 제안합니다.
Cloud Logging 시스템 활동에 대한 가시성을 제공하고 이상 및 악의적인 활동을 감지할 수 있도록 합니다.
Cloud Monitoring 의심스러운 활동을 식별하는 데 도움이 되는 주요 신호 및 이벤트를 추적합니다.
예방책 조직 정책 서비스 Google Cloud 조직 내에서 작업을 제한할 수 있습니다.

다음 단계