Skip to main content

Utilities for machine learning, web services, and cloud infrastructure.

Project description

lifeomic-chatbot-tools

Python utilities for machine learning, web services, and cloud infrastructure. Includes classes and methods for:

  1. ML model serialization/deserialization
  2. ML model evaluation utilities
  3. Data structures/models related to chatbots
  4. ML model artifact persistence and version management
  5. And more

The data structures in this package can all be found in the lifeomic_chatbot_tools.types sub-package, and are all Pydantic data models. For example the lifeomic_chatbot_tools.types.agent.AgentConfig class represents a chatbot's configuration and training data.

Getting Started

To begin using the package, use your favorite package manager to install it from PyPi. For example, using pip:

pip install lifeomic-chatbot-tools

Some of the features in this repo require more heavy weight dependencies, like AWS 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 lifeomic_chatbot_tools.ml sub-package require the ml extra. To install lifeomic-chatbot-tools with that extra:

pip install lifeomic-chatbot-tools[ml]

You can then begin using any package features that require ML 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.
  2. Clone the project.
  3. From the root directory of the repo, install the dependencies, including all dev dependencies and extras:
    poetry install --all-extras
    

Testing Locally

With Yarn, Docker, and docker-compose installed, run this command from the project root:

poetry run poe ci

This will build the project, lint it, and run the unit tests and integration tests. All those steps can be run individually as well. See the scripts in the pyproject.toml file for the command names.

MacOS Users

When developing using MacOS, it is recommended to use a dev container. This project supports VS Code dev containers out of the box.

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 to bump the package's version.
  2. Update the CHANGELOG file with the latest changes added under the new version.
  3. Open a PR. When it's merged to master, the release will happen automatically.

CI will then build and release the package to pypi with that version once the PR is merged to master.

Project details


Download files

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

Source Distribution

lifeomic_chatbot_tools-9.0.0.tar.gz (29.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lifeomic_chatbot_tools-9.0.0-py3-none-any.whl (38.5 kB view details)

Uploaded Python 3

File details

Details for the file lifeomic_chatbot_tools-9.0.0.tar.gz.

File metadata

  • Download URL: lifeomic_chatbot_tools-9.0.0.tar.gz
  • Upload date:
  • Size: 29.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.2 CPython/3.12.3 Linux/6.8.0-1021-azure

File hashes

Hashes for lifeomic_chatbot_tools-9.0.0.tar.gz
Algorithm Hash digest
SHA256 43275ae6246462bd81f2229902f15cb2b45b1c0beae54ad169b6a8998a0e11e9
MD5 f9b54806db5744ea14d7ce2b77e763d7
BLAKE2b-256 814d311d2bb0674d49a1519f2173417f885b76c015bfb554e38c75790b8af63f

See more details on using hashes here.

File details

Details for the file lifeomic_chatbot_tools-9.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for lifeomic_chatbot_tools-9.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 27d0beecf8895b457be973c24d218fd9ff66d4916d3aa5730d28794c37da52cf
MD5 e85187fa5a01fed96d1f23b903f6a4ee
BLAKE2b-256 2bebd8d200b2ee70599ed4df1d0efaf5edf583ba490027ca1b73735cf7ce98c7

See more details on using hashes here.

Supported by

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