一个轻量级的Web工具,用于快速检测OpenAI、Anthropic、Google Gemini等AI服务的API Key有效性。
- 多平台支持: 支持OpenAI、Anthropic Claude、Google Gemini
- 快速检测: 几秒钟内验证API Key有效性
- 模型发现: 自动发现可用的AI模型列表
- 现代界面: 简洁美观的Web界面
- 响应式设计: 支持桌面和移动设备
- 详细反馈: 提供详细的错误信息和检测结果
| 服务商 | 默认API地址 | 说明 |
|---|---|---|
| OpenAI | https://api.openai.com/v1 |
GPT-4o, GPT-3.5-turbo等 |
| Anthropic | https://api.anthropic.com |
Claude-3, Claude-3.5等 |
| Google Gemini | https://generativelanguage.googleapis.com/v1beta |
Gemini-1.5, Gemini-2.0等 |
- Python 3.8+
- pip
- 克隆项目
git clone <repository-url>
cd api-key-detector- 安装依赖
pip install -r requirements.txt- 启动服务
python main.py-
访问应用
打开浏览器访问: http://localhost:8000
如果您有Docker环境:
# 构建镜像
docker build -t api-key-detector .
# 运行容器
docker run -p 8000:8000 api-key-detector- 选择AI服务商: 从下拉菜单中选择要检测的AI服务商
- 设置API地址: 系统会自动填入默认地址,也可以自定义
- 输入API密钥: 输入您的API密钥
- 设置超时时间: 可选,默认30秒
- 开始检测: 点击"开始检测"按钮
检测结果将显示:
- ✅ API Key有效性状态
- 📋 可用模型列表
- ⏱️ 响应时间
- 🔍 详细错误信息(如果有)
获取支持的AI服务商列表
检测API Key有效性
请求体:
{
"provider": "openai",
"base_url": "https://api.openai.com/v1",
"api_key": "your-api-key",
"timeout": 30
}响应:
{
"provider": "openai",
"status": "success",
"message": "API key有效,发现 4 个模型",
"is_valid": true,
"models": [
{
"id": "gpt-4o",
"name": "gpt-4o",
"description": ""
}
],
"response_time": 1.23,
"detection_time": "2024-01-01T12:00:00"
}- ✅ API密钥仅在内存中处理,不会存储
- ✅ 支持HTTPS传输加密
- ✅ 前端密码字段默认隐藏
⚠️ 请在可信环境中使用⚠️ 不要在公共网络上暴露此工具
编辑 static/style.css 文件来自定义界面样式。
- 在
src/models/api_models.py中添加新的提供商类型 - 在
src/detectors/目录下创建新的检测器类 - 在
main.py中注册新的检测器 - 在
src/utils/config.py中添加配置信息
api-key-detector/
├── main.py # 主程序入口
├── requirements.txt # Python依赖
├── README.md # 项目说明
├── src/
│ ├── models/ # 数据模型
│ ├── detectors/ # API检测器
│ └── utils/ # 工具函数
├── static/ # 静态资源
└── templates/ # HTML模板
python main.py服务器将在开发模式下运行,支持热重载。
欢迎提交Issue和Pull Request!
MIT License
Q: 为什么我的API Key显示无效? A: 请检查:
- API Key是否正确复制(注意空格)
- API地址是否正确
- 网络连接是否正常
- API Key是否有相应权限
Q: 支持代理API吗? A: 是的,您可以修改API地址为您的代理服务地址。
Q: 检测会消耗API配额吗? A: 检测过程中会发送少量测试请求,可能消耗极少配额。
Q: 如何添加新的AI服务商? A: 请参考"自定义"部分的说明,或提交Issue让我们知道您的需求。