긴 컨텍스트

Gemini 2.0 Flash 및 Gemini 1.5 Flash에는 1백만 개의 토큰 컨텍스트 윈도우가 제공되며 Gemini 1.5 Pro에는 2백만 개의 토큰 컨텍스트 윈도우가 제공됩니다. 지금까지 대규모 언어 모델 (LLM)은 한 번에 모델에 전달할 수 있는 텍스트 (또는 토큰) 양에 의해 크게 제한되었습니다. 거의 완벽한 검색(>99%)을 지원하는 Gemini 1.5 긴 컨텍스트 윈도우는 많은 새로운 사용 사례와 개발자 패러다임을 제공합니다.

텍스트 생성 또는 다중 모달 입력과 같은 사례에 이미 사용 중인 코드는 긴 컨텍스트에서 즉시 작동합니다.

이 가이드에서는 컨텍스트 윈도우의 기본사항, 개발자가 긴 컨텍스트에 대해 생각하는 방식, 긴 컨텍스트의 다양한 실제 사용 사례, 긴 컨텍스트 사용을 최적화하는 방법에 대해 간단히 살펴봅니다.

컨텍스트 윈도우란 무엇인가요?

Gemini 모델을 사용하는 기본 방법은 정보 (컨텍스트)를 모델에 전달하여 이후에 응답을 생성하는 것입니다. 컨텍스트 윈도우는 단기 메모리에 비유할 수 있습니다. 개인의 단기 메모리에 저장할 수 있는 정보 양은 제한되어 있으며 이는 생성 모델에서도 마찬가지입니다.

모델이 작동하는 방식에 대한 자세한 내용은 생성 모델 가이드를 참조하세요.

긴 컨텍스트 시작하기

지난 몇 년 동안 생성된 대부분의 생성형 모델은 한 번에 8,000개의 토큰만 처리할 수 있었습니다. 최신 모델은 32,000개 또는 128,000개의 토큰을 허용하여 이를 더욱 발전시켰습니다. Gemini 1.5는 1백만 개의 토큰을 수용할 수 있는 최초의 모델이며, 이제 Gemini 1.5 Pro를 사용하면 2백만 개의 토큰을 수용할 수 있습니다.

실제로 100만 토큰은 다음과 같이 표시됩니다.

  • 코드 50,000줄(줄당 표준 80자)
  • 지난 5년 동안 보낸 모든 문자 메시지
  • 평균 길이의 영어 소설 8권
  • 평균 길이 200분이 넘는 팟캐스트 에피소드의 스크립트

모델이 점점 더 많은 컨텍스트를 받아들일 수 있음에도 불구하고, 대규모 언어 모델을 사용하는 것에 대한 많은 기존 지식은 이러한 모델에 고유한 한계가 있다고 가정하는데 이는 2024년부터 더 이상 사실이 아닙니다.

작은 컨텍스트 윈도우의 제한을 해결하는 몇 가지 일반적인 전략은 다음과 같습니다.

  • 새 텍스트가 들어오면 컨텍스트 윈도우에서 이전 메시지/텍스트를 임의로 삭제
  • 컨텍스트 윈도우가 가득 차면 이전 콘텐츠를 요약하고 요약으로 대체
  • 시맨틱 검색과 함께 RAG를 사용하여 컨텍스트 윈도우에서 벡터 데이터베이스로 데이터 이동
  • 확정적 또는 생성적 필터를 사용하여 프롬프트에서 특정 텍스트/문자를 삭제하여 토큰을 저장

이 중 많은 부분이 아직 특정 케이스와 연관이 있지만 이제 기본적으로 모든 토큰을 컨텍스트 윈도우에 넣는 것으로 시작합니다. Gemini 모델은 긴 컨텍스트 윈도우용으로 특별히 빌드되었기 때문에 컨텍스트 내 학습이 훨씬 더 용이합니다. 예를 들어 교육 자료(500페이지의 참조 문법, 사전, 추가로 400개 정도의 번역 문장)만 제공되면 Gemini 1.5 Pro 및 Gemini 1.5 Flash는 맥락을 고려하여 동일한 자료를 통해 학습한 사람과 비슷한 품질로 영어에서 200명 미만의 사용자가 사용하고 따라서 온라인에 거의 존재하지 않는 파푸아어인 Kalamang으로 번역하는 방법을 학습할 수 있습니다.

이 예시는 긴 컨텍스트와 Gemini 모델의 컨텍스트 학습 기능을 사용하여 수행할 수 있는 가능한 작업을 고려하는 방법을 강조합니다.

긴 컨텍스트 사용 사례

대부분의 생성형 모델의 표준 사용 사례는 여전히 텍스트 입력이지만 Gemini 1.5 모델 제품군은 멀티모달 사용 사례의 새로운 패러다임을 지원합니다. 이러한 모델은 기본적으로 텍스트, 동영상, 오디오, 이미지를 이해할 수 있습니다. 편의를 위해 다중 모달 파일 형식을 사용하는 Gemini API도 함께 제공됩니다.

긴 형식 텍스트

텍스트는 LLM과 관련된 많은 동력을 뒷받침하는 인텔리전스 레이어로 입증되었습니다. 앞에서 언급했듯이 LLM의 실질적인 제한사항 중 상당수는 특정 태스크를 수행하기에 충분히 큰 환경설정 기간이 없기 때문입니다. 이로 인해 모델에 관련 컨텍스트 정보를 동적으로 제공하는 검색 증강 생성(RAG) 및 기타 기술이 빠르게 채택되었습니다. 이제 더 큰 컨텍스트 윈도우 (현재 Gemini 1.5 Pro에서 최대 200만 개)를 통해 새로운 사용 사례를 활용할 수 있는 새로운 기술이 제공되고 있습니다.

텍스트 기반 긴 컨텍스트에 대한 몇 가지 새로운 표준 사용 사례는 다음과 같습니다.

  • 대규모 텍스트 자료 요약
    • 이전의 소규모 컨텍스트 모델을 사용한 요약 옵션은 새 토큰이 모델에 전달될 때 이전 섹션의 상태를 유지하기 위해 슬라이딩 창이나 다른 기법이 필요했습니다.
  • 질문 및 답변
    • 이전에는 맥락이 제한되어 있고 모델의 사실적 회수가 낮기 때문에 RAG를 통해서만 가능했습니다.
  • 에이전트 워크플로
    • 텍스트는 에이전트가 수행한 작업과 필요한 작업의 상태를 유지하는 방법의 기반이 됩니다. 현실에 대한 정보와 에이전트의 목표에 대한 정보가 충분하지 않으면 에이전트의 안정성에 제약이 됩니다.

다중샷 컨텍스트 내 학습은 긴 컨텍스트 모델에서 제공하는 독보적인 기능 중 하나입니다. 연구에 따르면 모델에게 하나 또는 몇 가지의 태스크 예시를 제공하는 일반적인 '싱글샷' 또는 '멀티샷' 예시 패러다임을 수백, 수천, 또는 수십만 개의 예시로 확장하면 새로운 모델 기능으로 이어질 수 있습니다. 이 다중샷 접근 방식은 특정 태스크에 맞게 미세 조정된 모델과 유사하게 작동하는 것으로 나타났습니다. Gemini 모델의 성능이 프로덕션 출시에 아직 충분하지 않은 사용 사례의 경우 다중샷 접근 방식을 시도할 수 있습니다. 나중에 긴 컨텍스트 최적화 섹션에서 살펴볼 수 있듯이 컨텍스트 캐싱을 사용하면 이러한 유형의 높은 입력 토큰 워크로드를 훨씬 더 경제적으로 실행할 수 있으며 경우에 따라 지연 시간을 줄일 수도 있습니다.

긴 형식 동영상

동영상 콘텐츠의 유용성은 오랫동안 매체 자체의 접근성 부족으로 인해 제약을 받아 왔습니다. 콘텐츠를 훑어보기 어려웠고, 스크립트가 동영상의 미묘한 차이를 포착하지 못하는 경우가 많았으며, 대부분의 도구는 이미지, 텍스트, 오디오를 함께 처리하지 못했습니다. Gemini 1.5에서는 긴 컨텍스트 텍스트 기능이 지속적인 성능으로 멀티모달 입력에 관한 질문을 추론하고 답변하는 기능으로 변환됩니다. Gemini 1.5 Flash는 100만 개의 토큰으로 동영상 건초 더미에서 바늘 찾기 문제에서 테스트한 결과 컨텍스트 윈도우에서 동영상의 재현율이 99.8% 이상이며 1.5 Pro는 동영상-MME 벤치마크에서 최고의 성능을 발휘했습니다.

동영상의 긴 컨텍스트에 대한 몇 가지 새로운 표준 사용 사례는 다음과 같습니다.

  • 동영상 질문 및 답변
  • Google의 Project Astra에 표시된 것과 같은 동영상 메모리
  • 동영상 자막
  • 새로운 멀티모달 이해로 기존 메타데이터를 보강하는 동영상 추천 시스템
  • 데이터 및 관련 동영상 메타데이터 코퍼스를 살펴본 후 시청자와 관련이 없는 동영상 부분을 삭제하는 방식으로 동영상 맞춤설정
  • 동영상 콘텐츠 검토
  • 실시간 동영상 처리

동영상 작업을 수행할 때는 동영상이 토큰으로 처리되는 방식을 고려하는 것이 중요합니다. 이는 결제 및 사용량 한도에 영향을 미칩니다. 동영상 파일로 프롬프트를 사용하는 방법은 프롬프트 가이드에서 자세히 알아보세요.

긴 형식 오디오

Gemini 1.5 모델은 오디오를 이해할 수 있는 최초의 네이티브 멀티모달 대규모 언어 모델이었습니다. 지금까지 일반적인 개발자 워크플로는 오디오를 처리하기 위해 음성 텍스트 변환 모델 및 텍스트 간 변환 모델과 같은 여러 도메인별 모델을 결합하는 방식으로 진행되었습니다. 이에 따라 여러 왕복 요청을 수행하는 데 필요한 추가 지연 시간이 발생하고, 다중 모델 설정의 연결 해제된 아키텍처로 인해 성능이 저하되었습니다.

표준 오디오 건초 더미 평가에서 Gemini 1.5 Pro는 테스트의 100% 에서 숨겨진 오디오를 찾을 수 있고 Gemini 1.5 Flash는 테스트의 98.7% 에서 숨겨진 오디오를 찾을 수 있습니다. Gemini 1.5 Flash는 단일 요청에 최대 9.5시간의 오디오를 수용하고 Gemini 1.5 Pro는 2백만 토큰 컨텍스트 창을 사용하여 최대 19시간의 오디오를 수용할 수 있습니다. 또한 15분 길이의 오디오 클립 테스트 세트에서 Gemini 1.5 Pro는 5.5%의 단어 오류율 (WER)을 기록했으며 이는 추가 입력 세분화 및 사전 처리의 복잡성 없이도 특수 음성 텍스트 변환 모델보다 훨씬 낮은 수치입니다.

오디오 컨텍스트에 대한 몇 가지 새로운 표준 사용 사례는 다음과 같습니다.

  • 실시간 스크립트 작성 및 번역
  • 팟캐스트/동영상 질문 및 답변
  • 회의 스크립트 작성 및 요약
  • 음성 어시스턴트

오디오 파일로 프롬프트를 사용하는 방법에 관한 자세한 내용은 프롬프트 가이드를 참고하세요.

긴 컨텍스트 최적화

긴 컨텍스트와 Gemini 1.5 모델을 사용할 때의 기본 최적화 방법은 컨텍스트 캐싱을 사용하는 것입니다. 이전에는 단일 요청에서 많은 토큰을 처리하는 것이 불가능했으며 또 다른 제약조건은 비용이었습니다. 사용자가 10개의 PDF, 동영상, 일부 작업 문서를 업로드하는 '데이터와 채팅' 앱이 있는 경우 기존에는 이러한 요청을 처리하기 위해 더 복잡한 검색 증강 생성(RAG) 도구 /프레임워크를 사용해야 했고, 컨텍스트 윈도우로 이동되는 토큰에 대해 상당한 비용을 지불해야 했습니다. 이제 사용자가 업로드한 파일을 캐시하고 시간 단위로 저장 비용을 지불할 수 있습니다. 예를 들어 Gemini 1.5 Flash를 사용한 요청당 입력 / 출력 비용은 표준 입력 / 출력 비용보다 약 4배 낮으므로 사용자가 데이터와 충분히 채팅하면 개발자에게는 비용이 크게 절감됩니다.

긴 컨텍스트 제한사항

이 가이드의 여러 섹션에서는 Gemini 1.5 모델이 다양한 건초 더미에서 바늘 찾기 검색 평가에서 높은 성능을 달성하는 방법을 설명했습니다. 이러한 테스트에서는 하나의 바늘을 찾는 가장 기본적인 설정을 고려합니다. 찾고자 하는 '바늘', 즉 특정 정보가 여러 개 있는 경우 모델의 정확성은 동일하지 않습니다. 성능은 컨텍스트에 따라 크게 달라질 수 있습니다. 올바른 정보를 검색하는 것과 비용 사이에는 고유한 절충점이 있으므로 이를 고려하는 것이 중요합니다. 단일 쿼리에서 최대 99%까지 얻을 수 있지만 쿼리를 전송할 때마다 입력 토큰 비용을 지불해야 합니다. 따라서 100개의 정보를 검색하는데 99%의 성능이 필요하다면 100개의 요청을 보내야 할 가능성이 높습니다. 이는 컨텍스트 캐싱이 성능을 높이면서 Gemini 모델 사용과 관련된 비용을 크게 줄일 수 있는 좋은 예입니다.

FAQ

쿼리에 토큰을 더 추가하면 모델 성능이 저하되나요?

일반적으로 토큰을 모델에 전달할 필요가 없는 경우 전달하지 않는 것이 가장 좋습니다. 하지만 정보가 포함된 대량의 토큰이 있고 이 정보에 관해 질문하고 싶다면 모델이 이 정보를 매우 효과적으로 추출할 수 있습니다 (대부분의 경우 최대 99% 의 정확도).

Gemini 1.5 Pro는 표준 Needle in the Haystack 테스트에서 어떤 성능을 보이나요?

Gemini 1.5 Pro는 최대 53만 개의 토큰에서 100% 재현율을 달성하고 최대 100만 개의 토큰에서 99.7% 이상의 재현율을 달성합니다.

긴 컨텍스트 쿼리로 비용을 줄이려면 어떻게 해야 하나요?

여러 번 재사용하려는 유사한 토큰 / 컨텍스트 세트가 있는 경우 컨텍스트 캐싱을 사용하면 해당 정보에 관한 질문과 관련된 비용을 줄일 수 있습니다.

2백만 개의 토큰 컨텍스트 윈도우에 액세스하려면 어떻게 해야 하나요?

이제 모든 개발자가 Gemini 1.5 Pro를 통해 2백만 개의 토큰 컨텍스트 윈도우를 이용할 수 있습니다.

컨텍스트 길이가 모델 지연 시간에 영향을 미치나요?

크기와 관계없이 모든 요청에는 일정량의 지연 시간이 있지만 일반적으로 쿼리가 길수록 지연 시간 (첫 번째 토큰까지의 시간)이 더 깁니다.

Gemini 1.5 Flash와 Gemini 1.5 Pro의 긴 컨텍스트 기능은 서로 다릅니까?

예. 일부 수치는 이 가이드의 여러 섹션에서 언급되었지만 일반적으로 Gemini 1.5 Pro는 대부분의 긴 컨텍스트 사용 사례에서 더 우수한 성능을 보입니다.