[GCP] Vertex AI: Gemini 사용해보기
얼마전에 주작영상까지 뿌리면서 욕을 대차게 먹었던 Gemini다.
GCP에서 API를 통해서 사용할 수 있다. 서비스 탭은 Vertex AI다.
비용
https://cloud.google.com/vertex-ai/docs/generative-ai/pricing
현재는 프리뷰라서 1분에 60번까지 무료로 사용할 수 있고, 유료 요금은 2024.01.15부터 적용된다고 한다.
비싼가? 싼가?
금액 단위가 작긴 한데 체감이 잘 되지는 않는다.
들어가면
뭐 이렇게 뜬다.
진입하면 이런저런게 있는데, 여기서 우리가 Gemini를 쓰기 위해 필요한건 "Vertex AI Studio"다.
멀티모달
여기서 멀티모달에 들어가면 프롬프트를 열어서
바로 대화를 시도해볼 수 있다.
한국말고 되고

이미지 분석도 된다.
글씨도 읽는다.
근데 이게 구글 OCR보다 나은게 있나?
정확도는 잘 모르겠지만, 속도는 꽤 빠른 편인 것 같다.
API로 사용하기: 멀티모달
인증 구성이 되어있지 않다면 먼저 해준다.
https://blog.naver.com/sssang97/223295775358
우상단의 버튼을 누르면 바로 "코드 가져오기"로 어떻게 사용해야할지 대략은 알려준다.
근데 좀 부실한게 있어서 그대로만 하면 잘 안되더라
나는 든든한 국밥인 파이썬으로 돌려보겠다.
먼저 아래 디펜던시를 설치해준다.
pip install --upgrade google-cloud-aiplatform

그리고 아래와 같이 코드를 작성해준다.
import os
import vertexai
from vertexai.preview.generative_models import GenerativeModel, Part
def generate(message: str):
model = GenerativeModel("gemini-pro-vision")
responses = model.generate_content(
message,
generation_config={
"max_output_tokens": 2048,
"temperature": 0.4,
"top_p": 1,
"top_k": 32
},
stream=True,
)
for response in responses:
print(response.candidates[0].content.parts[0].text)
os.environ['GOOGLE_APPLICATION_CREDENTIALS'] = '/home/myyrakle/.co...'
vertexai.init(project='banded-nuance-408414')
generate("안녕?")
인증을 GOOGLE_APPLICATION_CREDENTIALS 환경변수로 설정하고, project에는 사용중인 프로젝트 고유번호를 넣어준다.
GCP 콘솔에서 확인할 수 있다.

아무튼 그래놓고 실행해보면

기대한대로 동작할 것이다.

근데 이게... 대화 컨텍스트를 이해하지도 못하고 추가 학습도 불가능하다.
이거는 그냥 단건 질문만 가능하단다. 이대로 쓰는게 끝이다.
다른 사람들 사용후기 들어보니 대화 정확도나 헛소리 문제도 썩 좋지 않다는 것 같고.
PaLM: 채팅
만약 좀더 고차원적인 커스텀이나 대화 저장이 필요하다면 PaLM 기능들을 사용해야 한다.
예를 들어, ChatGPT처럼 대화를 기억하는 채팅이 필요하다면 저 "언어" 탭에서 "대화 시작"으로 프롬프트를 만들어서 써보면 된다.

그럼 기대한대로 동작한다.

텍스트 생성은 뭔지 잘 모르겠다.
본질적으로 뭐가 다른거지?
음성
그 외에도
음성 기능은 텍스트->음성과 음성->텍스트가 둘다 있는데, 지원되는 언어가 몇개 없다.
음성->텍스트는 한국어가 있는데, 텍스트->음성은 영어와 스페인어 정도만 있다. 아직 미완성이다.
비전
이미지를 분석해주는 전문 기능이다.

근데 이거 지원되는 언어가 몇개 없다.
한국어가 없다.