Metadata-Version: 2.1
Name: chaincrafter
Version: 0.2.1
Summary: Seamless integration and composability for large language model apps.
Home-page: https://github.com/rudolfolah/chaincrafter
Author: Rudolf Olah
Author-email: Rudolf Olah <rudolf.olah.to@gmail.com>
Project-URL: Homepage, https://rudolfolah.github.io/chaincrafter/
Project-URL: Bug Tracker, https://github.com/rudolfolah/chaincrafter/issues
Project-URL: Repository, https://github.com/rudolfolah/chaincrafter
Keywords: machine learning,ai,openai,llama,ml,gpt-4,gpt-3.5
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Topic :: Other/Nonlisted Topic
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE

# chaincrafter - Python

## Local Development

```bash
python -m venv ./venv
source ./venv/bin/activate
pip install -r requirements.txt
```

To test different models, install the packages required, for example with OpenAI, run `pip install openai`.

The imports for the models should be part of the `__init__` or the `complete` method of the `ChatModel` class.

## Build and Publish

* [Update classifiers in `pyproject.toml` and `setup.py`](https://pypi.org/classifiers/)
* [Update project metadata](https://packaging.python.org/en/latest/specifications/declaring-project-metadata/#declaring-project-metadata)
* [Create an API token](https://pypi.org/manage/account/)
  * Set your username to `__token__`
  * Set your password to the token value, including the `pypi-` prefix 

```bash
cd /path/to/chaincrafter/python
pip install build
python -m build

pip install twine
# test upload
twine upload -r testpypi dist/*

# upload
twine upload dist/*
```

### Testing in another package

```bash
python setup.py sdist
# install the package in another project
pip install /path/to/chaincrafter/python/dist/chaincrafter-0.1.0.tar.gz
```
