You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

path_utils.py 1.8 kB

5 years ago
5 years ago
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. # -*- coding: UTF-8 -*-
  2. # Copyright 2020 Zhejiang Lab. All Rights Reserved.
  3. #
  4. # Licensed under the Apache License, Version 2.0 (the "License");
  5. # you may not use this file except in compliance with the License.
  6. # You may obtain a copy of the License at
  7. #
  8. # http://www.apache.org/licenses/LICENSE-2.0
  9. #
  10. # Unless required by applicable law or agreed to in writing, software
  11. # distributed under the License is distributed on an "AS IS" BASIS,
  12. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. # See the License for the specific language governing permissions and
  14. # limitations under the License.
  15. # =============================================================
  16. from pathlib import Path
  17. from .redis_utils import RedisInstance
  18. from .config_utils import ConfigInstance
  19. def id2logdir(uid, trainJobName):
  20. _base = Path(ConfigInstance.conf_logdir_base()).absolute()
  21. log_dir = _base / uid / trainJobName / "visualizedlog"
  22. try:
  23. int(uid)
  24. except ValueError:
  25. _base = Path("../demo_logs").absolute()
  26. log_dir = _base / uid / "logs"
  27. cache_dir = Path("../__cache__").absolute() / uid / trainJobName
  28. return log_dir, cache_dir
  29. def get_file_path(uid, run, type, tag):
  30. _key = uid + '_' + run + '_' + type + '_' + tag
  31. try:
  32. _path = Path(RedisInstance.get(_key))
  33. except TypeError:
  34. raise OSError('Redis key {} not found according to request '
  35. 'parameters, please check the parameters'
  36. .format(_key))
  37. return _path
  38. def path_parser(cache_path, run, type, tag):
  39. run = run if not (run == '.') else 'root'
  40. tag = tag.replace('/', '#').replace(':', '$')
  41. file_path = cache_path / run / type / tag
  42. return file_path

一站式算法开发平台、高性能分布式深度学习框架、先进算法模型库、视觉模型炼知平台、数据可视化分析平台等一系列平台及工具,在模型高效分布式训练、数据处理和可视分析、模型炼知和轻量化等技术上形成独特优势,目前已在产学研等各领域近千家单位及个人提供AI应用赋能

Contributors (1)