이 가이드에서는 Google에서 제공하는 채팅 앱 템플릿인 Cloud SQL을 사용한 생성형 AI RAG 템플릿을 이해하는 데 도움을 줍니다. 이 템플릿은 검색 증강 생성 (RAG)을 사용하는 채팅 애플리케이션을 만드는 방법을 보여줍니다. 사용자가 앱에서 질문하면 데이터베이스에 벡터로 저장된 정보를 기반으로 대답을 제공합니다.
사용 제품
애플리케이션에는 다음 Google Cloud 제품이 포함됩니다.
- Cloud Load Balancing(선택사항): Google Cloud에서 확장 가능한 고성능 부하 분산을 제공하는 서비스입니다.
- Vertex AI: ML 모델과 AI 애플리케이션을 학습시키고 배포하며, 애플리케이션에서 사용할 LLM을 맞춤설정할 수 있는 머신러닝 (ML) 플랫폼입니다.
- Cloud SQL:Google Cloud 인프라에서 완전 관리되는 MySQL, PostgreSQL, SQL Server 데이터베이스를 위한 클라우드 기반 서비스입니다.
- Cloud Run: 서버리스 컨테이너화된 앱을 빌드하고 배포할 수 있는 완전 관리형 서비스입니다.Google Cloud 에서 확장과 기타 인프라 작업을 처리합니다.
- Secret Manager: API 키, 비밀번호, 인증서, 기타 민감한 데이터를 위한 안전하고 편리한 스토리지 시스템입니다.
아키텍처
다음 이미지는 애플리케이션의 구성요소와 연결을 보여줍니다.
다음은 애플리케이션의 요청 처리 흐름입니다.
- Cloud SQL의 PostgreSQL 데이터베이스에 데이터를 로드합니다.
- Vertex AI는 텍스트 필드의 임베딩을 생성하고 벡터로 저장합니다.
- Cloud Load Balancing 프런트엔드는 외부 요청을 수신하고 트래픽을 Cloud Load Balancing 백엔드에 분산합니다.
- Cloud Load Balancing 백엔드는 트래픽을 Cloud Run 프런트엔드 서비스로 분산합니다.
- 생성형 AI 호출을 위해 프런트엔드 서비스가 검색 서비스와 통신합니다.
- 백엔드 서비스가 요청을 임베딩으로 변환하고 기존 임베딩을 검색합니다.
- 검색 서비스는 임베딩 검색의 자연어 결과와 원본 프롬프트를 Vertex AI로 전송하여 대답을 생성합니다.
다음 단계
- 다른 Google 제공 템플릿을 찾아 사용하는 방법을 알아보세요.
- 구체적인 요구사항에 맞게 템플릿을 맞춤설정하는 방법을 알아봅니다.
- Google Cloud 아키텍처 프레임워크에서 일반적인 아키텍처 권장사항을 확인합니다.