summaryrefslogtreecommitdiff
path: root/python-bavard-ml-utils.spec
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-18 03:42:15 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-18 03:42:15 +0000
commitf4d9bcbc1fdc082e17d2c45af3415cd208302ba9 (patch)
treeed26e1716304eeb3f825ee5eeebad330c1e7d7e4 /python-bavard-ml-utils.spec
parenta75b3c3ebb1e78eae456f139f49d49f6845f7255 (diff)
automatic import of python-bavard-ml-utils
Diffstat (limited to 'python-bavard-ml-utils.spec')
-rw-r--r--python-bavard-ml-utils.spec306
1 files changed, 306 insertions, 0 deletions
diff --git a/python-bavard-ml-utils.spec b/python-bavard-ml-utils.spec
new file mode 100644
index 0000000..1153eb0
--- /dev/null
+++ b/python-bavard-ml-utils.spec
@@ -0,0 +1,306 @@
+%global _empty_manifest_terminate_build 0
+Name: python-bavard-ml-utils
+Version: 0.2.10
+Release: 1
+Summary: Utilities for machine learning, python web services, and cloud infrastructure
+License: MIT
+URL: https://github.com/bavard-ai/bavard-ml-utils
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/b2/95/d76f45db18ecbf1cd50fe9bfac5164fc97b3e2ec87a8c45dd8c1cb7b3eaa/bavard-ml-utils-0.2.10.tar.gz
+BuildArch: noarch
+
+Requires: python3-fastapi
+Requires: python3-pydantic
+Requires: python3-numpy
+Requires: python3-scikit-learn
+Requires: python3-networkx
+Requires: python3-requests
+Requires: python3-loguru
+Requires: python3-google-cloud-storage
+Requires: python3-google-cloud-pubsub
+Requires: python3-google-cloud-error-reporting
+Requires: python3-google-cloud-firestore
+Requires: python3-boto3
+
+%description
+# bavard-ml-utils
+
+[![CircleCI Build Status](https://circleci.com/gh/bavard-ai/bavard-ml-utils/tree/main.svg?style=shield)](https://circleci.com/gh/bavard-ai/bavard-ml-utils/tree/main)
+[![PyPI Version](https://badge.fury.io/py/bavard-ml-utils.svg)](https://badge.fury.io/py/bavard-ml-utils)
+[![PyPI Downloads](https://pepy.tech/badge/bavard-ml-utils)](https://pepy.tech/project/bavard-ml-utils)
+[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/bavard-ml-utils)](https://pypi.org/project/bavard-ml-utils/)
+[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
+
+A package of common code and utilities for machine learning and MLOps. Includes classes and methods for:
+
+1. ML model serialization/deserialization
+2. Google Cloud Storage IO operations
+3. Converting a ML model into a runnable web service
+4. Common ML model evaluation utilities
+5. Common data structures/models used across the Bavard AI organization
+6. ML model artifact persistence and version management
+7. And more
+
+This package maintains common data structures used across our organization. They can all be found in the `bavard_ml_utils.types` sub-package, and are all [Pydantic](https://pydantic-docs.helpmanual.io/) data models. For example the `bavard_ml_utils.types.agent.AgentConfig` class represents a chatbot's configuration and training data, and is used heavily across Bavard.
+
+API docs for this package can be found [here](https://docs-bavard-ml-utils.web.app/).
+
+## Getting Started
+
+To begin using the package, use your favorite package manager to install it from PyPi. For example, using pip:
+
+```
+pip install bavard-ml-utils
+```
+
+Some of the features in this repo require more heavy weight dependencies, like Google Cloud Platform related utilities, or utilities specific to machine-learning. If you try to import those features, they will tell you if you do not have the correct package extra installed. For example, many of the features in the `bavard_ml_utils.gcp` sub-package require the `gcp` extra. To install `bavard-ml-utils` with that extra:
+
+```
+pip install bavard-ml-utils[gcp]
+```
+
+You can then begin using any package features that require GCP dependencies.
+
+## Developing Locally
+
+Before making any new commits or pull requests, please complete these steps.
+
+1. Install the Poetry package manager for Python if you do not already have it. Installation instructions can be found [here](https://python-poetry.org/docs/#installation).
+2. Clone the project:
+ ```
+ git clone https://github.com/bavard-ai/bavard-ml-utils.git
+ cd bavard-ml-utils
+ ```
+3. Install the dependencies, including all dev dependencies and extras:
+ ```
+ poetry install --extras "gcp ml"
+ ```
+4. Install the pre-commit hooks, so they will run before each local commit. This includes linting, auto-formatting, and import sorting:
+ ```
+ pre-commit install
+ ```
+
+## Testing Locally
+
+With Docker and docker-compose installed, run this script from the project root:
+
+```
+./scripts/lint-and-test-package.sh
+```
+
+## Releasing The Package
+
+Releasing the package is automatically handled by CI, but three steps must be taken to trigger a successful release:
+
+1. Use Poetry's [`version` command](https://python-poetry.org/docs/cli/#version) to bump the package's version.
+2. Commit and tag the repo with the exact same version the package was bumped to, e.g. `1.0.0` (note there is no preceding `v`.)
+3. Push the commit and tag to remote. These can be done together using: `git push --atomic origin <branch name> <tag>`
+
+CI will then build release the package to pypi with that version once the commit and tag are pushed.
+
+
+%package -n python3-bavard-ml-utils
+Summary: Utilities for machine learning, python web services, and cloud infrastructure
+Provides: python-bavard-ml-utils
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-bavard-ml-utils
+# bavard-ml-utils
+
+[![CircleCI Build Status](https://circleci.com/gh/bavard-ai/bavard-ml-utils/tree/main.svg?style=shield)](https://circleci.com/gh/bavard-ai/bavard-ml-utils/tree/main)
+[![PyPI Version](https://badge.fury.io/py/bavard-ml-utils.svg)](https://badge.fury.io/py/bavard-ml-utils)
+[![PyPI Downloads](https://pepy.tech/badge/bavard-ml-utils)](https://pepy.tech/project/bavard-ml-utils)
+[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/bavard-ml-utils)](https://pypi.org/project/bavard-ml-utils/)
+[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
+
+A package of common code and utilities for machine learning and MLOps. Includes classes and methods for:
+
+1. ML model serialization/deserialization
+2. Google Cloud Storage IO operations
+3. Converting a ML model into a runnable web service
+4. Common ML model evaluation utilities
+5. Common data structures/models used across the Bavard AI organization
+6. ML model artifact persistence and version management
+7. And more
+
+This package maintains common data structures used across our organization. They can all be found in the `bavard_ml_utils.types` sub-package, and are all [Pydantic](https://pydantic-docs.helpmanual.io/) data models. For example the `bavard_ml_utils.types.agent.AgentConfig` class represents a chatbot's configuration and training data, and is used heavily across Bavard.
+
+API docs for this package can be found [here](https://docs-bavard-ml-utils.web.app/).
+
+## Getting Started
+
+To begin using the package, use your favorite package manager to install it from PyPi. For example, using pip:
+
+```
+pip install bavard-ml-utils
+```
+
+Some of the features in this repo require more heavy weight dependencies, like Google Cloud Platform related utilities, or utilities specific to machine-learning. If you try to import those features, they will tell you if you do not have the correct package extra installed. For example, many of the features in the `bavard_ml_utils.gcp` sub-package require the `gcp` extra. To install `bavard-ml-utils` with that extra:
+
+```
+pip install bavard-ml-utils[gcp]
+```
+
+You can then begin using any package features that require GCP dependencies.
+
+## Developing Locally
+
+Before making any new commits or pull requests, please complete these steps.
+
+1. Install the Poetry package manager for Python if you do not already have it. Installation instructions can be found [here](https://python-poetry.org/docs/#installation).
+2. Clone the project:
+ ```
+ git clone https://github.com/bavard-ai/bavard-ml-utils.git
+ cd bavard-ml-utils
+ ```
+3. Install the dependencies, including all dev dependencies and extras:
+ ```
+ poetry install --extras "gcp ml"
+ ```
+4. Install the pre-commit hooks, so they will run before each local commit. This includes linting, auto-formatting, and import sorting:
+ ```
+ pre-commit install
+ ```
+
+## Testing Locally
+
+With Docker and docker-compose installed, run this script from the project root:
+
+```
+./scripts/lint-and-test-package.sh
+```
+
+## Releasing The Package
+
+Releasing the package is automatically handled by CI, but three steps must be taken to trigger a successful release:
+
+1. Use Poetry's [`version` command](https://python-poetry.org/docs/cli/#version) to bump the package's version.
+2. Commit and tag the repo with the exact same version the package was bumped to, e.g. `1.0.0` (note there is no preceding `v`.)
+3. Push the commit and tag to remote. These can be done together using: `git push --atomic origin <branch name> <tag>`
+
+CI will then build release the package to pypi with that version once the commit and tag are pushed.
+
+
+%package help
+Summary: Development documents and examples for bavard-ml-utils
+Provides: python3-bavard-ml-utils-doc
+%description help
+# bavard-ml-utils
+
+[![CircleCI Build Status](https://circleci.com/gh/bavard-ai/bavard-ml-utils/tree/main.svg?style=shield)](https://circleci.com/gh/bavard-ai/bavard-ml-utils/tree/main)
+[![PyPI Version](https://badge.fury.io/py/bavard-ml-utils.svg)](https://badge.fury.io/py/bavard-ml-utils)
+[![PyPI Downloads](https://pepy.tech/badge/bavard-ml-utils)](https://pepy.tech/project/bavard-ml-utils)
+[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/bavard-ml-utils)](https://pypi.org/project/bavard-ml-utils/)
+[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
+
+A package of common code and utilities for machine learning and MLOps. Includes classes and methods for:
+
+1. ML model serialization/deserialization
+2. Google Cloud Storage IO operations
+3. Converting a ML model into a runnable web service
+4. Common ML model evaluation utilities
+5. Common data structures/models used across the Bavard AI organization
+6. ML model artifact persistence and version management
+7. And more
+
+This package maintains common data structures used across our organization. They can all be found in the `bavard_ml_utils.types` sub-package, and are all [Pydantic](https://pydantic-docs.helpmanual.io/) data models. For example the `bavard_ml_utils.types.agent.AgentConfig` class represents a chatbot's configuration and training data, and is used heavily across Bavard.
+
+API docs for this package can be found [here](https://docs-bavard-ml-utils.web.app/).
+
+## Getting Started
+
+To begin using the package, use your favorite package manager to install it from PyPi. For example, using pip:
+
+```
+pip install bavard-ml-utils
+```
+
+Some of the features in this repo require more heavy weight dependencies, like Google Cloud Platform related utilities, or utilities specific to machine-learning. If you try to import those features, they will tell you if you do not have the correct package extra installed. For example, many of the features in the `bavard_ml_utils.gcp` sub-package require the `gcp` extra. To install `bavard-ml-utils` with that extra:
+
+```
+pip install bavard-ml-utils[gcp]
+```
+
+You can then begin using any package features that require GCP dependencies.
+
+## Developing Locally
+
+Before making any new commits or pull requests, please complete these steps.
+
+1. Install the Poetry package manager for Python if you do not already have it. Installation instructions can be found [here](https://python-poetry.org/docs/#installation).
+2. Clone the project:
+ ```
+ git clone https://github.com/bavard-ai/bavard-ml-utils.git
+ cd bavard-ml-utils
+ ```
+3. Install the dependencies, including all dev dependencies and extras:
+ ```
+ poetry install --extras "gcp ml"
+ ```
+4. Install the pre-commit hooks, so they will run before each local commit. This includes linting, auto-formatting, and import sorting:
+ ```
+ pre-commit install
+ ```
+
+## Testing Locally
+
+With Docker and docker-compose installed, run this script from the project root:
+
+```
+./scripts/lint-and-test-package.sh
+```
+
+## Releasing The Package
+
+Releasing the package is automatically handled by CI, but three steps must be taken to trigger a successful release:
+
+1. Use Poetry's [`version` command](https://python-poetry.org/docs/cli/#version) to bump the package's version.
+2. Commit and tag the repo with the exact same version the package was bumped to, e.g. `1.0.0` (note there is no preceding `v`.)
+3. Push the commit and tag to remote. These can be done together using: `git push --atomic origin <branch name> <tag>`
+
+CI will then build release the package to pypi with that version once the commit and tag are pushed.
+
+
+%prep
+%autosetup -n bavard-ml-utils-0.2.10
+
+%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-bavard-ml-utils -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Thu May 18 2023 Python_Bot <Python_Bot@openeuler.org> - 0.2.10-1
+- Package Spec generated