Skip to main content

Input and output processing for IBM Granite models

Project description

granite-common

Python library that provides enhanced prompt creation and output parsing for IBM Granite models.

Installation

To install from the main development branch, type:

pip install git+https://github.com/ibm-granite/granite-common.git

Developer setup

For compatibility with different underlying operating system versions, we recommend using conda to create a consistent base Python environment for development and testing.

Detailed instructions:

  1. Install MiniForge or another package that provides the conda command-line utility.
  2. Set the environment variable CONDA_HOME to point to the root of your conda install. If you installed MiniForge in your home directory, this value should be ${HOME}/miniforge3.
  3. Check out a copy of this repository.
  4. Run the script scripts/env.sh from the root of your local copy of the repository. The script will create a Conda environment in ./env and will install the source code of your local copy as an editable Pip package. The script will also install and enable pre-commit hooks with pre-commit.
  5. Before running commands such as python or jupyter from the command line, activate the Conda environment by typing conda activate ./env from the root of your local copy of this repository.
  6. If you are using Visual Studio Code or a similar IDE, configure your IDE to use the environment at ./env

Running tests

After following the instructions in the previous section, you should be able to run tests on your local machine by typing:

pytest tests

from the root of your local copy of this repository, using the conda environment described in the previous section.

The build automation for this project uses the tox environment manager. Sometimes you will need to run tests from inside a tox managed environment to replicate issues from the continuous integration environment. To run tests with tox, activate the Python environment ./env created earlier, then choose from among the following:

  • Run regression tests: tox -e unit
  • Run pylint checks: tox -e lint
  • Run ruff formatter: tox -e format
  • Run a full continuous integration suite: tox

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

granite_common-0.1.0.tar.gz (58.3 kB view details)

Uploaded Source

Built Distribution

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

granite_common-0.1.0-py3-none-any.whl (46.4 kB view details)

Uploaded Python 3

File details

Details for the file granite_common-0.1.0.tar.gz.

File metadata

  • Download URL: granite_common-0.1.0.tar.gz
  • Upload date:
  • Size: 58.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for granite_common-0.1.0.tar.gz
Algorithm Hash digest
SHA256 789890ed09c4270d9a528fc190f8763b71f7d49e681b673d8bb69558ae1e40ee
MD5 a07dc7e069e4dd82cfc6c57fa41880d1
BLAKE2b-256 72355af9b04d3e383ac8ca6fcb34dbd917802f07e29f7a856e775188dcd66a1c

See more details on using hashes here.

Provenance

The following attestation bundles were made for granite_common-0.1.0.tar.gz:

Publisher: pypi.yml on ibm-granite/granite-common

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file granite_common-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: granite_common-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 46.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for granite_common-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4eda20ec5d9be651401c835b313aa65023864854bd243c77805443d141144bf1
MD5 9a4528d112338becd7f0e64bd001d6b6
BLAKE2b-256 83f50681a36f132678b4f0b9f9f66b23f9feeaa380135a6311e7f5710721ae37

See more details on using hashes here.

Provenance

The following attestation bundles were made for granite_common-0.1.0-py3-none-any.whl:

Publisher: pypi.yml on ibm-granite/granite-common

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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