Build an AI Image Generator app using Imagen on Vertex AI
(Vertex AI에서 Imagen을 사용하여 AI 이미지 생성기 앱을 빌드)
목적
Vertex AI의 생성 AI(genAI 또는 gen AI라고도 함)를 사용하면 Google의 대규모 생성 AI 모델을 활용하여 AI 기반 애플리케이션에 사용하기 위해 테스트, 조정 및 배포할 수 있습니다. 이 랩에서는 다음을 수행합니다.
- Vertex AI(Google Cloud AI 플랫폼)에 연결: Vertex AI SDK를 사용하여 Google AI 서비스에 연결하는 방법을 알아보세요.
- 사전 훈련된 이미지 생성 모델 로드: 처음부터 모델을 구축하지 않고도 강력하고 사전 훈련된 AI 모델을 사용하는 방법을 알아보세요.
- AI 모델에 텍스트 보내기: AI가 처리할 수 있도록 입력을 제공하는 방법을 알아보세요.
- AI로부터 이미지 기반 답변 추출: AI 모델이 생성한 이미지 응답을 처리하고 해석하는 방법을 학습합니다.
- AI 애플리케이션 구축의 기본 사항을 이해합니다. 소프트웨어 프로젝트에 AI를 통합하는 핵심 개념에 대한 통찰력을 얻습니다.
Working with Vertex AI Python SDK
이번 과정도 랩을 시작하면 왼쪽에는 코드 편집기가, 오른쪽에는 랩 지침이 분할 창으로 표시됩니다.

+) projectId와 location도 이전과정과 같이 버튼 클릭 시 다시 보여집니다
과정
1. 코드 편집기에서 파일->새 파일을 클릭
2. 제공된 코드 복붙
import argparse
import vertexai
from vertexai.preview.vision_models import ImageGenerationModel
def generate_image(
project_id: str, location: str, output_file: str, prompt: str
) -> vertexai.preview.vision_models.ImageGenerationResponse:
"""Generate an image using a text prompt.
Args:
project_id: Google Cloud project ID, used to initialize Vertex AI.
location: Google Cloud region, used to initialize Vertex AI.
output_file: Local path to the output image file.
prompt: The text prompt describing what you want to see."""
vertexai.init(project=project_id, location=location)
model = ImageGenerationModel.from_pretrained("imagen-3.0-generate-002")
images = model.generate_images(
prompt=prompt,
# Optional parameters
number_of_images=1,
seed=1,
add_watermark=False,
)
images[0].save(location=output_file)
return images
generate_image(
project_id='"project-id"',
location='"REGION"',
output_file='image.jpeg',
prompt='Create an image of a cricket ground in the heart of Los Angeles',
# prompt 해석 =. '로스앤젤레스 중심부에 있는 크리켓 경기장 이미지를 만들어 보세요'
)
[위 코드 분석]
| model = ImageGenerationModel.from_pretrained("imagen-3.0-generate-002") |
ㄴ> 모델 설정
| images = model.generate_images( prompt=prompt, # Optional parameters number_of_images=1, seed=1, add_watermark=False, ) |
ㄴ> [ generate_images 메소드 파라미터 ]
project_id: Vertex AI를 초기화하는 데 사용되는 Google Cloud 프로젝트 ID입니다.
location: Vertex AI를 초기화하는 데 사용되는 Google Cloud 리전입니다.
output_file: 출력 이미지 파일의 로컬 경로입니다.
prompt: 보고 싶은 내용을 설명하는 텍스트 프롬프트입니다.
| images[0].save(location=output_file) |
ㄴ> 이미지 파일로 저장하기
cf) genai 로 변경하려고 했더니, genai는 이미지 데이터를 직접 파일로 저장하는 메서드가 없다고 한다.
- 대체방법) 응답으로 받은 이미지 바이트(bytes)를 Pillow와 같은 라이브러리를 사용해 파일로 직접 저장
3. 파일 > GenerateImage.py 저장
4. 코드 편집기에서 삼각형 아이콘을 클릭하거나, 터미널의 코드 편집기 창에서 아래 명령을 실행하여 Python 파일을 실행하세요. 이렇게 하면 이름이 .인 이미지 파일이 생성됩니다 image.jpeg.
/usr/bin/python3 /GenerateImage.py
5. 생성된 이미지를 보려면 탐색기 > image.jpeg를 클릭

생성 결과 이미지

ㄴ> 참고) 기본적으로 SynthID 워터마크는 이미지에 추가되지만 add_watermark=False로 선택적 매개변수를 지정하여 비활성화할 수 있습니다. 하지만 시드 값과 워터마크를 동시에 사용할 수 없습니다.
출처
https://www.cloudskillsboost.google/course_templates/1076/labs/584319
Introduction to Building Real-World AI Applications with Gemini and Imagen - Vertex AI의 Imagen을 사용한 AI 이미지 생
이 실습에서는 Google의 Vertex AI SDK를 사용하여 사전 학습된 이미지 생성 AI 모델과 상호작용하는 방법을 알아봅니다. 이를 통해 AI 모델에 텍스트 프롬프트를 이미지 생성의 입력으로 보내고 AI 모
www.cloudskillsboost.google