Apple의 Foundation Models 프레임워크를 통해 Gemini API에 액세스할 때의 구성 옵션


이 페이지의 예시에서는 시작하기: Apple의 Foundation Models 프레임워크를 통해 Gemini API에 액세스하기를 완료했다고 가정합니다.


모델에 대한 각 요청에서 모델의 대답 생성 방식을 제어하는 구성 설정을 함께 보낼 수 있습니다. 각 Gemini 모델은 다양한 구성 옵션을 제공합니다.

설정에 따라 구성은 geminiLanguageModel 또는 LanguageModelSession의 수명 동안 유지됩니다. 다른 구성을 사용하려면 해당 구성으로 새 모델이나 세션을 만드세요.

이 페이지에서는 다음 구성 옵션을 설명합니다.

시스템 요청 사항 지정

시스템 안내는 모델이 최종 사용자의 추가 안내에 노출되기 전에 추가하는 '프리앰블'과 같습니다. 이를 통해 특정 요구사항 및 사용 사례에 따라 모델의 동작을 조정할 수 있습니다.

LanguageModelSession에서 시스템 요청 사항을 지정합니다.

// ...

// Make sure you initialize your chosen Gemini API backend service
let model = FirebaseAI.firebaseAI().geminiLanguageModel(name: "GEMINI_MODEL_NAME")

// Specify the system instructions as part of creating the session
let session = LanguageModelSession(
    model: model,
    instructions: "You are a cat. Your name is Neko."
)

// ...



사고 구성 (일명 '추론')

Gemini 모델이 대답을 생성하기 위해 수행할 수 있는 사고 (추론이라고도 함)의 양을 구성할 수 있습니다. 사고에 관한 자세한 내용, 권장사항, 사용 사례는 일반 사고 가이드를 참고하세요.

Apple은 사고 수준 대신 추론 수준을 사용합니다. LanguageModelSession를 통해 각 요청에서 ContextOptions의 reasoningLevel를 설정합니다.

// ...

// Make sure you initialize your chosen Gemini API backend service.
let model = FirebaseAI.firebaseAI().geminiLanguageModel(name: "GEMINI_MODEL_NAME")

let session = LanguageModelSession(model: model)

// Specify the reasoning level when generating a response.
// Possible reasoningLevels: .light, .moderate, .deep, .custom("minimal").
let response = try await session.respond(
  to: "Write a story about a magic backpack.",
  contextOptions: ContextOptions(reasoningLevel: .REASONING_LEVEL)
)

// ...

지원되는 사고 수준 값

다음에 유의하세요.

  • Gemini 3.x 모델은 항상 사고를 사용합니다. 이러한 모델의 사고를 사용 중지하거나 사용 중단할 수 없습니다.
  • Gemini 3.x 모델은 항상 동적 사고를 사용합니다. 모델은 구성된 양까지 언제 얼마나 사고할지 결정합니다.

다음 표에는 각 Gemini 모델에 설정할 수 있는 사고 수준 (reasoningLevel)이 나와 있습니다. Gemini 값(MINIMAL, LOW, MEDIUM, HIGH)을 사용하면 해당 값의 Apple 버전으로 자동 매핑됩니다.

Apple: .custom("minimal")
Gemini: MINIMAL
Apple: .light
Gemini: LOW
Apple: .moderate
Gemini: MEDIUM
Apple: .deep
Gemini: HIGH

모델이 가능한 한 적은 토큰을 사용합니다. 사고가 거의 없습니다.

복잡성이 낮은 작업

모델에서 사용하는 토큰 수가 적어 지연 시간과 비용이 최소화됩니다.

간단한 작업과 높은 처리량 작업

모델이 균형 잡힌 접근 방식을 사용함

중간 정도의 복잡성 작업

모델이 최대 수준까지 토큰을 사용합니다.

심층적인 추론이 필요한 복잡한 프롬프트

Gemini 3.x Pro
gemini-3.1-pro-preview
(기본값)
Gemini 3.x Flash
gemini-3.8-flash
gemini-3.7-flash
gemini-3.6-flash
gemini-3.5-flash

gemini-3.8-flash 또는 gemini-3.7-flash에서 지원되지 않음 1
(기본값)
Gemini 3.x Flash‑Lite
gemini-3.5-flash-lite
gemini-3.1-flash-lite
(기본값)
Gemini 3.x Pro Image
gemini-3-pro-image
("Nano Banana Pro")
(기본값)
Gemini 3.x Flash Image
gemini-3.1-flash-image
("Nano Banana 2")
(기본값)
Gemini 3.x Flash‑Lite Image
gemini-3.1-flash-lite-image
("Nano Banana 2 Lite")
(기본값)

1 gemini-3.8-flash 및 gemini-3.7-flash 은 MINIMAL 사고 수준을 지원하지 않습니다. 사고 수준을 MINIMAL로 설정하면 400 오류가 발생하여 요청이 실패합니다.



이미지 출력 구성



일반 구성


Apple의 파운데이션 모델 프레임워크를 통해 Gemini API에 액세스하는 방법에 관한 의견 보내기