Skip to content

QQHKX/oneapi_test

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

one-api 自动化测试系统

Python License

项目概述

一款面向AI API服务的自动化测试工具,专为多模型并发测试场景设计。本系统可帮助开发者快速验证多个AI模型的可用性、性能表现和错误处理能力,确保API服务的可靠性和稳定性。

主要特性:

  • 🚀 多供应商模型并发测试
  • 📊 实时可视化监控面板
  • 🔍 智能错误诊断系统
  • 📁 结构化测试报告生成

功能特性

1. 多模型并发测试

  • 支持自动发现API端点所有可用模型
  • 可按供应商分类批量选择测试目标
  • 自定义测试模型白名单
  • 智能线程池管理(最大并发数可配置)

2. 实时状态监控

📡 当前并发量: 2/10
🚀 测试进度: [████████████░░░░░░░] 25/50 (50.0%)
🔄 当前测试中的模型:
🔄 gpt-4-turbo          | 延迟: 420ms | 重试: 0 
🔄 claude-2.1           | 延迟: 680ms | 重试: 1 

3. 智能错误诊断

  • 自动识别200+种API错误代码
  • 内置错误解决方案知识库
  • 异常类型智能分类:
    • 网络异常(连接超时、SSL错误等)
    • API错误(认证失败、参数错误等)
    • 系统错误(内存溢出、线程异常等)

4. 测试报告生成

生成包含完整测试数据的CSV报告:

时间戳 模型分类 模型ID 状态 错误代码 延迟 重试次数
2024-03-20T15:30:45 OpenAI gpt-4 success - 356ms 0

快速开始

环境要求

  • Python 3.7+
  • 依赖库安装:
    pip install questionary httpclient json csv threading datetime

配置说明

编辑脚本底部配置参数:

CONFIG = {
    "base_url": "https://api.yourservice.com/v1",  # API基础地址
    "api_key": "your_api_key_here",               # 认证密钥
    # 高级配置(可选)
    "max_workers": 15,           # 最大并发线程数
    "request_timeout": 45,       # 单请求超时时间(秒)
    "global_timeout": 600        # 全局超时限制(秒)
}

运行测试

python one_api_tester.py

使用指南

1. 模型选择界面

🛠️ 选择测试模式:
  ▸ OpenAI (15 模型)
    Anthropic (8 模型)
    Google (5 模型)
    [测试全部模型]
    [自定义模型ID]
    [退出]

2. 测试参数配置

test_prompt = {
    "messages": [{
        "role": "user",
        "content": "Respond with 'PONG'"
    }],
    "temperature": 0.3,
    "max_tokens": 10
}

(可通过修改config['test_prompt']自定义测试内容)

3. 测试报告样例

报告字段说明:

  • timestamp: 测试完成时间(ISO 8601格式)
  • category: 模型供应商分类
  • model_id: 完整模型标识符
  • status: 测试状态码(success/error_code)
  • error_category: 错误类型分类
  • solution: 推荐解决方案
  • latency: 最终成功请求延迟(毫秒)
  • retries: 实际重试次数

当前限制

模型类型支持

⚠️ 注意:本系统当前版本仅支持文本生成类模型的测试,暂不支持以下类型:

  • 图像生成模型(如DALL-E、Stable Diffusion)
  • 音频处理模型(语音识别、语音合成)
  • 多模态模型(图文混合输入)
  • 文件处理模型(文档解析、格式转换)

兼容性说明

  • 假设API端点兼容OpenAI格式
  • 要求/v1/models端点返回可用模型列表
  • 文本生成接口路径为/v1/chat/completions

错误处理参考

常见错误解决方案示例:

错误代码 问题类型 解决方案
401 认证失败 检查API密钥有效性
429 速率限制 降低请求频率或联系扩容
503 服务过载 实现指数退避重试机制

版权声明

© 2024 QQHKX. 基于MIT许可证发布。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages