Files
ragflow/tools/scripts/rename_models_providers.py
2026-07-09 10:19:10 +08:00

56 lines
1.7 KiB
Python

#!/usr/bin/env python3
"""Rename provider name fields in conf/models/*.json to match llm_factories.json."""
import json, os
REPO_ROOT = os.path.abspath(os.path.join(os.path.dirname(__file__), "..", ".."))
MODELS_DIR = os.path.join(REPO_ROOT, "conf", "models")
# Valid mappings: models current name → llm_factories name
CHANGES = {
"avian": "Avian",
"Baichuan": "BaiChuan",
"Baidu": "BaiduYiyan",
"CoHere": "Cohere",
"FishAudio": "Fish Audio",
"Gitee": "GiteeAI",
"Google": "Gemini",
"JieKouAI": "Jiekou.AI",
"lmstudio": "LM-Studio",
"localai": "LocalAI",
"modelscope": "ModelScope",
"Novita": "NovitaAI",
"Nvidia": "NVIDIA",
"ollama": "Ollama",
"SiliconFlow": "SILICONFLOW",
"HunYuan": "Tencent Hunyuan",
"Aliyun": "Tongyi-Qianwen",
"vllm": "VLLM",
"Voyage": "Voyage AI",
"xinference": "Xinference",
"XunFei": "XunFei Spark",
}
def main():
# Build current name → filename mapping
file_map = {}
for fn in os.listdir(MODELS_DIR):
if not fn.endswith(".json"):
continue
with open(os.path.join(MODELS_DIR, fn)) as f:
d = json.load(f)
file_map[d["name"]] = fn
for old_name, new_name in CHANGES.items():
fn = file_map[old_name]
path = os.path.join(MODELS_DIR, fn)
with open(path) as f:
d = json.load(f)
d["name"] = new_name
with open(path, "w") as f:
json.dump(d, f, indent=2, ensure_ascii=False)
f.write("\n")
print(f'{fn}: "{old_name}" -> "{new_name}"')
if __name__ == "__main__":
main()