74 lines
2.3 KiB
Python
74 lines
2.3 KiB
Python
![]() |
#!/usr/bin/env python3
|
|||
|
"""
|
|||
|
为API添加一个新的测试端点,用于验证修复
|
|||
|
"""
|
|||
|
|
|||
|
def add_test_endpoint():
|
|||
|
"""在API文件末尾添加一个测试端点"""
|
|||
|
|
|||
|
endpoint_code = '''
|
|||
|
|
|||
|
# 测试端点 - 用于验证ModelManager修复
|
|||
|
@app.route('/api/models/test', methods=['GET'])
|
|||
|
def test_models_fix():
|
|||
|
"""
|
|||
|
测试端点 - 验证ModelManager修复是否生效
|
|||
|
"""
|
|||
|
try:
|
|||
|
from utils.model_manager import ModelManager
|
|||
|
import os
|
|||
|
|
|||
|
# 强制创建新的ModelManager实例
|
|||
|
current_dir = os.path.dirname(os.path.abspath(__file__))
|
|||
|
project_root = os.path.dirname(current_dir)
|
|||
|
model_dir = os.path.join(project_root, 'saved_models')
|
|||
|
manager = ModelManager(model_dir)
|
|||
|
|
|||
|
models = manager.list_models()
|
|||
|
|
|||
|
# 简化的响应格式
|
|||
|
test_result = {
|
|||
|
"status": "success",
|
|||
|
"test_name": "ModelManager修复测试",
|
|||
|
"model_dir": manager.model_dir,
|
|||
|
"dir_exists": os.path.exists(manager.model_dir),
|
|||
|
"models_found": len(models),
|
|||
|
"models": []
|
|||
|
}
|
|||
|
|
|||
|
for model in models:
|
|||
|
test_result["models"].append({
|
|||
|
"filename": model.get('filename', 'MISSING'),
|
|||
|
"model_id": model.get('filename', '').replace('.pth', '') if model.get('filename') else 'GENERATED_MISSING',
|
|||
|
"product_id": model.get('product_id', 'MISSING'),
|
|||
|
"model_type": model.get('model_type', 'MISSING')
|
|||
|
})
|
|||
|
|
|||
|
return jsonify(test_result)
|
|||
|
|
|||
|
except Exception as e:
|
|||
|
return jsonify({
|
|||
|
"status": "error",
|
|||
|
"message": str(e),
|
|||
|
"test_name": "ModelManager修复测试"
|
|||
|
}), 500
|
|||
|
'''
|
|||
|
|
|||
|
# 读取当前API文件
|
|||
|
with open('server/api.py', 'r', encoding='utf-8') as f:
|
|||
|
content = f.read()
|
|||
|
|
|||
|
# 检查是否已经添加了测试端点
|
|||
|
if '/api/models/test' in content:
|
|||
|
print("测试端点已存在")
|
|||
|
return
|
|||
|
|
|||
|
# 在文件末尾添加测试端点
|
|||
|
with open('server/api.py', 'a', encoding='utf-8') as f:
|
|||
|
f.write(endpoint_code)
|
|||
|
|
|||
|
print("已添加测试端点: /api/models/test")
|
|||
|
print("重启API服务器后访问: http://localhost:5000/api/models/test")
|
|||
|
|
|||
|
if __name__ == "__main__":
|
|||
|
add_test_endpoint()
|