Overview
아래 3개의 실습 이후 진행하는 Challenge Lab 이다.
- GSP1151. Vertex AI의 생성형 AI: 프롬프트 설계
- GSP1209. Vertex AI Gemini API 및 Python SDK 시작하기
- GSP1154. Vertex AI Studio 시작하기
3개의 실습에서 익힌 내용을 바탕으로 진행하면 되는데, 진도 Check가 잘 되지 않는 경향이 있다. 이어지는 설명과 전체적으로 유사하게 진행하다 결국 완료하기는 했는데, 이전 2회는 진도 Check가 안 이루어져 시간 내 완료하지 못했고, 3회차에 완료했다.
작업 1. Gemini 이미지 분석 도구 빌드
GSP1154. Vertex AI Studio 시작하기 에서 실습한 내용을 바탕으로 진행하면 된다. 메뉴(三)에서 Cloud Stoage에 진입하면 하나의 Bucket이 만들어져 있고 그 안에 진입하면 Test에 사용할 <Pic 1>과 같이 cymbol-product-image.png가 있고, Image 내용은 여기서 확인할 수도 있다.

다시 메뉴(三)에서 Vertext AI > Create Prompt로 진입한 후 아래 Prompt 입력 창을 확인하면, <Pic 2>와 같이 오른쪽에 있는 Icon들이 있고, 이 중 가장 왼쪽의 Icon을 Click하면 참조할 Contents를 지정할 수 있다.

<Pic 2>에서 Import from Cloud Storage를 선택하면 위에서 확인했던 리소스 cymbol-product-image.png를 <Pic 3>처럼 선택할 수 있게 된다. 그 후에 Prompt를 통해 질문을 진행하면 된다.

아래는 제가 전달한 Prompt와 그에 대한 답변의 예이다.
(Remark : Prompt를 던지기 전에 Lab에서 지정한 AI Model을 올바르게 선택해야 한다.)
Prompt-Answer (펼치기/접기)
나 : 이미지에서 영감을 받은 간결한 설명 텍스트 만들어줘
AI : 하이킹 배낭은 활기찬 야생화가 늘어선 트레일 옆에 앉아 있으며 버려진 지도가 아름다운 풍경을 탐험할 수 있는 기회를 암시합니다.
나 : 광고에 적합한 눈길을 사로잡는 문구로 만들어줘.
AI : 자연의 아름다움에 빠져보세요. 트레일은 당신을 기다립니다.
나 : 자연에 중점을 둔 캠페인의 시적 묘사로 만들어줘.
AI : 야생화의 교향곡 속에서, 새로운 길을 찾아보세요. 지도는 곧 이야기입니다.
나 :광고의 대상을 가방으로 해줘.
AI : 모험을 담을 가방입니다. 우리의 튼튼하고 스타일리시한 가방과 함께 탐험에 나서서 자연의 아름다움을 만끽하세요.
나 : 감성적으로 만들어줘.
AI : 소지품을 챙겨 기억을 만들어보세요. 우리의 튼튼하고 스타일리시한 배낭과 함께 탐험에 나서세요. 세상이 여러분을 기다립니다.
과정을 어느 정도 진행한 후에 <pic 4>와 같이 Prompt이름을 변경한 후에 저장하면 Task 1이 완료된다.

개인 소감 : Lab에서는 `gemini-2.0-flash-001` 모델을 사용해서 개인적으로는 AI의 답변에 대해 Feedback을 주면서 답변을 찾아나가라 했지만 생각보다 답변이 만족스럽지 않았다. 다만 AI Model을 gemini-2.5-pro 로 변경하니 답변이 상당 수준으로 올라갔다.
작업 2. Gemini 소개 문구 생성기 빌드(Build a Gemini tagline generator)
작업 2에서는 단순히 Prompt을 통한 문답을 주고 받는 것이 아니라, AI 모델에 역할을 부여해서 그 역할에 따라 답을 줄 수 있게 하고 원하는 대답의 예제를 참고해서 답을 주는 실습을 통해 맞춤형 Prompt를 만드는 과정을 소개한다.
1. System Instruction 입력
2번째 Step에서 지시한 내용은 <Pic 5>와 같이 상단에 위치한 System Instruction에 내용을 옮기면 된다.

2. Example 입력
<Pic 2>의 이미지 Resource를 선언하는 버튼 옆에 '+'로 표시되어 있는 버튼을 누르면 <Pic 6>처럼 Input-Output 양식의 예를 선언할 수 있다.

