Skip to main content

本仓库旨在方便快速地为深度学习项目提供便捷功能,例如钉钉通知、快捷配置、批量实验、GPU排队等等

安装

pip install lazydl -i https://pypi.org/simple 

使用

import lazydl as l

l.hi()

功能支持

帮助信息

  • hi():打印 Banner
  • help():打印帮助信息,待完善
  • print_error_info(e: Exception):打印错误信息

通知

  • notice(msg, warning=False, access_token="", secret=""):钉钉通知,默认读取 init_env() 设置的环境变量中的凭证
    Args:
        msg (str): 通知内容
        warning (bool, optional): 是否为警告. Defaults to False.
        access_token (str, optional): 钉钉机器人 access_token. Defaults to "".
        secret (str, optional): 钉钉机器人 secret. Defaults to "".
    

配置

  • init_env(config: Union[DictConfig, dict]):初始化环境
    包括随机种子、可见GPU、Comet.ml环境变量、进程名
    
    Args:
        config (DictConfig): 配置文件
            seed (str, optional): 种子. Defaults to '3407'.
            use_deterministic (bool, optional): 是否使用确定性算法,使用了训练会变慢. Defaults to False.
            visibale_cuda (str, optional): 设置可见 GPU,如果不使用设置为 ''. Defaults to 'all'.
            comet_exp (dict, optional): Comet.ml相关环境变量设置. Defaults to {}.
            proctitle (str, optional): 进程名. Defaults to 'python'.
            proctitle_prefix_id (bool, optional): 是否在进程名前边添加进程 ID. Defaults to True.
    

GPU 自动选择、排队

  • gpu_ready()):检查 GPU 是否可用
  • set_processing_units(config: Union[DictConfig, dict] = {}):设置处理器
    支持自动选择和手动选择、排队和不排队
    
    Args:
        config (dict, optional): Defaults to {}.
            processing_unit: 处理器类型,可选值为:cpu、mps, 1, ^2 等,其中 ^2 表示自动选择两块 GPU,默认为 cpu
            processing_unit_type: 选择处理器,可选值为:cpu、mps、gpu-a-s、gpu-a-m、gpu-m-s、gpu-m-m
            processing_unit_min_free_memory: 最小空闲内存,单位为 GiB,默认为 10
            processing_unit_min_free_memory_ratio: 最小空闲内存比例,默认为 0.5
            queuing: 是否排队,依赖 Redis,默认为 False
            visible_devices: 可见的 GPU 序号,用逗号分隔,默认为 None
    
    Returns:
        Union[DictConfig, dict]: config
    

包装类

  • Result:包装类,用于作为模块间通信的媒介,可使用字典进行初始化

文件读取和保存

  • load_in(path, data_name=""):读取文件

    根据文件后缀名自动选择读取方法
        目前支持保存类型有:‘pkl’、‘txt’、‘pt’、‘json’, 'jsonl'、'csv'
    
    Args:
        data_name: str, 打印提示时需要,便于控制台查看保存的文件是什么文件, 默认为空
    
    Returns:
        data:Object
    
  • save_as(data, save_path, file_format="pt", data_name="", protocol=4):保存文件

    将参数中的文件对象保存为指定格式格式文件
        目前支持保存类型有:‘pkl’、‘txt’、‘pt’、‘json’, 'jsonl'
        默认为‘pt’
    
    Args:
        data: obj, 要保存的文件对象
        save_path: str, 文件的保存路径,应当包含文件名和后缀名
        data_name: str, 打印提示时需要,便于控制台查看保存的文件是什么文件, 默认为空
        protocol: int, 当文件特别大的时候,需要将此参数调到4以上, 默认为4
        file_format: str, 要保存的文件类型,支持‘pkl’、‘txt’、‘pt’、‘json’、‘jsonl’
    
    Returns:
        None
    

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lazydl-0.2.83.tar.gz (31.7 kB view details)

Uploaded Source

File details

Details for the file lazydl-0.2.83.tar.gz.

File metadata

  • Download URL: lazydl-0.2.83.tar.gz
  • Upload date:
  • Size: 31.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.13

File hashes

Hashes for lazydl-0.2.83.tar.gz
Algorithm Hash digest
SHA256 54db82e06d80548aa2262aa0348cf215566528c386978f5e09451d934ffcb4ab
MD5 c1a71eddf6107b8fc16883fa7cb56990
BLAKE2b-256 4a800d145265feda623fa10dac2aaebfcc4cfc21937412678fbdaea787134f99

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.2.83 This release

1 file

0.2.82

1 file

0.2.81

1 file

0.2.8

1 file

0.2.7

1 file

0.2.6

1 file

0.2.5

1 file

0.2.4

1 file

0.2.3

1 file

0.2.2

1 file

0.2.1

1 file

0.2.0

1 file

0.1.9

1 file

0.1.8

1 file

0.1.7

1 file

0.1.6

1 file

0.1.5

1 file

0.1.4

1 file

0.1.3

1 file

0.1.2

1 file

0.1.1

1 file

0.1.0

1 file

0.0.9

1 file

0.0.8

1 file

0.0.7

1 file

0.0.6

1 file

0.0.5

1 file

0.0.4

1 file

0.0.3

1 file

0.0.2

1 file

0.0.1

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page