Metadata-Version: 2.4
Name: wags_llm
Version: 0.1.0
Summary: Wagnerds toolkit for structured LLM workflows
Author-email: Kori Kuzma <kori.kuzma@nationwidechildrens.org>
License-Expression: MIT
Project-URL: Homepage, https://github.com/genomicmedlab/wags_llm
Project-URL: Documentation, https://github.com/genomicmedlab/wags_llm
Project-URL: Changelog, https://github.com/genomicmedlab/wags_llm/releases
Project-URL: Source, https://github.com/genomicmedlab/wags_llm
Project-URL: Bug Tracker, https://github.com/genomicmedlab/wags_llm/issues
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: Intended Audience :: Developers
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pydantic==2.*
Requires-Dist: boto3
Provides-Extra: tests
Requires-Dist: pytest; extra == "tests"
Requires-Dist: pytest-cov; extra == "tests"
Provides-Extra: dev
Requires-Dist: prek>=0.2.23; extra == "dev"
Requires-Dist: ruff==0.14.10; extra == "dev"
Dynamic: license-file

# wags-llm

[![image](https://img.shields.io/pypi/v/wags_llm.svg)](https://pypi.python.org/pypi/wags_llm)
[![image](https://img.shields.io/pypi/l/wags_llm.svg)](https://pypi.python.org/pypi/wags_llm)
[![image](https://img.shields.io/pypi/pyversions/wags_llm.svg)](https://pypi.python.org/pypi/wags_llm)
[![Actions status](https://github.com/genomicmedlab/wags_llm/actions/workflows/checks.yaml/badge.svg)](https://github.com/genomicmedlab/wags_llm/actions/checks.yaml)

**Wagnerds toolkit for structured LLM workflows.**

Run LLM tasks with:

- versioned prompts
- typed (Pydantic) outputs
- optional caching

Extend by defining your own prompts and response models

---

## Installation

Wags-LLM is available on [PyPI](https://pypi.org/project/wags_llm):

```shell
python3 -m pip install wags_llm
```

---

## Example

See our [Example Notebook](./notebooks/example.ipynb) for an example on how to use
Wags-LLM.

---

## Development

Clone the repo and create a virtual environment:

```shell
git clone https://github.com/genomicmedlab/wags_llm
cd wags_llm
python3 -m virtualenv venv
source venv/bin/activate
```

Install development dependencies and `prek`:

```shell
python3 -m pip install -e '.[dev,tests]'
prek install
```

Check style with `ruff`:

```shell
python3 -m ruff format . && python3 -m ruff check --fix .
```

Run tests with `pytest`:

```shell
pytest
```
