Vertex AI in Firebase SDK를 사용하여 앱에서 Gemini API를 호출할 때 Gemini 모델에 텍스트 전용 입력을 기반으로 텍스트를 생성하도록 프롬프트할 수 있습니다.
Gemini API를 사용하는 기타 옵션
원하는 경우 Gemini API
의 대체 'Google AI' 버전을 실험해 보세요. Google AI Studio 및 Google AI 클라이언트 SDK를 사용하여 무료 액세스 권한을 얻을 수 있습니다(한도 내에서, 사용 가능한 경우). 이러한 SDK는 모바일 및 웹 앱에서 프로토타입 제작 전용으로 사용해야 합니다.Gemini API의 작동 방식을 숙지한 후 Vertex AI in Firebase SDK로 이전하세요(이 문서). Firebase App Check를 사용하여 API 악용으로부터 보호하고 요청의 대용량 미디어 파일을 지원하는 등 모바일 및 웹 앱에 중요한 여러 추가 기능이 있습니다.
Vertex AI Gemini API 서버 측을 호출할 수도 있습니다(예: Python, Node.js 또는 Go).
Gemini API에 서버 측 Vertex AI SDK, Firebase Genkit 또는 Firebase Extensions를 사용합니다.
시작하기 전에
아직 완료하지 않았다면 Firebase 프로젝트를 설정하고, 앱을 Firebase에 연결하고, SDK를 추가하고, Vertex AI 서비스를 초기화하고, GenerativeModel
인스턴스를 만드는 방법을 설명하는 시작 가이드를 완료하세요.
텍스트 전용 입력에서 텍스트 생성
텍스트만 포함된 입력으로 Gemini API를 호출할 수 있습니다. 이러한 호출의 경우 텍스트 전용 프롬프트를 지원하는 모델(예: Gemini 2.0 Flash)을 사용해야 합니다.
응답을 스트리밍할지 (generateContentStream
) 아니면 전체 결과가 생성될 때까지 응답을 기다릴지 (generateContent
) 선택합니다.
모델 생성의 전체 결과를 기다리지 않고 대신 스트리밍을 사용하여 부분 결과를 처리하면 더 빠른 상호작용을 얻을 수 있습니다.
이 예에서는 generateContentStream
를 사용하여 텍스트만 포함된 프롬프트 요청에서 생성된 텍스트를 스트리밍하는 방법을 보여줍니다.
import FirebaseVertexAI
// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()
// Create a `GenerativeModel` instance with a model that supports your use case
let model = vertex.generativeModel(modelName: "gemini-2.0-flash")
// Provide a prompt that contains text
let prompt = "Write a story about a magic backpack."
// To stream generated text output, call generateContentStream with the text input
let contentStream = try model.generateContentStream(prompt)
for try await chunk in contentStream {
if let text = chunk.text {
print(text)
}
}
또는 스트리밍 대신 전체 결과를 기다릴 수 있습니다. 결과는 모델이 전체 생성 프로세스를 완료한 후에만 반환됩니다.
이 예에서는 generateContent
를 사용하여 텍스트만 포함된 프롬프트 요청에서 텍스트를 생성하는 방법을 보여줍니다.
import FirebaseVertexAI
// Initialize the Vertex AI service
let vertex = VertexAI.vertexAI()
// Create a `GenerativeModel` instance with a model that supports your use case
let model = vertex.generativeModel(modelName: "gemini-2.0-flash")
// Provide a prompt that contains text
let prompt = "Write a story about a magic backpack."
// To generate text output, call generateContent with the text input
let response = try await model.generateContent(prompt)
print(response.text ?? "No text in response.")
사용 사례 및 앱에 적합한 모델과 원하는 경우 위치를 선택하는 방법을 알아보세요.
또 뭘 할 수 있니?
- 모델에 긴 프롬프트를 보내기 전에 토큰 수를 집계하는 방법을 알아보세요.
- 승인되지 않은 클라이언트의 악용으로부터 Gemini API를 보호하기 위해 Firebase App Check를 설정하는 등 프로덕션 준비를 시작합니다. 또한 프로덕션 체크리스트를 검토하세요.
다른 기능 사용해 보기
- 멀티턴 대화 (채팅)를 빌드합니다.
- 멀티모달 프롬프트(텍스트, 이미지, PDF, 동영상, 오디오 포함)에서 텍스트를 생성합니다.
- 텍스트 및 멀티모달 프롬프트에서 구조화된 출력 (예: JSON)을 생성합니다.
- 텍스트 프롬프트에서 이미지를 생성합니다.
- 함수 호출을 사용하여 생성형 모델을 외부 시스템 및 정보에 연결합니다.
콘텐츠 생성을 제어하는 방법 알아보기
- 권장사항, 전략, 프롬프트 예시를 포함하여 프롬프트 설계 이해하기
- 온도 및 최대 출력 토큰 (Gemini의 경우) 또는 가로세로 비율 및 사용자 생성 (Imagen의 경우)과 같은 모델 매개변수를 구성합니다.
- 안전 설정을 사용하여 유해하다고 간주될 수 있는 대답이 표시될 가능성을 조정합니다.
지원되는 모델 자세히 알아보기
다양한 사용 사례에 사용할 수 있는 모델과 할당량, 가격에 대해 알아보세요.Vertex AI in Firebase 사용 경험에 관한 의견 보내기