Metadata-Version: 2.4
Name: pawnai-matrix
Version: 0.2.0
Summary: A matrix bot named Bob
Author-email: Davide Dal Farra <davide@codref.org>
Project-URL: Bug Tracker, https://gitlab.com/codref/matrix-bob/-/issues
Project-URL: Website, https://codref.org
Keywords: matrix,openai,bot
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3 :: Only
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: matrix-nio[e2e]>=0.24.0
Requires-Dist: Markdown>=3.6
Requires-Dist: PyYAML>=6.0.1
Requires-Dist: Jinja2
Requires-Dist: sqlalchemy
Requires-Dist: alembic
Requires-Dist: pillow
Requires-Dist: openai
Requires-Dist: docopt
Requires-Dist: typer
Requires-Dist: arrow
Requires-Dist: python_magic
Requires-Dist: nest_asyncio
Requires-Dist: pytz
Requires-Dist: apscheduler
Requires-Dist: psycopg2-binary
Requires-Dist: pydantic-settings>=2.0.0
Dynamic: license-file

# Matrix BOB

A Matrix https://matrix.org/ **bot** to experiment with autoregressive LLMs.  
The project aims at providing a usable instrument capable of carrying out any sort of activity which can help the other people in the Matrix room Bob joined. Among the various features we can highlight:

* remember things storing indexed documents on Qdrant vector database
* search for stuff over uploaded documents
* scrape the web and summarize the content
* schedule recurring tasks based on LLM queries
* transcribe audio messages and use them for both augmenting Bob knowledge or interact with him.

## Install

```bash 
python -m venv .venv
. ./.venv/bin/activate
pip install .
```

## Development

```bash
pip install --editable .
```

## Run 

Bob requires a Qdrant server instance; the `docker` directory contains an example `docker-compose.yml` file which can be just launched.  
A Dockerized version of Bob is not yet available.  

The `config.yaml` file must be configured as well!

```
./bin/bob
```

## Run database migration

```
alembic upgrade head
```

## Open source and how to contribute

The project is at its early stage, therefore I'd not suggest to push any valuable information yet, but anybody can contribute, just follow the contributing guidelines!  

### Thanks to

* matrix-nio library https://github.com/matrix-nio/matrix-nio
* nio-template project https://github.com/anoadragon453/nio-template


