1{
2 lib,
3 buildPythonPackage,
4 datasets,
5 dvc,
6 dvc-render,
7 dvc-studio-client,
8 fastai,
9 fetchFromGitHub,
10 funcy,
11 gto,
12 jsonargparse,
13 lightgbm,
14 lightning,
15 matplotlib,
16 mmcv,
17 numpy,
18 optuna,
19 pandas,
20 pillow,
21 psutil,
22 pynvml,
23 pythonOlder,
24 ruamel-yaml,
25 scikit-learn,
26 scmrepo,
27 setuptools-scm,
28 tensorflow,
29 torch,
30 transformers,
31 xgboost,
32}:
33
34buildPythonPackage rec {
35 pname = "dvclive";
36 version = "3.48.4";
37 pyproject = true;
38
39 disabled = pythonOlder "3.9";
40
41 src = fetchFromGitHub {
42 owner = "iterative";
43 repo = "dvclive";
44 tag = version;
45 hash = "sha256-fs0NbsjpGaR4cXE/ajfeF6ZJ3fc7K28KDJ0LIJ/vsdg=";
46 };
47
48 build-system = [ setuptools-scm ];
49
50 dependencies = [
51 dvc
52 dvc-render
53 dvc-studio-client
54 funcy
55 gto
56 ruamel-yaml
57 scmrepo
58 psutil
59 pynvml
60 ];
61
62 optional-dependencies = {
63 all = [
64 jsonargparse
65 lightgbm
66 lightning
67 matplotlib
68 mmcv
69 numpy
70 optuna
71 pandas
72 pillow
73 scikit-learn
74 tensorflow
75 torch
76 transformers
77 xgboost
78 ]
79 ++ jsonargparse.optional-dependencies.signatures;
80 image = [
81 numpy
82 pillow
83 ];
84 sklearn = [ scikit-learn ];
85 plots = [
86 pandas
87 scikit-learn
88 numpy
89 ];
90 markdown = [ matplotlib ];
91 mmcv = [ mmcv ];
92 tf = [ tensorflow ];
93 xgb = [ xgboost ];
94 lgbm = [ lightgbm ];
95 huggingface = [
96 datasets
97 transformers
98 ];
99 # catalyst = [
100 # catalyst
101 # ];
102 fastai = [ fastai ];
103 lightning = [
104 lightning
105 torch
106 jsonargparse
107 ]
108 ++ jsonargparse.optional-dependencies.signatures;
109 optuna = [ optuna ];
110 };
111
112 # Circular dependency with dvc
113 doCheck = false;
114
115 pythonImportsCheck = [ "dvclive" ];
116
117 meta = with lib; {
118 description = "Library for logging machine learning metrics and other metadata in simple file formats";
119 homepage = "https://github.com/iterative/dvclive";
120 changelog = "https://github.com/iterative/dvclive/releases/tag/${src.tag}";
121 license = licenses.asl20;
122 maintainers = with maintainers; [ fab ];
123 };
124}