Gemini Nano 직접 모델 액세스로 맞춤 요청 보내기

ML Kit의 직접 모델 액세스 (com.google.mlkit:genai-prompt)를 사용하면 GenerativeModel 클래스를 통해 기기 내에서 맞춤 자연어 요청을 Gemini Nano 기반 모델로 전송할 수 있습니다. 직접 모델 액세스는 텍스트 또는 멀티모달 (이미지 및 텍스트) 입력을 허용하고, 클라이언트 관리 멀티턴 대화 (List<Content>, USER 및 MODEL 역할, sessionId)를 지원하며, 텍스트 출력 또는 유형이 지정된 구조화된 출력을 내보냅니다.

다음을 포함한 다양한 사용 사례에 직접 모델 액세스를 사용할 수 있습니다.

사용 사례

예

이미지 이해

'반려동물', '음식', '여행'과 같은 분류를 위해 사진을 분석합니다.

짧은 번역

배송 기사와 고객 간의 짧은 메시지를 번역합니다.

가이드 요약

사용자의 특정 관심사를 기반으로 음식점 리뷰를 요약합니다.

항목 추출

이메일 대화목록에서 예정된 일정에 관한 중요한 세부정보를 추출합니다.

콘텐츠 생성 아이디어

일기 항목에 대한 프롬프트를 추천합니다.

지능형 문서 스캔

영수증 이미지에서 항목을 추출하고 분류합니다.

텍스트 분류

고객 리뷰를 긍정적, 중립적, 부정적 카테고리로 분류합니다.

직접 모델 액세스와 작업별 API 비교

ML Kit는 커스텀 프롬프트를 위한 Gemini Nano 파운데이션 모델에 직접 액세스할 수 있을 뿐만 아니라 전용 음성, 이미지, 텍스트 작업을 위한 사전 구성된 API(음성 인식, 이미지 설명, 요약, 교정, 재작성 등)를 제공합니다. 텍스트 및 이미지 Tasks API는 공유 기본 모델 위에 태스크별 특성 유형과 미세 조정된 LoRA 어댑터를 사용합니다. 다음 표에는 각 접근 방식의 이점이 요약되어 있습니다.

구매 고려도

직접 모델 액세스 (GenerativeModel)

텍스트 및 이미지 작업 API

통합 노력

높음.

프롬프트 엔지니어링 및 품질 보증으로 인해 구현에 더 많은 노력이 필요합니다.

해방되어 보세요

이러한 API는 기본 모델 위에 작업별 특성 유형과 미세 조정된 LoRA 어댑터를 사용하므로 노력이 덜 필요합니다. LLM과 직접 작업할 필요가 없습니다.

유연성

프롬프트를 맞춤 엔지니어링하고, 멀티턴 컨텍스트를 관리하고, 유형이 지정된 구조화된 스키마를 적용하거나, GenerativeModel 위에 더 높은 수준의 에이전트형 워크플로 (AgentRunner)를 빌드할 수 있으므로 유연성이 향상됩니다.

유연성이 떨어집니다. 각 작업별 API에는 고정된 LoRA 파인 튜닝과 다음과 같은 특성을 가진 기본 제공 프롬프트가 있습니다.

  • 이미지 설명이 일반적이고 짧습니다.
  • 요약은 글머리 기호 1~3개로만 구성해야 합니다.
  • 다시 쓰기는 사전 정의된 스타일만 지원합니다.

일반적으로 더 많은 맞춤설정과 유연성이 필요한 경우 직접 모델 액세스를 사용하고, 커스텀 로직이 필요하지 않은 표준 작업에는 작업별 API를 사용합니다.

샘플 코드