3. Input, Prompt 입력
Task 2의 Step 4, 5의 내용 번역이 다소 어색하나, '입력'이라고 지시한 부분은 Example 입력 후 Prompt 상단 부분에 'Input'이라고 표시된 부분 옆에 내용을 적으면 되는데, Example의 Input으로 입력한 형식에 맞춰 입력을 하고, '프롬프트'는 Step 4에서 인자로 준 내용을 적으면서 다양한 문구를 만들어 달라고 요청하면 된다. <Pic 7>을 참조하면 된다.

이후 결과 내용에 대해 Feedback을 하거나 좌측에 인자들 중 Temperature, Token 등을 설정해 가면서 만족할 만한 결과를 얻고 Task 1의 마지막 처럼 Prompt를 저장하면 된다.
Remark : 진도 Check가 잘 안되는 Challenge이다. 거의 동일하게 3회 진행 했는데 앞에 2회는 실패했고, 마지막 1회가 성공했다. 왜 성공하는 지, 왜 실패하는 지 잘 파악하지 못한 과제 였다.
작업 3. 이미지 분석 코드로 실험
Task 1에서 진행한 내용을 JupiterLab에서 Code로 진행하는 예제이다. GSP 1209의 과정을 참조하면 되는데, 여기서는 준비된 ipynb 파일이 없고, + 버튼을 통해 image-analysis.ipynb를 신규 파일로 만들어야 한다.
1. image-analysis.ipynb Code 생성
<Pic 8>과 같이 Vertex AI > Prompt Management로 진입하면 이전 Task 1, 2에서 만들어진 Prompt들이 있고 여기서 Cymbal 제품 분석으로 진입한다.

진입한 후에 우측 상단을 보면 <Pic 9>처럼 Build with Code라는 버튼이 있고, 세부 메뉴 중 Get Code를 선택하면 Prompt 설계 과정을 Code로 추출할 수 있게 된다.

추출한 Code는 <Pic 10>과 같이 크게 2개 부분으로 나뉘어져 있는데 빨간색 블록으로 표기한 부분은 Challenge Lab에서는 Terminal을 통해 실행하도록 지시하고 있고, 나머지 부분은 복사해서 아까 만든 image-analysis.ipynb 파일에 붙히면 된다.

2. 환경 설정
image-analysis.ipynb를 실행하기 위해서는 <pic 10>의 1번 부분을 터미널에서 실행해야 되는데, <Pic 11>과 같이 Jupiter Lab에서 File > New > Terminal을 통해 진입하면 Terminal 창이 열리게 된다.

터미널 Tab이 열리게 되면 <Pic 10>의 첫번째 부분을 복사한 후에 Enter를 누르면, <Pic 12>와 같이 터미널에서 실행하면 된다. 실행할 때 중간에 1번처럼 계속 진행할 지 여부를 묻는데, 계정에 대한 권한을 확인하는 절차로 2번으로 표시된 Link를 열어서 인증을 하면, 3번에 입력할 인증코드를 알려준다. 이 코드를 복사해서 3번에 입력하고 Enter를 누르면 터미널에서의 실행 환경이 구성된다.

설치가 무사히 끝나면 <Pic 10>의 2번 부분을 image-analysis.ipynb 파일에 Copy&Paste 하고 Challenge Lab의 Task를 진행하면 된다.
작업 4. 소개 문구 생성 코드 실험
Task 2에서 진행한 내용을 JupiterLab에서 Code로 진행하는 예제이다. Task 3과 동일하게 진행하되 Step 1에서 Vertex AI > Prompt Management로 진입한 후, <Pic 8>에 있는 목록 중 Cymbal 소개 문구 생성기 템플릿을 선택하고 Lab을 진행하면 된다. 전체적으로 작업 3와 동일하게 진행하면 된다.
개인 소감
영문 번역본 해석이 조금 이상하고, 진도 Check가 잘되지 않아서 내가 뭘 잘못 하고 있는지를 확인하려고 애를 먹은 Challenge Lab이었다. 3회차에 겨우 성공한 이후에 목표 진도를 마치고 다시 했을 때도 진도 Check가 잘 이루어 지지 않았다. 해보시고 잘 넘어가는 분들은 내용을 공유해 주시면 감사드리고 싶다.