summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-05 07:19:10 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-05 07:19:10 +0000
commitfc4b43867d147b5c89c7965b9747ee5c07347fba (patch)
treea8c119b77f7565d1c0b6154168ed05f03b07210e
parente8d6f30839825939211f7cee201dd56169cf92bf (diff)
automatic import of python-ai-harnessopeneuler20.03
-rw-r--r--.gitignore1
-rw-r--r--python-ai-harness.spec361
-rw-r--r--sources1
3 files changed, 363 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..d800b32 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/ai-harness-0.4.32.tar.gz
diff --git a/python-ai-harness.spec b/python-ai-harness.spec
new file mode 100644
index 0000000..52371de
--- /dev/null
+++ b/python-ai-harness.spec
@@ -0,0 +1,361 @@
+%global _empty_manifest_terminate_build 0
+Name: python-ai-harness
+Version: 0.4.32
+Release: 1
+Summary: A harness project for ML & DL
+License: MIT
+URL: https://github.com/aicanhelp/ai-harness
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/c7/b4/698e1df82623a256760e29a9ec1aa2e8ddb2b8546338747d454780fe2fb0/ai-harness-0.4.32.tar.gz
+BuildArch: noarch
+
+Requires: python3-pyyaml
+Requires: python3-check-manifest
+Requires: python3-coverage
+Requires: python3-pytest
+
+%description
+# AI Harness
+
+## Introduction
+This project would like to supply some convenient tools for the machine learning and deep learning.
+Current features:
+- XMLConfiguration: for loading a configuration defined in xml files into a Python Object
+- Arguments: Mapping a Python Object to the arguments of argparse
+- inspector: Some convenient method for class/object
+- executors: Some convenient ProcessExecutor
+- fileutils: DirectoryNavigator, FileReadPipeLine
+- others:
+
+## Log
+- 2019.4.18, version: 0.3.0: Added distributed training tools for python
+- 2019.4.23, version: 0.3.5: Added a Json file Reader
+- 2019.4.24, version: 0.3.6: Added a data utils for processing data
+- 2019.4.26, version: 0.3.7 Added a data utils for processing data for zip file
+- 2019.4.28, version: 0.3.8 Added QueueExecutor
+
+## Examples
+### 1. XMLConfiguration
+##### (1) Define the configuration in xml file like:
+```xml
+<?xml version="1.0" encoding="UTF-8" ?>
+<configuration>
+ <arg name="name" default="TestName" help="Name Test Help"/>
+ <arg name="age" default="20" help="Age Test Help"/>
+ <group name="address">
+ <arg name="home" default="shanghai" help="Home test Help"/>
+ <arg name="phone" default="136" help="Phone test Help"/>
+ </group>
+ <group name="education">
+ <arg name="school" default="beijing" help="school test Help"/>
+ <arg name="grade" default="master" help="grade test Help"/>
+ </group>
+</configuration>
+```
+you can define multiple xml configuration files, and if the name is same, the value of the later will cover the previous.
+#### (3) Define the configuration class like:
+```
+from aiharness.configuration import configclass,field
+
+@configclass
+class Address:
+ phone: int = field(139, "phone help")
+ home: str = field("beijing", "phone help")
+
+
+@configclass
+class Education:
+ school: str = field('ustb', "phone help")
+ grade: str = field("master", "phone help")
+
+
+@configclass
+class Config:
+ name: str = field("test", "name help")
+ age: str = field(10, "age help")
+ address: Address = Address()
+ education: Education = Education()
+```
+#### (3) Load the xml configuration into python object as folling:
+```
+from aiharness.configuration import XmlConfiguration
+
+config:Config=XmlConfiguration(Config).load(['configuration1.xml','configuration2.xml'])
+```
+### Arguments Example
+Generally, we use argparse as following:
+```
+import argparse
+parser = argparse.ArgumentParser()
+parser.add_argument("--name",default='TEST',help='name help')
+parser.add_argument("--age",default=18,help='age help')
+arguments=parser.parse_args()
+```
+And you can got a arguments object.
+
+Here give an example showing how to load a xml configuration and set to argparse arguments and to parse the arguments into a object you defined.
+And here the Config Class and 'configuration.xml' are same with those of the Configuration example.
+
+Firstly, in fact, the Config Class instead of the codes of 'add_argument' of the argparse.ArgumentParser.
+Secondly, you can put the configuration into a xml file so that you can change it conveniently.
+
+```
+from aiharness.configuration import Arguments, XmlConfiguration
+
+config: Config = XmlConfiguration(Config).load(['configuration.xml'])
+arguments = Arguments(config)
+config: Config = arguments.parse()
+
+```
+
+
+
+
+
+%package -n python3-ai-harness
+Summary: A harness project for ML & DL
+Provides: python-ai-harness
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-ai-harness
+# AI Harness
+
+## Introduction
+This project would like to supply some convenient tools for the machine learning and deep learning.
+Current features:
+- XMLConfiguration: for loading a configuration defined in xml files into a Python Object
+- Arguments: Mapping a Python Object to the arguments of argparse
+- inspector: Some convenient method for class/object
+- executors: Some convenient ProcessExecutor
+- fileutils: DirectoryNavigator, FileReadPipeLine
+- others:
+
+## Log
+- 2019.4.18, version: 0.3.0: Added distributed training tools for python
+- 2019.4.23, version: 0.3.5: Added a Json file Reader
+- 2019.4.24, version: 0.3.6: Added a data utils for processing data
+- 2019.4.26, version: 0.3.7 Added a data utils for processing data for zip file
+- 2019.4.28, version: 0.3.8 Added QueueExecutor
+
+## Examples
+### 1. XMLConfiguration
+##### (1) Define the configuration in xml file like:
+```xml
+<?xml version="1.0" encoding="UTF-8" ?>
+<configuration>
+ <arg name="name" default="TestName" help="Name Test Help"/>
+ <arg name="age" default="20" help="Age Test Help"/>
+ <group name="address">
+ <arg name="home" default="shanghai" help="Home test Help"/>
+ <arg name="phone" default="136" help="Phone test Help"/>
+ </group>
+ <group name="education">
+ <arg name="school" default="beijing" help="school test Help"/>
+ <arg name="grade" default="master" help="grade test Help"/>
+ </group>
+</configuration>
+```
+you can define multiple xml configuration files, and if the name is same, the value of the later will cover the previous.
+#### (3) Define the configuration class like:
+```
+from aiharness.configuration import configclass,field
+
+@configclass
+class Address:
+ phone: int = field(139, "phone help")
+ home: str = field("beijing", "phone help")
+
+
+@configclass
+class Education:
+ school: str = field('ustb', "phone help")
+ grade: str = field("master", "phone help")
+
+
+@configclass
+class Config:
+ name: str = field("test", "name help")
+ age: str = field(10, "age help")
+ address: Address = Address()
+ education: Education = Education()
+```
+#### (3) Load the xml configuration into python object as folling:
+```
+from aiharness.configuration import XmlConfiguration
+
+config:Config=XmlConfiguration(Config).load(['configuration1.xml','configuration2.xml'])
+```
+### Arguments Example
+Generally, we use argparse as following:
+```
+import argparse
+parser = argparse.ArgumentParser()
+parser.add_argument("--name",default='TEST',help='name help')
+parser.add_argument("--age",default=18,help='age help')
+arguments=parser.parse_args()
+```
+And you can got a arguments object.
+
+Here give an example showing how to load a xml configuration and set to argparse arguments and to parse the arguments into a object you defined.
+And here the Config Class and 'configuration.xml' are same with those of the Configuration example.
+
+Firstly, in fact, the Config Class instead of the codes of 'add_argument' of the argparse.ArgumentParser.
+Secondly, you can put the configuration into a xml file so that you can change it conveniently.
+
+```
+from aiharness.configuration import Arguments, XmlConfiguration
+
+config: Config = XmlConfiguration(Config).load(['configuration.xml'])
+arguments = Arguments(config)
+config: Config = arguments.parse()
+
+```
+
+
+
+
+
+%package help
+Summary: Development documents and examples for ai-harness
+Provides: python3-ai-harness-doc
+%description help
+# AI Harness
+
+## Introduction
+This project would like to supply some convenient tools for the machine learning and deep learning.
+Current features:
+- XMLConfiguration: for loading a configuration defined in xml files into a Python Object
+- Arguments: Mapping a Python Object to the arguments of argparse
+- inspector: Some convenient method for class/object
+- executors: Some convenient ProcessExecutor
+- fileutils: DirectoryNavigator, FileReadPipeLine
+- others:
+
+## Log
+- 2019.4.18, version: 0.3.0: Added distributed training tools for python
+- 2019.4.23, version: 0.3.5: Added a Json file Reader
+- 2019.4.24, version: 0.3.6: Added a data utils for processing data
+- 2019.4.26, version: 0.3.7 Added a data utils for processing data for zip file
+- 2019.4.28, version: 0.3.8 Added QueueExecutor
+
+## Examples
+### 1. XMLConfiguration
+##### (1) Define the configuration in xml file like:
+```xml
+<?xml version="1.0" encoding="UTF-8" ?>
+<configuration>
+ <arg name="name" default="TestName" help="Name Test Help"/>
+ <arg name="age" default="20" help="Age Test Help"/>
+ <group name="address">
+ <arg name="home" default="shanghai" help="Home test Help"/>
+ <arg name="phone" default="136" help="Phone test Help"/>
+ </group>
+ <group name="education">
+ <arg name="school" default="beijing" help="school test Help"/>
+ <arg name="grade" default="master" help="grade test Help"/>
+ </group>
+</configuration>
+```
+you can define multiple xml configuration files, and if the name is same, the value of the later will cover the previous.
+#### (3) Define the configuration class like:
+```
+from aiharness.configuration import configclass,field
+
+@configclass
+class Address:
+ phone: int = field(139, "phone help")
+ home: str = field("beijing", "phone help")
+
+
+@configclass
+class Education:
+ school: str = field('ustb', "phone help")
+ grade: str = field("master", "phone help")
+
+
+@configclass
+class Config:
+ name: str = field("test", "name help")
+ age: str = field(10, "age help")
+ address: Address = Address()
+ education: Education = Education()
+```
+#### (3) Load the xml configuration into python object as folling:
+```
+from aiharness.configuration import XmlConfiguration
+
+config:Config=XmlConfiguration(Config).load(['configuration1.xml','configuration2.xml'])
+```
+### Arguments Example
+Generally, we use argparse as following:
+```
+import argparse
+parser = argparse.ArgumentParser()
+parser.add_argument("--name",default='TEST',help='name help')
+parser.add_argument("--age",default=18,help='age help')
+arguments=parser.parse_args()
+```
+And you can got a arguments object.
+
+Here give an example showing how to load a xml configuration and set to argparse arguments and to parse the arguments into a object you defined.
+And here the Config Class and 'configuration.xml' are same with those of the Configuration example.
+
+Firstly, in fact, the Config Class instead of the codes of 'add_argument' of the argparse.ArgumentParser.
+Secondly, you can put the configuration into a xml file so that you can change it conveniently.
+
+```
+from aiharness.configuration import Arguments, XmlConfiguration
+
+config: Config = XmlConfiguration(Config).load(['configuration.xml'])
+arguments = Arguments(config)
+config: Config = arguments.parse()
+
+```
+
+
+
+
+
+%prep
+%autosetup -n ai-harness-0.4.32
+
+%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-ai-harness -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 0.4.32-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..badcf35
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+485116891fa48d36e6656883af5b6161 ai-harness-0.4.32.tar.gz