빠른 시작: Vertex AI Gemini API를 사용하여 텍스트 생성
이 빠른 시작에서는 다음과 같은 멀티모달 요청을 Vertex AI Gemini API에 전송하고 응답을 확인합니다.
- 텍스트 프롬프트
- 프롬프트 및 이미지
- 프롬프트 및 동영상 파일 (오디오 트랙 포함)
로컬 환경에서 프로그래밍 언어 SDK 또는 REST API를 사용하여 이 빠른 시작을 완료할 수 있습니다.
기본 요건
이 빠른 시작을 완료하려면 다음을 실행해야 합니다.
- Google Cloud 프로젝트를 설정하고 Vertex AI API를 사용 설정합니다.
- 로컬 머신에서 다음 단계를 따르세요.
- Google Cloud CLI로 설치, 초기화, 인증
- 사용 언어의 SDK 설치
Google Cloud 프로젝트 설정
Google Cloud 프로젝트를 설정하고 Vertex AI API를 사용 설정합니다.
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Vertex AI API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Vertex AI API.
Google Cloud CLI 설정
로컬 머신에서 Google Cloud CLI를 설정하고 인증합니다. Google AI Studio의 Gemini API에 익숙한 경우 Vertex AI Gemini API는 API 키 대신 ID 및 액세스 관리를 사용하여 액세스를 관리한다는 점에 유의하세요.
-
Google Cloud CLI를 설치하고 초기화합니다.
-
이전에 gcloud CLI를 설치한 경우 이 명령어를 실행하여
gcloud
구성요소가 업데이트되었는지 확인합니다.gcloud components update
-
gcloud CLI로 인증하려면 이 명령어를 실행하여 로컬 애플리케이션 기본 사용자 인증 정보 (ADC) 파일을 생성합니다. 이 명령어로 실행되는 웹 흐름은 사용자 인증 정보를 제공하는 데 사용됩니다.
gcloud auth application-default login
자세한 내용은 애플리케이션 기본 사용자 인증 정보 설정을 참조하세요.
프로그래밍 언어의 SDK 설정
로컬 머신에서 다음 탭 중 하나를 클릭하여 프로그래밍 언어의 SDK를 설치합니다.
Python
이 명령어를 실행하여 Vertex AI SDK for Python을 설치하고 업데이트합니다.
pip3 install --upgrade "google-cloud-aiplatform>=1.64"
Node.js
이 명령어를 실행하여 Node.js용 aiplatform
SDK를 설치하거나 업데이트합니다.
npm install @google-cloud/vertexai
자바
google-cloud-vertexai
를 종속 항목으로 추가하려면 환경에 적절한 코드를 추가합니다.
BOM이 있는 Maven
pom.xml
에 다음 HTML을 추가합니다.
<dependencyManagement> <dependencies> <dependency> <artifactId>libraries-bom</artifactId> <groupId>com.google.cloud</groupId> <scope>import</scope> <type>pom</type> <version>26.34.0</version> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-vertexai</artifactId> </dependency> </dependencies>
BOM이 없는 Maven
pom.xml
에 다음을 추가합니다.
<dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-vertexai</artifactId> <version>0.4.0</version> </dependency>
BOM이 없는 Gradle
build.gradle
에 다음을 추가합니다.
implementation 'com.google.cloud:google-cloud-vertexai:0.4.0'
Go
사용 가능한 Vertex AI API Go 패키지를 검토하여 프로젝트 요구에 가장 적합한 패키지를 확인합니다.
(권장)
cloud.google.com/go/vertexai
vertexai
는 일반적인 기능에 대한 액세스를 제공하는 인간이 작성한 패키지입니다.이 패키지는 Vertex AI API를 사용하여 빌드하는 대부분의 개발자에게 시작점으로 권장됩니다. 이 패키지에 아직 포함되지 않은 기능을 이용하려면 자동 생성된
aiplatform
패키지를 사용하세요.이 패키지를 설치하려면 다음 명령어를 실행합니다.
go get cloud.google.com/go/vertexai
cloud.google.com/go/aiplatform
aiplatform
은 자동 생성된 패키지입니다.이 패키지는 인간이 작성한
vertexai
패키지에서 아직 제공하지 않는 Vertex AI API 기능에 액세스해야 하는 프로젝트를 대상으로 합니다.이 패키지를 설치하려면 다음 명령어를 실행합니다.
go get cloud.google.com/go/aiplatform
C#
NuGet에서 Google.Cloud.AIPlatform.V1
패키지를 설치합니다. 프로젝트에 패키지를 추가하는 데 선호하는 방법을 사용합니다. 예를 들어 Visual Studio에서 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 Manage NuGet Packages...(NuGet 패키지 관리)를 선택합니다.
REST
다음을 입력하여 환경 변수를 구성합니다.
PROJECT_ID
를 Google Cloud 프로젝트의 ID로 바꿉니다.MODEL_ID="gemini-1.5-flash-002" PROJECT_ID="PROJECT_ID"
Google Cloud CLI를 사용하여 이 명령어를 실행하여 엔드포인트를 프로비저닝합니다.
gcloud beta services identity create --service=aiplatform.googleapis.com --project=${PROJECT_ID}
Vertex AI Gemini API에 프롬프트 전송
다음 코드를 사용하여 Vertex AI Gemini API에 프롬프트를 전송합니다. 이 샘플은 전문 꽃집의 가능한 이름 목록을 반환합니다.
명령줄에서, IDE를 사용하여 또는 애플리케이션에 코드를 포함하여 코드를 실행할 수 있습니다.
Python
프롬프트 요청을 전송하려면 Python 파일(.py
)을 만들고 다음 코드를 파일에 복사합니다. PROJECT_ID
값을 Google Cloud 프로젝트의 ID로 설정합니다. 값을 업데이트한 후 코드를 실행합니다.
Node.js
프롬프트 요청을 전송하려면 Node.js 파일(.js
)을 만들고 다음 코드를 파일에 복사합니다. PROJECT_ID
를 Google Cloud 프로젝트의 ID로 바꿉니다. 값을 업데이트한 후 코드를 실행합니다.
Java
프롬프트 요청을 전송하려면 Java 파일(.java
)을 만들고 다음 코드를 파일에 복사합니다. your-google-cloud-project-id
를 Google Cloud 프로젝트 ID로 설정합니다. 값을 업데이트한 후 코드를 실행합니다.
Go
프롬프트 요청을 전송하려면 Go 파일(.go
)을 만들고 다음 코드를 파일에 복사합니다. projectID
를 Google Cloud 프로젝트의 ID로 바꿉니다. 값을 업데이트한 후 코드를 실행합니다.
C#
프롬프트 요청을 전송하려면 C# 파일(.cs
)을 만들고 다음 코드를 파일에 복사합니다. your-project-id
를 Google Cloud 프로젝트 ID로 설정합니다. 값을 업데이트한 후 코드를 실행합니다.
REST
이 프롬프트 요청을 전송하려면 명령줄에서 curl 명령어를 실행하거나 애플리케이션에 REST 호출을 포함하세요.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://us-central1-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/us-central1/publishers/google/models/${MODEL_ID}:generateContent -d \ $'{ "contents": { "role": "user", "parts": [ { "text": "What\'s a good name for a flower shop that specializes in selling bouquets of dried flowers?" } ] } }'
Vertex AI Gemini API에 프롬프트와 이미지 전송
다음 코드를 사용하여 텍스트와 이미지가 포함된 프롬프트를 Vertex AI Gemini API로 전송합니다. 이 샘플은 제공된 이미지(Java 샘플용 이미지)의 설명을 반환합니다.
Python
프롬프트 요청을 전송하려면 Python 파일(.py
)을 만들고 다음 코드를 파일에 복사합니다. PROJECT_ID
값을 Google Cloud 프로젝트의 ID로 설정합니다. 값을 업데이트한 후 코드를 실행합니다.
Node.js
프롬프트 요청을 전송하려면 Node.js 파일(.js
)을 만들고 다음 코드를 파일에 복사합니다. PROJECT_ID
를 Google Cloud 프로젝트의 ID로 바꿉니다. 값을 업데이트한 후 코드를 실행합니다.
Java
프롬프트 요청을 전송하려면 Java 파일(.java
)을 만들고 다음 코드를 파일에 복사합니다. your-google-cloud-project-id
를 Google Cloud 프로젝트 ID로 설정합니다. 값을 업데이트한 후 코드를 실행합니다.
Go
프롬프트 요청을 전송하려면 Go 파일(.go
)을 만들고 다음 코드를 파일에 복사합니다. projectID
를 Google Cloud 프로젝트의 ID로 바꿉니다. 값을 업데이트한 후 코드를 실행합니다.
C#
프롬프트 요청을 전송하려면 C# 파일(.cs
)을 만들고 다음 코드를 파일에 복사합니다. your-project-id
를 Google Cloud 프로젝트 ID로 설정합니다. 값을 업데이트한 후 코드를 실행합니다.
REST
IDE에서 이 프롬프트 요청을 전송하거나 적절한 경우 REST 호출을 애플리케이션에 삽입할 수 있습니다.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://us-central1-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/us-central1/publishers/google/models/${MODEL_ID}:generateContent -d \ $'{ "contents": { "role": "user", "parts": [ { "fileData": { "mimeType": "image/jpeg", "fileUri": "gs://generativeai-downloads/images/scones.jpg" } }, { "text": "Describe this picture." } ] } }'
모델이 응답을 반환합니다. 응답은 여러 섹션으로 생성되고, 안전을 위해 각 섹션이 개별적으로 평가됩니다.
Vertex AI Gemini API에 프롬프트와 동영상 보내기
다음 코드를 사용하여 텍스트, 오디오, 동영상이 포함된 프롬프트를 Vertex AI Gemini API로 전송합니다. 이 샘플은 오디오 트랙의 중요한 항목을 포함하여 제공된 동영상에 관한 설명을 반환합니다.
명령줄을 사용하거나 IDE를 사용하거나 애플리케이션에 REST 호출을 포함하여 이 프롬프트 요청을 전송할 수 있습니다.
Python
프롬프트 요청을 전송하려면 Python 파일(.py
)을 만들고 다음 코드를 파일에 복사합니다. PROJECT_ID
값을 Google Cloud 프로젝트의 ID로 설정합니다. 값을 업데이트한 후 코드를 실행합니다.
Node.js
프롬프트 요청을 전송하려면 Node.js 파일(.js
)을 만들고 다음 코드를 파일에 복사합니다. PROJECT_ID
를 Google Cloud 프로젝트의 ID로 바꿉니다. 값을 업데이트한 후 코드를 실행합니다.
Java
프롬프트 요청을 전송하려면 Java 파일(.java
)을 만들고 다음 코드를 파일에 복사합니다. your-google-cloud-project-id
를 Google Cloud 프로젝트 ID로 설정합니다. 값을 업데이트한 후 코드를 실행합니다.
Go
프롬프트 요청을 전송하려면 Go 파일(.go
)을 만들고 다음 코드를 파일에 복사합니다. projectID
를 Google Cloud 프로젝트의 ID로 바꿉니다. 값을 업데이트한 후 코드를 실행합니다.
C#
프롬프트 요청을 전송하려면 C# 파일(.cs
)을 만들고 다음 코드를 파일에 복사합니다. your-project-id
를 Google Cloud 프로젝트 ID로 설정합니다. 값을 업데이트한 후 코드를 실행합니다.
REST
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://us-central1-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/us-central1/publishers/google/models/${MODEL_ID}:generateContent -d \ $'{ "contents": { "role": "user", "parts": [ { "fileData": { "mimeType": "video/mp4", "fileUri": "gs://cloud-samples-data/generative-ai/video/pixel8.mp4" } }, { "text": "Provide a description of the video. The description should also contain anything important which people say in the video." } ] } }'
모델이 응답을 반환합니다. 응답은 여러 섹션으로 생성되고, 안전을 위해 각 섹션이 개별적으로 평가됩니다.
다음 단계
- Vertex AI의 Gemini API에 대해 자세히 알아보세요.
- Python, Node.js, Java, Go 또는 C#의 Vertex AI Gemini API SDK 참조를 살펴보세요.
- Vertex AI의 Gemini용 Model API를 참고하세요.
- OpenAI 라이브러리를 사용하여 Vertex AI 모델 호출에 대해 알아보세요.