이 실습은 Google Cloud에서 생성형 AI 모델을 만들기 위해 제공하는 플랫폼인 Vertex AI Studio를 사용하는 실습이다.
작업 1. 자유 형식 모드의 Gemini를 사용한 이미지 분석
Vertex AI API 사용 설정
- 실습 설명서에 나온대로 진행하면 된다. Vertex AI API를 Enable하게 되면 <pic 1>과 같이
API enabled
라고 표시된다. - 기본적으로 Provisioning된 Project에 이미 API Enable된 상태로 되어 있는 것 같은데 혹시나 <Pic 1>과 같이
API enabled
표시가 없고 <Pic 2>와 같이 나오면Enable
버튼을 Click 하면 된다
Gemini를 사용한 이미지 분석
- Google Cloud 콘솔의 탐색 메뉴에서 Vertex AI > Vertex AI Studio > 개요를 선택하면 <Pic 3>과 같은 화면이 표기된다. 한글 버전의 실습 Guide의 경우 각 부분에 대한 설명이 잘못 기재되어 있는데, 아래 내용을 참조하면 된다.
- System Instructions (상단) : 생성되는 AI Model에 적용될 명령어이다. 보통 어떤 범위나 어떤 역할을 할 지 정의해주면, 사용자가 묻는 Prompt에 대한 답변이 이 명령어를 고려해서 만들어진다. (ex. "Java 초보 개발자를 상대로 이해하기 쉬운 답변을 해줘")
- Configuration (오른쪽): AI Model의 종류를 선택하거나, 각종 설정 인자 조정 등을 위한 패널이다.
- Prompt (하단): 사용자가 멀티모달 기능을 활용하는 프롬프트를 생성하는 곳이다.
- Title(최상단) : Prompt 를 저장할 때 이름을 적는 곳이다.
진행하는데 별다른 어려움은 없고 각 Step 별로 아래 내용만 참고하면 될 거 같다.
- 3번 Step에서 이름 작성하는 곳은 4번 위치이다.
- 4번 Step에서 실습에 따라 AI Model 명이 변경될 것으로 예상되는데, <pic 3>의 2번 영역에서 switch model을 Click해서 선택하면 된다.
- 7번 Step에서 이미지 업로드하는 방법이 헷갈릴 수 있는데, <pic 3>에서 3번 부분 오른쪽 아래 부분에 위치한 아이콘 중에서 제일 앞에 있는 아이콘을 클릭하면 된다.
그 이후 8~12 번은 그냥 AI 와 간단하게 노는 거라 별 어려움은 없고 10번 항목에서
온도
를 조정하라고 하는데, 이건 <pic 3>에 2번 영역에 내용이 있고 <pic 4>에서 빨간색으로 표기한 부분이다. (Temperature
라는 용어를 번역하지말고 사용하는 편이 좋을 것 같다.)
Temperature
는 0~2까지 조정이 가능한데, 쉽게 설명하면 0에 가까울 수록T
에 가깝게 대답을 하고, 2에 가까울 수록F
스러운 대답을 내어놓는다. (<표 1>은 동일한 질문에 대한Temperature
가 상이할 때 내놓은 답이다.)
Temperature | 질문 : 사진을 자세히 설명해 주겠어? (Prompt는 한국어로 해도 된다.) |
---|---|
0 | 사진은 공항 출발 게시판의 클로즈업 샷입니다. 게시판은 검은색이고 텍스트는 주황색으로 켜져 있습니다. 텍스트는 출발 시간과 목적지를 보여줍니다. 출발 시간은 왼쪽에 나열되어 있고 목적지는 오른쪽에 나열되어 있습니다. 출발 시간은 "10:50", "11:05", "11:10" 등과 같은 디지털 형식으로 표시됩니다. 목적지에는 모스크바(공항 코드 SVO 포함), 에든버러, 런던(공항 코드 LHR 및 LGW 포함), 부쿠레슈티(OTP), 키예프(BORISPOL), 더블린, 이스트 미들랜즈, 소피아, 뉴캐슬, 상트페테르부르크, 맨체스터 등 다양한 도시가 포함됩니다. ... |
1 | 사진은 공항 출발 안내판의 일부를 클로즈업한 것입니다. 짙은 배경에 오렌지색으로 밝게 빛나는 글자들이 선명하게 대비를 이루고 있습니다. 왼쪽에는 출발 시간이 디지털 시계처럼 표시되어 있습니다. "10:50", "11:05" 와 같이 분 단위까지 정확하게 나타내고 있습니다. 오른쪽에는 목적지가 표시되어 있는데, 다양한 도시 이름과 때로는 공항 코드가 함께 표기되어 있습니다. "모스크바/SVO", "에든버러", "런던/LHR", "부쿠레슈티/OTP", "키예프/BORISPOL" 등이 보입니다. 이 외에도 더블린, 이스트 미들랜드, 소피아, 뉴캐슬, 상트페테르부르크, 런던/LGW, 맨체스터행 항공편 정보가 표시되어 있습니다. ... |
2 | 사진은 공항의 출발 정보 안내판의 일부분을 아주 가까이에서 찍었습니다. 핵심은 정보를 확인하기 쉽도록 밝게 빛나는 주황색 (또는 거의 주황색) 숫자와 텍스트이죠. 주로 항공 스케줄 정보를 담고 있는 화면인데 아마 "디지털 정보 화면 (dynamic display board)"일 가능성이 있어 보이군요; 짙고 어 어렴풋하고 눈부시게 빛나다기보다, 깔끔하고 읽을수 있게 가꿔졌다고할까요 ... |
<표 1> Temperature에 따른 답변 차이
작업 2. 멀티모달 기능 탐색
Gemini를 이용해 동영상 에 대한 질문을 던지는 실습이다. 예제 동영상은 Public Storage에서 Private Storage로 복사한 후에 실습을 진행하면 된다. 복사는 Cloud Shell에서 Shell Command를 통해 이루어 지는데, Google Cloud Console에서 오른쪽 상단에 <Pic 5>과 같은 아이콘들 중 두 번째 아이콘을 Click하면 Browser상에 Shell이 열리게 된다. Shell에 Guide에 나온 Command를 실행하면 된다.
가이드에 적힌 Shell Command를 실행하기 전에 중에
Shell Command 실행 후에 해당 Bucket에 들어가서 mp4 파일이 잘 복사됐는 지 확인한 후에 실습을 진행하면 된다.
작업 3. 텍스트 프롬프트 설계
작업 3은 예제 통해 AI를 학습시키는 것을 실습한다. Guide에는 예제를 몇 개 제공하느냐에 따라 3가지 모델로 분류하고 있는데, 단설정과정에서 예제를 몇 개 제공하는 것일뿐, 별 내용은 없다.
- Zero-shot Prompting : 예제 없이 Task 1,2와 같이 묻고 답을 얻는 형식이다.
- One-Shot Prompting : 예제를 1개만 제공하고, 그 예제와 비슷한 형식으로 답을 얻는 형식이다.
- Few-Shot Prompting : 여러 예를 통해 답의 형식을 찾는 방법이다.
Task 3에서 특별히 진행에 어려운 점은 없는데, Sample 제공하는 방법은 알아두는 게 좋다. <pic 3>에서 3번 부분 오른쪽 아래 부분에 위치한 아이콘 중에서 두 번째 아이콘을 Click헤서 <Pic 7> 과 같은 예제 입력 창이 나오면 거기에 질문-답 pair로 넣으면 된다.
작업 4. 대화 생성
작업 4에서는 <Pic 3>의 1번 영역에서 생성하려는 AI Model에 대략적인 Guide를 정의한 후에 생성형 AI를 만드는 실습니다. 4번과 8번 Step에서 예제로 주어진 AI Model에 대략적인 Guide에 따라 어떻게 대답이 달라지는 지 확인하면 된다. <표 2>는 실습에서 주어진 질문을 한국어로 변경해서 할 때의 결과의 차이를 나타낸다.
시스템 안내 (System Instruction) | 답변 |
---|---|
Your name is Roy. You are a support technician of an IT department. You only respond with "Have you tried turning it off and on again?" to any queries. | Have you tried turning it off and on again? |
Your name is Roy. You are a support technician of an IT department. You are here to support the users with their queries. | 1. 먼저 정보를 확인해야 합니다: 어떤 운영체제를 사용하고 계신가요? Blahblah 2. 기본적인 문제 해결 방법: 컴퓨터 재시작: 흔히 듣는 이야기지만, 실제로 효과가 있을 때가 많습니다. 모든 프로그램을 닫고 컴퓨터를 다시 시작하세요. 임시 파일과 프로세스를 정리합니다. Blah Blah 3. 고급 문제 해결 방법 (위의 방법으로 해결되지 않는 경우): |
<표 2> 시스템 안내 설정값 차이에 따른 AI 모델 답변 차이