gearsllm


Namegearsllm JSON
Version 0.1.28 PyPI version JSON
download
home_pageNone
SummaryLightweight library for building LLM-based control flow.
upload_time2024-04-24 03:52:55
maintainerNone
docs_urlNone
authorShreya Shankar
requires_python<4.0,>=3.9
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Welcome to Gears

Gears is a lightweight tool for writing control flow with LLMs with **full control over your prompts**. It allows you to build complex chains of actions and conditions, and execute them in a single call.

## Why Gears?

Gears is so minimal; it is simply a wrapper around an LLM API call that:

- Allows you to specify your prompts as [Jinja templates](https://jinja.palletsprojects.com/en/3.1.x/) and inputs as [Pydantic models](https://docs.pydantic.dev/latest/)
- Automatically handles LLM API failures with [exponential backoff](https://tenacity.readthedocs.io/en/latest/)
- Allows you to specify control flow, based on LLM responses, in a simple, declarative way

But the real selling point is that _we are committed to **not** growing the codebase beyond what is necessary to support the above features._ (We are not venture-backed and do not intend to be.)

## Installation

Gears is available on PyPI, and can be installed with pip:

```bash
pip install gearsllm
```

## Dependencies

Gears has the following dependencies:

- `python>=3.9`
- `pydantic`
- `jinja2`
- `tenacity`
- `openai`

## ToDos

- [ ] Add pre-commit hooks with black & isort

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "gearsllm",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.9",
    "maintainer_email": null,
    "keywords": null,
    "author": "Shreya Shankar",
    "author_email": "ss.shankar505@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/19/12/08ef29888413bc2b66bb1c323da23d7caf25e674046b1b4226b46cf7d34c/gearsllm-0.1.28.tar.gz",
    "platform": null,
    "description": "# Welcome to Gears\n\nGears is a lightweight tool for writing control flow with LLMs with **full control over your prompts**. It allows you to build complex chains of actions and conditions, and execute them in a single call.\n\n## Why Gears?\n\nGears is so minimal; it is simply a wrapper around an LLM API call that:\n\n- Allows you to specify your prompts as [Jinja templates](https://jinja.palletsprojects.com/en/3.1.x/) and inputs as [Pydantic models](https://docs.pydantic.dev/latest/)\n- Automatically handles LLM API failures with [exponential backoff](https://tenacity.readthedocs.io/en/latest/)\n- Allows you to specify control flow, based on LLM responses, in a simple, declarative way\n\nBut the real selling point is that _we are committed to **not** growing the codebase beyond what is necessary to support the above features._ (We are not venture-backed and do not intend to be.)\n\n## Installation\n\nGears is available on PyPI, and can be installed with pip:\n\n```bash\npip install gearsllm\n```\n\n## Dependencies\n\nGears has the following dependencies:\n\n- `python>=3.9`\n- `pydantic`\n- `jinja2`\n- `tenacity`\n- `openai`\n\n## ToDos\n\n- [ ] Add pre-commit hooks with black & isort\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Lightweight library for building LLM-based control flow.",
    "version": "0.1.28",
    "project_urls": null,
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f37619c6f2074568ef3a5af60cf224dbcbd4ede6d6cf8f76d8e5e8fa6a5ddf34",
                "md5": "916534655066e215324c1fa5a0e9f7c3",
                "sha256": "d2916464ea0c3496433ec7e42e83c06a32bd58a475f2e012b559bc0b189e2ce7"
            },
            "downloads": -1,
            "filename": "gearsllm-0.1.28-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "916534655066e215324c1fa5a0e9f7c3",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.9",
            "size": 9836,
            "upload_time": "2024-04-24T03:52:53",
            "upload_time_iso_8601": "2024-04-24T03:52:53.728191Z",
            "url": "https://files.pythonhosted.org/packages/f3/76/19c6f2074568ef3a5af60cf224dbcbd4ede6d6cf8f76d8e5e8fa6a5ddf34/gearsllm-0.1.28-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "191208ef29888413bc2b66bb1c323da23d7caf25e674046b1b4226b46cf7d34c",
                "md5": "6e869dc6646437462e27f7cdb75f05e2",
                "sha256": "0e9621e729a20d9b7a861c7e9c8d08d6a100caaf3f7bfc9f96c1cb6e47281c1e"
            },
            "downloads": -1,
            "filename": "gearsllm-0.1.28.tar.gz",
            "has_sig": false,
            "md5_digest": "6e869dc6646437462e27f7cdb75f05e2",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.9",
            "size": 8297,
            "upload_time": "2024-04-24T03:52:55",
            "upload_time_iso_8601": "2024-04-24T03:52:55.390968Z",
            "url": "https://files.pythonhosted.org/packages/19/12/08ef29888413bc2b66bb1c323da23d7caf25e674046b1b4226b46cf7d34c/gearsllm-0.1.28.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-24 03:52:55",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "gearsllm"
}
        
Elapsed time: 1.37198s