AI 및 ML 관점: 안정성

Well-Architected Framework: AI 및 ML 관점의 이 문서는 Google Cloud에서 안정적인 AI 및 ML 시스템을 설계하고 운영하기 위한 원칙과 권장사항을 간략히 설명합니다. 또한 고급 안정성 관행과 관측 가능성을 아키텍처 청사진에 통합하는 방법을 살펴봅니다. 이 문서의 권장사항은 잘 설계된 프레임워크의 Google Cloud 안정성 핵심 요소와 일치합니다.

빠르게 진화하는 AI 및 ML 환경에서 고객 만족도를 보장하고 비즈니스 목표를 달성하려면 안정적인 시스템이 필수적입니다. 예측 ML과 생성형 AI의 고유한 요구를 충족하려면 강력하고 안정적이며 조정 가능한 AI 및 ML 시스템이 필요합니다. 개발부터 배포, 지속적인 개선에 이르기까지 MLOps의 복잡성을 처리하려면 안정성 우선 접근 방식을 사용해야 합니다. Google Cloud 사이트 안정성 엔지니어링 (SRE) 원칙에 맞추어 특수 목적으로 구축된 AI 인프라를 제공하고 안정적인 AI 및 ML 시스템을 위한 강력한 기반을 제공합니다.

인프라의 확장성 및 고가용성 보장

확장성과 가용성을 고려하여 설계하면 애플리케이션이 서비스 중단이나 성능 저하 없이 다양한 수준의 수요를 처리할 수 있습니다. 즉, 인프라가 중단되거나 트래픽이 매우 많을 때도 사용자가 AI 서비스를 계속 사용할 수 있습니다.

다음 권장사항을 고려하세요.

  • 수요 변동에 대처하기 위해 자동 및 동적 확장 기능으로 AI 시스템을 설계합니다. 이렇게 하면 트래픽이 급증하는 경우에도 최적의 성능을 보장할 수 있습니다.
  • 부하 테스트 및 성능 모니터링을 통해 사전에 리소스를 관리하고 향후 요구사항을 예측할 수 있습니다. 과거 데이터와 예측 분석을 사용하여 정보에 입각한 리소스 할당 결정을 내릴 수 있습니다.
  • Google Cloud 에서 멀티 영역 및 멀티 리전 배포 원형을 채택하고 중복 및 복제를 구현하여 고가용성과 내결함성을 위해 설계합니다.
  • 수신 트래픽을 AI 및 ML 서비스의 여러 인스턴스와 엔드포인트 간에 분산합니다. 부하 분산은 단일 인스턴스에 과부하가 걸리지 않도록 하고 일관된 성능과 가용성을 보장하는 데 도움이 됩니다.

느슨하게 결합된 모듈식 아키텍처 사용

AI 시스템이 개별 구성요소의 장애에 대해 복원력을 갖추도록 하려면 모듈식 아키텍처를 사용하세요. 예를 들어 데이터 처리 구성요소와 데이터 유효성 검사 구성요소를 별도의 모듈로 설계합니다 특정 구성요소에 장애가 발생하면 모듈식 아키텍처를 사용하면 다운타임을 최소화하고 팀이 수정사항을 더 빠르게 개발하고 배포할 수 있습니다.

다음 권장사항을 고려하세요.

  • AI 및 ML 시스템을 작은 독립 실행형 모듈 또는 구성요소로 분리합니다. 이 접근 방식은 코드 재사용성을 높이고, 테스트 및 유지보수를 간소화하며, 개별 구성요소를 독립적으로 개발하고 배포할 수 있게 해줍니다.
  • 잘 정의된 인터페이스를 사용하여 느슨하게 결합된 모듈을 설계합니다. 이 접근 방식은 종속 항목을 최소화하며, 전체 시스템에 영향을 주지 않으면서 독립적인 업데이트 및 변경을 수행할 수 있게 해줍니다.
  • 단계적 성능 저하를 계획합니다. 구성요소에 장애가 발생해도 시스템의 다른 부분은 계속해서 적절한 수준의 기능을 제공해야 합니다.
  • API를 사용하여 모듈 간에 명확한 경계를 만들고 모듈 수준 구현 세부정보를 숨깁니다. 이 접근 방식을 사용하면 시스템의 다른 부분과의 상호작용에 영향을 주지 않고 개별 구성요소를 업데이트하거나 대체할 수 있습니다.

자동화된 MLOps 플랫폼 빌드

자동화된 MLOps 플랫폼을 사용하면 모델 수명 주기의 단계와 출력이 보다 안정적입니다. 일관성, 느슨한 결합, 모듈성을 높이고 운영 및 인프라를 코드로 표현하면 취약한 수동 단계를 없애고 더 강력하고 안정적인 AI 및 ML 시스템을 유지할 수 있습니다.

