Skip to content

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

License

Notifications You must be signed in to change notification settings

jakelorocco/granite-common

 
 

Repository files navigation

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 ruff
  • Run a full continuous integration suite: tox

About

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

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Jupyter Notebook 51.7%
  • Python 47.8%
  • Shell 0.5%