billtruong003/KeyStream-Gemini
GitHub: billtruong003/KeyStream-Gemini
KeyStream-Gemini 是一款基于 Node.js 的本地反向代理,通过智能密钥轮换和实时监控帮助开发者绕过 Google Gemini API 的速率限制,实现高可用调用。
Stars: 34 | Forks: 15
# KeyStream-Gemini
KeyStream-Gemini 是一款高性能反向代理,旨在通过智能密钥轮换和实时监控来优化 Google Gemini API 的使用。它通过动态管理 API 密钥池,确保高可用性并绕过速率限制。
## 核心功能
- **动态密钥轮换**:自动循环使用 API 密钥,以维持持续的服务可用性。
- **实时可观测性**:基于 Web 的仪表板,包含流量指标、密钥健康状态和后端日志。
- **模型同步**:通过 Google API 自动发现和更新可用的 Gemini 模型。
- **原生流式支持**:优化处理 Server-Sent Events (SSE),实现流畅的 AI 交互。
- **OpenAI 兼容性**:标准化接口,可与 Continue.dev 等工具无缝集成。
## 📺 视频教程与演示
## 安装
### 前置条件
- Node.js 18 或更高版本
- npm 或 Yarn
- Google Gemini API 密钥
### 设置
1. **克隆仓库**
git clone https://github.com/billtruong003/KeyStream-Gemini.git
cd KeyStream-Gemini
2. **安装依赖**
npm install
3. **初始化密钥存储**
在根目录下创建一个 `keys.json` 文件:
- macOS/Linux: `echo "[]" > keys.json`
- Windows: `Set-Content -Path ".\keys.json" -Value "[]"`
4. **启动服务器**
npm start
网关将可通过 `http://localhost:13337` 访问。
## 集成
KeyStream-Gemini 提供一个 OpenAI 兼容的端点。要与您的 AI 工具集成,请使用以下配置:
- **Base URL**: `http://localhost:13337/v1`
- **API Key**: `sk-keystream`(代理处理实际认证)
### 配置示例 (Continue.dev)
```
models:
- name: "⚡ gemini-3-pro-preview"
model: "gemini-3-pro-preview"
provider: openai
apiBase: "http://localhost:13337/v1"
apiKey: "sk-local-proxy"
contextLength: 128000
```
## 开发
要在具有自动重载功能的开发模式下运行服务器:
```
npm install -g nodemon
nodemon server.js
```
## 许可证
根据 MIT 许可证分发。
## 常见问题解答 (FAQ)
**1. 为什么我应该使用 KeyStream-Gemini 而不是 Cursor Pro 或其他代理工具?**
* **即插即用:** 这是一个“5 分钟设置”的解决方案。虽然其他工具可能需要复杂的终端配置或 DevOps 知识,但 KeyStream-Gemini 专为那些希望专注于编码(如游戏开发或 Web 开发人员)而不是环境故障排除的开发人员设计。只需 `npm install/start` 即可开始使用。
* **完全控制:** 这是一个 **本地代理**。您的密钥和数据保留在您的机器上。您不依赖任何可能会宕机或延迟的第三方中间人服务器。
* **稳定性:** 如果发生错误,您可以在自己的日志中确切查看原因并立即修复。
**2. 这如何处理 Google 严格的速率限制?**
* 该工具的核心是 **智能密钥轮换**。
* **专业提示:** 通过设置几个“克隆”账户并启用 Google Cloud Billing(以申领 $300 免费试用),您可以绕过标准的免费层限制。拥有一个包含 5-10 个“已启用计费”密钥的池,您每天将拥有数千个请求——足以整天构建复杂功能而不会碰壁。
**3. 我的数据安全吗?**
* **100% 安全。** 由于代理在您的硬件上本地运行,您的 API 密钥(存储在 `keys.json` 中)和您的源代码永远不会离开您的环境。数据直接从您的机器发送到 Google 的官方 API。
**4. 我可以将其与 Continue.dev 以外的其他 AI 工具一起使用吗?**
* 可以!因为 KeyStream-Gemini 提供一个 **OpenAI 兼容端点**,您可以将其与任何允许自定义 `apiBase` 或 `baseURL` 的工具一起使用,包括 VS Code 扩展、CLI 工具,甚至您自己的自定义 Python/Node.js 脚本。
**5. 您为什么构建这个而不是使用现有的开源代理?**
* 我首先为自己构建了这个。我尝试了几种复杂的开源代理,但它们通常需要数小时来设置,意外崩溃,或者对于简单的本地使用来说太“重”了。我想要一些轻量级的东西,如果坏了我可以自己修复。我分享它是因为我的朋友觉得它有用,希望您也觉得有用!
*如果您有新功能的想法或优化 Gemini 使用的“地下”技巧,请随时打开 Issue 或 Pull Request!*
## 核心功能
- **动态密钥轮换**:自动循环使用 API 密钥,以维持持续的服务可用性。
- **实时可观测性**:基于 Web 的仪表板,包含流量指标、密钥健康状态和后端日志。
- **模型同步**:通过 Google API 自动发现和更新可用的 Gemini 模型。
- **原生流式支持**:优化处理 Server-Sent Events (SSE),实现流畅的 AI 交互。
- **OpenAI 兼容性**:标准化接口,可与 Continue.dev 等工具无缝集成。
## 📺 视频教程与演示
## 安装
### 前置条件
- Node.js 18 或更高版本
- npm 或 Yarn
- Google Gemini API 密钥
### 设置
1. **克隆仓库**
git clone https://github.com/billtruong003/KeyStream-Gemini.git
cd KeyStream-Gemini
2. **安装依赖**
npm install
3. **初始化密钥存储**
在根目录下创建一个 `keys.json` 文件:
- macOS/Linux: `echo "[]" > keys.json`
- Windows: `Set-Content -Path ".\keys.json" -Value "[]"`
4. **启动服务器**
npm start
网关将可通过 `http://localhost:13337` 访问。
## 集成
KeyStream-Gemini 提供一个 OpenAI 兼容的端点。要与您的 AI 工具集成,请使用以下配置:
- **Base URL**: `http://localhost:13337/v1`
- **API Key**: `sk-keystream`(代理处理实际认证)
### 配置示例 (Continue.dev)
```
models:
- name: "⚡ gemini-3-pro-preview"
model: "gemini-3-pro-preview"
provider: openai
apiBase: "http://localhost:13337/v1"
apiKey: "sk-local-proxy"
contextLength: 128000
```
## 开发
要在具有自动重载功能的开发模式下运行服务器:
```
npm install -g nodemon
nodemon server.js
```
## 许可证
根据 MIT 许可证分发。
## 常见问题解答 (FAQ)
**1. 为什么我应该使用 KeyStream-Gemini 而不是 Cursor Pro 或其他代理工具?**
* **即插即用:** 这是一个“5 分钟设置”的解决方案。虽然其他工具可能需要复杂的终端配置或 DevOps 知识,但 KeyStream-Gemini 专为那些希望专注于编码(如游戏开发或 Web 开发人员)而不是环境故障排除的开发人员设计。只需 `npm install/start` 即可开始使用。
* **完全控制:** 这是一个 **本地代理**。您的密钥和数据保留在您的机器上。您不依赖任何可能会宕机或延迟的第三方中间人服务器。
* **稳定性:** 如果发生错误,您可以在自己的日志中确切查看原因并立即修复。
**2. 这如何处理 Google 严格的速率限制?**
* 该工具的核心是 **智能密钥轮换**。
* **专业提示:** 通过设置几个“克隆”账户并启用 Google Cloud Billing(以申领 $300 免费试用),您可以绕过标准的免费层限制。拥有一个包含 5-10 个“已启用计费”密钥的池,您每天将拥有数千个请求——足以整天构建复杂功能而不会碰壁。
**3. 我的数据安全吗?**
* **100% 安全。** 由于代理在您的硬件上本地运行,您的 API 密钥(存储在 `keys.json` 中)和您的源代码永远不会离开您的环境。数据直接从您的机器发送到 Google 的官方 API。
**4. 我可以将其与 Continue.dev 以外的其他 AI 工具一起使用吗?**
* 可以!因为 KeyStream-Gemini 提供一个 **OpenAI 兼容端点**,您可以将其与任何允许自定义 `apiBase` 或 `baseURL` 的工具一起使用,包括 VS Code 扩展、CLI 工具,甚至您自己的自定义 Python/Node.js 脚本。
**5. 您为什么构建这个而不是使用现有的开源代理?**
* 我首先为自己构建了这个。我尝试了几种复杂的开源代理,但它们通常需要数小时来设置,意外崩溃,或者对于简单的本地使用来说太“重”了。我想要一些轻量级的东西,如果坏了我可以自己修复。我分享它是因为我的朋友觉得它有用,希望您也觉得有用!
*如果您有新功能的想法或优化 Gemini 使用的“地下”技巧,请随时打开 Issue 或 Pull Request!*标签:API 密钥轮换, API 管理, API 网关, GNU通用公共许可证, Homebrew安装, LLM 工具, MITM代理, Node.js, OpenAI 兼容, SSE, Web 仪表盘, 中间件, 人工智能, 反向代理, 密钥健康检测, 密钥池管理, 服务器推送事件, 流量指标, 用户模式Hook绕过, 自定义脚本, 自定义脚本, 负载均衡, 速率限制绕过, 高可用性