Metadata-Version: 2.4
Name: syndisco
Version: 2.1.3
Summary: Automated experiment creation and execution using LLM agents
Project-URL: Homepage, https://github.com/dimits-ts/synthetic_discussion_framework
Project-URL: Issues, https://github.com/dimits-ts/synthetic_discussion_framework/issues
Author-email: Dimitris Tsirmpas <dim.tsirmpas@aueb.gr>
License-Expression: GPL-3.0
License-File: LICENSE
Keywords: discussion,gpt,large language models,llm,llm agents,llms,local,openai,self-hosting,synthetic
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: GPU :: NVIDIA CUDA
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Software Development :: Version Control :: Git
Classifier: Typing :: Typed
Requires-Python: >=3.12
Requires-Dist: accelerate>=0.26.0
Requires-Dist: bitsandbytes
Requires-Dist: coloredlogs
Requires-Dist: openai
Requires-Dist: pandas
Requires-Dist: torch
Requires-Dist: tqdm
Requires-Dist: transformers
Provides-Extra: dev
Requires-Dist: build; extra == 'dev'
Requires-Dist: ipykernel; extra == 'dev'
Requires-Dist: ipywidgets; extra == 'dev'
Requires-Dist: myst-parser; extra == 'dev'
Requires-Dist: nbsphinx; extra == 'dev'
Requires-Dist: pandoc; extra == 'dev'
Requires-Dist: pytest; extra == 'dev'
Requires-Dist: sphinx; extra == 'dev'
Requires-Dist: sphinx-autobuild; extra == 'dev'
Requires-Dist: sphinx-rtd-theme; extra == 'dev'
Requires-Dist: twine; extra == 'dev'
Description-Content-Type: text/markdown

# SynDisco: Automated experiment creation and execution using only LLM agents

![Syndisco Logo](./docs/source/logo.svg)

A lightweight, simple and specialized library used for creating, storing, annotating and analyzing synthetic discussions between Large Language Model (LLM) user-agents. 

Unlike other libraries attempting to streamline LLM interactions, syndisco:
- Does not load any VRAM modules except for the underlying LLM
- Does not run any prompts on the LLM other than the prompt to speak in the discussion
- Has a very simple and easy-to-learn API
- Allows the use of local LLMs (although support for proprietary models is being added)
- Is completely free and open source
- Is finetuned for heavy server-side use and multi-day computations with limited resources.

## Description and Usage

Have a look at the [online documentation](https://dimits-ts.github.io/syndisco/) for high-level descriptions, API documentation, and tutorials.


## Installation

You can download the package from PIP:

```bash
pip install syndisco
```

Or build from source:
```bash
git clone https://github.com/dimits-ts/syndisco.git
cd syndisco
pip install .
```

If you want to contribute to the project, or modify the library's code you may use:
```bash
git clone https://github.com/dimits-ts/syndisco.git
cd syndisco
pip install -e .[dev]
```
