Discover and explore top open-source AI tools and projects—updated daily.
ddcat666Gemini Enterprise API proxy service
Top 98.7% on SourcePulse
This project provides a Flask-based proxy service for the Google Gemini Enterprise API, designed to simplify integration and enhance usability. It targets developers who need to leverage Gemini's capabilities, especially those managing multiple Gemini accounts or seeking an OpenAI-compatible API endpoint. The primary benefit is enabling load balancing and higher throughput through account rotation while offering a familiar API interface.
How It Works
The system acts as a middleware, accepting requests via an OpenAI-compatible API and routing them to configured Google Gemini Enterprise accounts. It employs an AccountManager to handle loading, saving, and rotating through available accounts based on their availability. Key features include automatic JWT token acquisition and refresh, support for Server-Sent Events (SSE) for streaming responses, and the ability to pass system instructions and maintain conversational context within a single request. An integrated web console provides management capabilities for accounts, models, and proxy settings.
Quick Start & Requirements
pip install flask requests flask-cors or use docker-compose up -d.business_gemini_session.json with account credentials (team ID, cookies, user agent) and proxy settings if needed.http://127.0.0.1:8000/. API usage examples are provided via curl commands in the documentation.Highlighted Details
/v1/chat/completions).Maintenance & Community
No specific details regarding maintainers, community channels (e.g., Discord, Slack), or roadmap were found in the provided documentation.
Licensing & Compatibility
Limitations & Caveats
The business_gemini_session.json configuration file contains sensitive credentials and requires careful security management. Accessing Google services may necessitate proxy configuration. JWT tokens have a limited validity period, although the system attempts automatic refresh. Each API request initiates a new session, with context maintained only within that request's message history.
1 week ago
Inactive