""" 初始化模型数据脚本 运行此脚本可以添加一些示例模型数据 """ from app import create_app from models import db from models.model import Model import json def init_models(): app = create_app() with app.app_context(): # 检查是否已有数据 if Model.query.count() > 0: print("模型数据已存在,跳过初始化") return # 示例模型数据 models_data = [ { 'name': 'claude-haiku-4-5-20251001', 'provider': 'Anthropic', 'description': 'Claude Haiku 4.5 是由 anthropic 提供的人工智能模型。', 'input_price': 0.3000, 'output_price': 1.5000, 'billing_type': 'pay_as_you_go', 'endpoint_type': 'anthropic', 'tags': ['200k', '工具'], 'available_groups': ['Claude Code 官方编程模型', 'Claude Code 企业专线'], 'multiplier': 1.00 }, { 'name': 'claude-sonnet-4-5-20250929', 'provider': 'Anthropic', 'description': 'Claude Sonnet 4.5 是由 anthropic 提供的人工智能模型。', 'input_price': 3.0000, 'output_price': 15.0000, 'billing_type': 'pay_as_you_go', 'endpoint_type': 'anthropic', 'tags': ['200k', '推理', '工具', '文件'], 'available_groups': ['Claude Code 官方编程模型', 'Claude Code 企业专线'], 'multiplier': 1.00 }, { 'name': 'claude-opus-4-5-20251101-thinking', 'provider': 'Anthropic', 'description': 'Claude Opus 4.5 with thinking 是由 anthropic 提供的人工智能模型。', 'input_price': 15.0000, 'output_price': 75.0000, 'billing_type': 'pay_as_you_go', 'endpoint_type': 'anthropic', 'tags': ['200k', '推理', '工具', '文件'], 'available_groups': ['Claude Code 企业专线'], 'multiplier': 1.00 }, { 'name': 'claude-3-5-sonnet-20241022', 'provider': 'Anthropic', 'description': 'Claude 3.5 Sonnet 是由 anthropic 提供的人工智能模型。', 'input_price': 3.0000, 'output_price': 15.0000, 'billing_type': 'pay_as_you_go', 'endpoint_type': 'anthropic', 'tags': ['200k', '多模态', '工具'], 'available_groups': ['Claude Code 官方编程模型', 'Claude Code 企业专线'], 'multiplier': 1.00 }, { 'name': 'claude-3-opus-20240229', 'provider': 'Anthropic', 'description': 'Claude 3 Opus 是由 anthropic 提供的人工智能模型。', 'input_price': 15.0000, 'output_price': 75.0000, 'billing_type': 'pay_as_you_go', 'endpoint_type': 'anthropic', 'tags': ['200k', '推理', '工具'], 'available_groups': ['Claude Code 企业专线'], 'multiplier': 1.00 }, { 'name': 'claude-3-5-haiku-20241022', 'provider': 'Anthropic', 'description': 'Claude 3.5 Haiku 是由 anthropic 提供的人工智能模型。', 'input_price': 0.3000, 'output_price': 1.5000, 'billing_type': 'pay_as_you_go', 'endpoint_type': 'anthropic', 'tags': ['200k', '工具'], 'available_groups': ['Claude Code 官方编程模型'], 'multiplier': 1.00 } ] for model_data in models_data: model = Model( name=model_data['name'], provider=model_data['provider'], description=model_data['description'], input_price=model_data['input_price'], output_price=model_data['output_price'], billing_type=model_data['billing_type'], endpoint_type=model_data['endpoint_type'], tags=json.dumps(model_data['tags'], ensure_ascii=False), available_groups=json.dumps(model_data['available_groups'], ensure_ascii=False), multiplier=model_data['multiplier'], is_active=True ) db.session.add(model) db.session.commit() print(f"成功初始化 {len(models_data)} 个模型") if __name__ == '__main__': init_models()