HanaokaYuzu/Gemini-API

✨ Reverse-engineered Python API for Google Gemini web app

解決的問題

本專案提供一個針對 Google Gemini 網頁應用的逆向工程非同步 Python 封裝,讓開發者無需使用官方 API,即可程式化地與 Gemini 的網頁功能互動。

作法原理

使用 asyncio 進行高效任務處理,並需透過瀏覽器 Cookie(__Secure-1PSID__Secure-1PSIDTS)進行驗證。該套件會在背景自動更新這些 Cookie,以維持持續會話,適用於永續運作的服務。亦可透過 browser-cookie3 依賴自動從 Firefox 導入 Cookie。

適用對象

希望將 Gemini 的網頁應用功能(如 Gemini Gems、擴充功能、多模態生成等)整合至自身應用程式或 CLI 工具中的 Python 開發者。

主要特色

  • 多模態功能:支援圖像生成與編輯,以及影片與音訊/音樂內容的生成。
  • 深度研究:實作完整的流程,包含計畫建立、狀態輪詢與結果取得。
  • Gemini Gems:支援應用、建立、更新與刪除自訂系統提示(Gems)。
  • 擴充功能支援:可與 YouTube 及 Gmail 等 Gemini 擴充功能整合。
  • 進階會話管理:支援即時回應的串流模式、暫時聊天模式,以及取得模型思考過程的能力。
  • 持久化驗證:自動更新 Cookie,避免頻繁重新驗證。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案