summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--python-torchility.spec279
-rw-r--r--sources1
3 files changed, 281 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..ba395de 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/torchility-0.7.2.tar.gz
diff --git a/python-torchility.spec b/python-torchility.spec
new file mode 100644
index 0000000..a650c5b
--- /dev/null
+++ b/python-torchility.spec
@@ -0,0 +1,279 @@
+%global _empty_manifest_terminate_build 0
+Name: python-torchility
+Version: 0.7.2
+Release: 1
+Summary: please add a summary manually as the author left a blank one
+License: MIT
+URL: https://github.com/hitlic/torchility
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/f0/2d/6c3c41c629a165bab5142d301d3c8cd1896acd47107627cb5b09072fc17b/torchility-0.7.2.tar.gz
+BuildArch: noarch
+
+Requires: python3-torch
+Requires: python3-pytorch-lightning
+Requires: python3-torchmetrics
+Requires: python3-matplotlib
+Requires: python3-pyyaml
+Requires: python3-tensorboardX
+
+%description
+# torchility
+
+A tool for training pytorch deep learning model more simply which is based on Pytorch-lightning.
+
+## Install
+
+- `pip install torchility`
+### Dependency
+- pytorch>=2.0
+- pytorch-lightning>=2.0,<2.1
+- torchmetrics>=0.11,<0.12
+- matplotlib>=3.3
+- pyyaml>=5.4
+- tensorboardX>=2.6
+
+## Usage
+
+- MNIST
+
+```python
+from torchility import Trainer
+import torch
+from torch import nn
+from torch.nn import functional as F
+from torchvision.datasets import MNIST
+from torchvision import transforms
+from torch.utils.data import DataLoader, random_split
+import warnings
+warnings.simplefilter("ignore") # ignore annoying warnings
+
+# datasets
+data_dir = './datasets'
+transform = transforms.Compose([transforms.ToTensor(), transforms.Normalize((0.1307,), (0.3081,))])
+mnist_full = MNIST(data_dir, train=True, transform=transform, download=True)
+train_ds, val_ds = random_split(mnist_full, [55000, 5000])
+test_ds = MNIST(data_dir, train=False, transform=transform, download=True)
+
+# dataloaders
+train_dl = DataLoader(train_ds, batch_size=32)
+val_dl = DataLoader(val_ds, batch_size=32)
+test_dl = DataLoader(test_ds, batch_size=32)
+
+# pytorch model
+channels, width, height = (1, 28, 28)
+model = nn.Sequential(
+ nn.Flatten(),
+ nn.Linear(channels * width * height, 64),
+ nn.ReLU(),
+ nn.Dropout(0.1),
+ nn.Linear(64, 64),
+ nn.ReLU(),
+ nn.Dropout(0.1),
+ nn.Linear(64, 10)
+)
+
+# optimizer
+opt = torch.optim.Adam(model.parameters(), lr=2e-4)
+# trainer
+trainer = Trainer(model, F.cross_entropy, opt, epochs=2)
+# train and validate
+trainer.fit(train_dl, val_dl)
+# test
+trainer.test(test_dl)
+```
+
+- See the `examples` for more examples
+
+
+
+%package -n python3-torchility
+Summary: please add a summary manually as the author left a blank one
+Provides: python-torchility
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-torchility
+# torchility
+
+A tool for training pytorch deep learning model more simply which is based on Pytorch-lightning.
+
+## Install
+
+- `pip install torchility`
+### Dependency
+- pytorch>=2.0
+- pytorch-lightning>=2.0,<2.1
+- torchmetrics>=0.11,<0.12
+- matplotlib>=3.3
+- pyyaml>=5.4
+- tensorboardX>=2.6
+
+## Usage
+
+- MNIST
+
+```python
+from torchility import Trainer
+import torch
+from torch import nn
+from torch.nn import functional as F
+from torchvision.datasets import MNIST
+from torchvision import transforms
+from torch.utils.data import DataLoader, random_split
+import warnings
+warnings.simplefilter("ignore") # ignore annoying warnings
+
+# datasets
+data_dir = './datasets'
+transform = transforms.Compose([transforms.ToTensor(), transforms.Normalize((0.1307,), (0.3081,))])
+mnist_full = MNIST(data_dir, train=True, transform=transform, download=True)
+train_ds, val_ds = random_split(mnist_full, [55000, 5000])
+test_ds = MNIST(data_dir, train=False, transform=transform, download=True)
+
+# dataloaders
+train_dl = DataLoader(train_ds, batch_size=32)
+val_dl = DataLoader(val_ds, batch_size=32)
+test_dl = DataLoader(test_ds, batch_size=32)
+
+# pytorch model
+channels, width, height = (1, 28, 28)
+model = nn.Sequential(
+ nn.Flatten(),
+ nn.Linear(channels * width * height, 64),
+ nn.ReLU(),
+ nn.Dropout(0.1),
+ nn.Linear(64, 64),
+ nn.ReLU(),
+ nn.Dropout(0.1),
+ nn.Linear(64, 10)
+)
+
+# optimizer
+opt = torch.optim.Adam(model.parameters(), lr=2e-4)
+# trainer
+trainer = Trainer(model, F.cross_entropy, opt, epochs=2)
+# train and validate
+trainer.fit(train_dl, val_dl)
+# test
+trainer.test(test_dl)
+```
+
+- See the `examples` for more examples
+
+
+
+%package help
+Summary: Development documents and examples for torchility
+Provides: python3-torchility-doc
+%description help
+# torchility
+
+A tool for training pytorch deep learning model more simply which is based on Pytorch-lightning.
+
+## Install
+
+- `pip install torchility`
+### Dependency
+- pytorch>=2.0
+- pytorch-lightning>=2.0,<2.1
+- torchmetrics>=0.11,<0.12
+- matplotlib>=3.3
+- pyyaml>=5.4
+- tensorboardX>=2.6
+
+## Usage
+
+- MNIST
+
+```python
+from torchility import Trainer
+import torch
+from torch import nn
+from torch.nn import functional as F
+from torchvision.datasets import MNIST
+from torchvision import transforms
+from torch.utils.data import DataLoader, random_split
+import warnings
+warnings.simplefilter("ignore") # ignore annoying warnings
+
+# datasets
+data_dir = './datasets'
+transform = transforms.Compose([transforms.ToTensor(), transforms.Normalize((0.1307,), (0.3081,))])
+mnist_full = MNIST(data_dir, train=True, transform=transform, download=True)
+train_ds, val_ds = random_split(mnist_full, [55000, 5000])
+test_ds = MNIST(data_dir, train=False, transform=transform, download=True)
+
+# dataloaders
+train_dl = DataLoader(train_ds, batch_size=32)
+val_dl = DataLoader(val_ds, batch_size=32)
+test_dl = DataLoader(test_ds, batch_size=32)
+
+# pytorch model
+channels, width, height = (1, 28, 28)
+model = nn.Sequential(
+ nn.Flatten(),
+ nn.Linear(channels * width * height, 64),
+ nn.ReLU(),
+ nn.Dropout(0.1),
+ nn.Linear(64, 64),
+ nn.ReLU(),
+ nn.Dropout(0.1),
+ nn.Linear(64, 10)
+)
+
+# optimizer
+opt = torch.optim.Adam(model.parameters(), lr=2e-4)
+# trainer
+trainer = Trainer(model, F.cross_entropy, opt, epochs=2)
+# train and validate
+trainer.fit(train_dl, val_dl)
+# test
+trainer.test(test_dl)
+```
+
+- See the `examples` for more examples
+
+
+
+%prep
+%autosetup -n torchility-0.7.2
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-torchility -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Tue May 30 2023 Python_Bot <Python_Bot@openeuler.org> - 0.7.2-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..b1c0583
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+c809887d3047d70d37f6f783ae386011 torchility-0.7.2.tar.gz