Skip to main content

LLMail

Interact with Large Language Models (LLMs) via email. Watch the video

Features

  • Utilize any OpenAI-compatible API with any available model
    • At the time of writing, OpenRouter offers free access to specific models with an OpenAI-compatible API
    • Ollama has an OpenAI-compatible API and allows for easy local deployment of LLMs
  • Customize the behavior of the LLM with a system prompt
  • Easily run in a Docker container
    • The default docker-compose.yml file uses restart: unless-stopped to ensure the container restarts after a reboot or if it crashes
  • Check every n seconds
  • No need for a local database - uses IMAP
  • Use phidata for real-time information retrieval
    • Use Exa or DuckDuckGo for searching the internet
    • Get information from a URL when requested and understand it when requested

Prerequisites

General

  • Access to an OpenAI-compatible API (including locally hosted LLMs)
  • An email account that supports IMAP and SMTP

Python

  • Python ^3.11
  • Poetry (optional)

Docker

  • Docker

Usage

Installing from PyPi with pip (recommended)

This assumes you have the correct version of Python installed

  1. pip install llmail
    a. You may need to use pip3 instead of pip
  2. llmail

Installation from source or with Docker

Cloning the repository is not required when installing from PyPi but is required when installing from source

  1. Clone this repo with git clone https://github.com/slashtechno/llmail
  2. cd into the cloned repository
  3. Install and run with one of the following methods:

Poetry

  1. poetry install
  2. poetry run -- llmail

Docker

  1. Configure a .env file (see Configuration below)
    a. You can also edit the docker-compose.yml file directly but by default it loads the .env file
  2. docker compose up -d

Configuration

To configure the program, either use CLI flags (--help for more information) or environment variables (view .env.example for more information). It is recommended to just copy .env.example to .env and fill in the necessary information.

Interacting with the LLM

Once the program is running, you can send an email to the address you configured with whatever the subject is set to. The body of the email will be sent to the LLM, and the response will be sent back to you.
For example, if in .env you set SUBJECT_KEY=llmail, you would send an email with the subject llmail to the configured email address.

How to uninstall

  • If you used pip, run pip uninstall llmail
  • If you used Poetry, just delete the virtual environment and then the cloned repository
  • If you used Docker, run docker compose down in the cloned repository and then delete the cloned repository

Metadata

Release files for llmail 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for llmail 0.3.0
File Size Uploaded
llmail-0.3.0.tar.gz 24.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for llmail 0.3.0
File Interpreter ABI Platform
llmail-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 51.4 kB

Release files / llmail-0.3.0.tar.gz

Download URL llmail-0.3.0.tar.gz
Size 24.4 kB
Tags Source
SHA-256 checksum
How to use checksums
a4b43c3c71231cd53227d08f659caffc86e0d909f282e844d3f497e3b2b54acd
BLAKE2b-256 checksum
How to use checksums
6b858b7ee596cd42acf45e298b1e53d0d322aee363e064a326568bf06953d9ef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.2 CPython/3.12.2 Windows/11

Release files / llmail-0.3.0-py3-none-any.whl

Download URL llmail-0.3.0-py3-none-any.whl
Size 27.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
919b1f4b6fc721559edd4820a52b8ad7dc153c98e6274e89d2c9bc54263540b8
BLAKE2b-256 checksum
How to use checksums
f11305af282924815890787e83cb084c22e28b950f6eb0e0e7c4010a09737db7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.2 CPython/3.12.2 Windows/11

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page