다음 권장사항을 고려하세요.

  • 데이터 준비 및 검증부터 모델 학습, 평가, 배포, 모니터링에 이르기까지 모델 개발 수명 주기를 자동화합니다.
  • 코드형 인프라 (IaC) 관리 이러한 접근 방식은 효율적인 버전 제어, 필요한 경우 빠른 롤백, 반복 가능한 배포를 지원합니다.
  • 관련 데이터에서 모델이 예상대로 작동하는지 검증합니다. 모델의 성능 모니터링을 자동화하고 예기치 않은 출력에 대한 적절한 알림을 구축합니다.
  • AI 및 ML 파이프라인의 입력과 출력을 검증합니다. 예를 들어 데이터, 구성, 명령어 인수, 파일, 예측의 유효성을 검사합니다. 예상치 못한 값 또는 허용되지 않는 값에 대한 알림을 구성합니다.
  • 모델 엔드포인트에 관리형 버전 제어 전략을 채택합니다. 이러한 종류의 전략은 문제 발생 시 증분 출시와 빠른 복구를 지원합니다.

데이터 및 모델 거버넌스를 통해 신뢰와 제어 유지

AI 및 ML 시스템의 안정성은 데이터 및 모델의 신뢰와 거버넌스 기능에 따라 달라집니다. AI 출력은 조용히 기대를 충족하지 못할 수 있습니다 예를 들어 출력이 공식적으로 일관적일 수 있지만 부정확하거나 원치 않는 출력일 수 있습니다. 추적 가능성과 강력한 거버넌스를 구현하면 신뢰성과 신뢰성을 갖춘 출력을 보장할 수 있습니다.

다음 권장사항을 고려하세요.

  • 데이터 및 모델 카탈로그를 사용하여 애셋을 효과적으로 추적하고 관리하세요. 추적 및 감사를 용이하게 하려면 수명 주기 동안 데이터 및 모델 버전의 포괄적인 레코드를 유지관리하세요.
  • 엄격한 액세스 제어와 감사 추적을 구현하여 민감한 정보와 모델을 보호합니다.
  • 특히 생성형 AI 애플리케이션에서 AI의 심각한 편향성 문제를 해결합니다 신뢰를 쌓으려면 모델 출력의 투명성과 설명 가능성을 위해 노력해야 합니다.
  • 특성 통계 생성을 자동화하고 이상 감지를 구현하여 데이터 문제를 사전에 식별합니다. 모델 안정성을 보장하기 위해 데이터 분포의 변화로 인한 영향을 감지하고 완화하는 메커니즘을 설정합니다.

종합적인 AI 및 ML 관측 가능성 및 신뢰성 관행 구현

AI 운영을 지속적으로 개선하려면 의미 있는 안정성 목표를 정의하고 진행 상황을 측정해야 합니다. 관측 가능성은 신뢰할 수 있는 시스템의 기본 요소입니다 관측 가능성을 통해 진행 중인 작업과 중요한 이벤트를 관리할 수 있습니다. 관측 가능성을 잘 구현하면 사용자에게 신뢰할 수 있는 서비스를 빌드하고 유지하는 데 도움이 됩니다.

다음 권장사항을 고려하세요.

  • 프로세서 (CPU, GPU, TPU)와 메모리 사용량, 네트워크 지연 시간, 디스크 사용량과 같은 기타 리소스의 인프라 측정항목을 추적합니다. 부하 테스트 및 성능 모니터링을 수행합니다. 모니터링의 테스트 결과와 측정항목을 사용하여 AI 및 ML 시스템의 확장과 용량을 관리합니다.
  • 안정성 목표를 설정하고 애플리케이션 측정항목을 추적합니다. 빌드하는 AI 애플리케이션의 처리량 및 지연 시간과 같은 측정항목을 측정할 수 있습니다. 애플리케이션 및 노출된 엔드포인트의 사용 패턴을 모니터링합니다.
  • 모델 신뢰성을 평가하려면 정확성 또는 안전 지표와 같은 모델별 측정항목을 설정합니다. 시간 경과에 따른 측정항목을 추적하여 드리프트 또는 성능 저하를 파악하세요. 효율적인 버전 제어 및 자동화를 위해 모니터링 구성을 코드로 정의하세요.
  • 비즈니스 수준 측정항목을 정의하고 추적하여 모델 및 안정성이 비즈니스 성과에 미치는 영향을 파악합니다. AI 및 ML 서비스의 안정성을 측정하려면 SRE 접근 방식을 채택하고 서비스 수준 목표 (SLO)를 정의하는 것이 좋습니다.

참여자

저자:

기타 참여자: