Nativu5/Gemini-FastAPI

Web-based Gemini models wrapped into an OpenAI-compatible API.

해결하는 문제

Gemini-FastAPI는 공식 Google API 키 없이도 Google의 웹 기반 Gemini 모델에 API를 통해 접근할 수 있는 방법을 제공합니다. 이 프로젝트는 이러한 모델을 OpenAI 호환 API로 래핑하여, 기존의 OpenAI 형식을 기대하는 도구 및 애플리케이션에 Gemini를 쉽게 통합할 수 있도록 합니다.

작동 방식

이 프로젝트는 로그인된 Google 계정에서 가져온 웹 쿠키(__Secure-1PSID__Secure-1PSIDTS)를 사용하여 Gemini 웹 인터페이스에 대한 요청을 인증합니다. Gemini-API 라이브러리에 의해 구동되며, 서버는 FastAPI로 구축되어 있으며, LMDB 기반 저장소를 사용해 멀티턴 대화를 지속적으로 유지합니다.

대상 사용자

Google Search 통합 및 멀티모달 입력과 같은 웹 기반 Gemini 기능을 무료로 사용하고 싶은 개발자, 또는 Gemini 기반 애플리케이션용 OpenAI 호환 엔드포인트가 필요한 개발자.

주요 기능

  • OpenAI 호환성: /v1/chat/completions/v1/models 엔드포인트를 지원하며, 스트리밍, 도구 호출, 구조화된 JSON 출력도 지원합니다.
  • API 키 필요 없음: 인증에 세션 쿠키를 사용하여 웹 기반 모델에 무료로 접근 가능합니다.
  • 멀티모달 지원: 텍스트, 이미지, 파일 업로드를 모두 처리합니다.
  • 로드 밸런싱: 여러 Google 계정과 개별 프록시 설정을 사용해 요청을 분산하여 레이트 제한을 관리합니다.
  • 컨텍스트 관리: 오래된 대화를 요약하는 컴팩션 또는 파일 첨부 전략을 통해 과도한 컨텍스트를 처리합니다.
  • 대화 지속성: LMDB를 사용해 세션 간 대화 기록을 유지합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트