File size: 1,425 Bytes
025ec95
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import json

# 保持不变的get_models方法
def get_models():
    models = {
        "object": "list",
        "data": [
            {"id": "Qwen2.5-72B", "object": "model", "created": 0, "owned_by": "Qwen"},
            {"id": "Llama-3.1-Nemotron-70B", "object": "model", "created": 0, "owned_by": "Nemotron"},
            {"id": "NVLM-D-72B", "object": "model", "created": 0, "owned_by": "NVDIA"},
            {"id": "DeepSeek-Coder-V2", "object": "model", "created": 0, "owned_by": "DeepSeek"},
            {"id": "Qwen2.5-Coder-32B", "object": "model", "created": 0, "owned_by": "Qwen"},
        ]
    }
    return json.dumps(models)

# 新的方法,检查model是否有效并返回id
def get_model_by_id(model_id=None):
    # 获取所有模型数据
    models_data = json.loads(get_models())["data"]
    
    # 提取所有有效的模型ID
    valid_ids = [model["id"] for model in models_data]
    
    # 如果model_id无效,默认返回Qwen2.5-72B
    if model_id not in valid_ids:
        model_id = "Qwen2.5-72B"
    
    # 根据model_id获取对应的模型数据
    model_data = next((model for model in models_data if model["id"] == model_id), None)
    
    # 返回model_data的id字段
    return model_data["id"] if model_data else None


# 示例调用
print(get_model_by_id("Llama-3.1-Nemotron-70B"))  # 返回指定模型
print(get_model_by_id("Invalid-ID"))  # 返回默认模型 Qwen2.5-72B