download_models.py 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. import os
  2. import requests
  3. import json
  4. from modelscope import snapshot_download
  5. def download_and_modify_json(url, local_filename, modifications):
  6. if os.path.exists(local_filename):
  7. data = json.load(open(local_filename))
  8. else:
  9. # 下载JSON文件
  10. response = requests.get(url)
  11. response.raise_for_status() # 检查请求是否成功
  12. # 解析JSON内容
  13. data = response.json()
  14. # 修改内容
  15. for key, value in modifications.items():
  16. data[key] = value
  17. # 保存修改后的内容
  18. with open(local_filename, 'w', encoding='utf-8') as f:
  19. json.dump(data, f, ensure_ascii=False, indent=4)
  20. if __name__ == '__main__':
  21. model_dir = snapshot_download('opendatalab/PDF-Extract-Kit')
  22. layoutreader_model_dir = snapshot_download('ppaanngggg/layoutreader')
  23. model_dir = model_dir + "/models"
  24. print(f"model_dir is: {model_dir}")
  25. print(f"layoutreader_model_dir is: {layoutreader_model_dir}")
  26. json_url = 'https://gitee.com/myhloli/MinerU/raw/master/magic-pdf.template.json'
  27. config_file_name = "magic-pdf.json"
  28. home_dir = os.path.expanduser("~")
  29. config_file = os.path.join(home_dir, config_file_name)
  30. json_mods = {
  31. 'models-dir': model_dir,
  32. 'layoutreader-model-dir': layoutreader_model_dir,
  33. }
  34. download_and_modify_json(json_url, config_file, json_mods)
  35. print(f"The configuration file has been configured successfully, the path is: {config_file}")