Easy Letters
Easy Letters is a Python library that provides the basic building blocks for creating a naive retrieval augmented generation (or RAG) pipeline to generate application letter drafts. The main idea is to speed up the process of writing application letters by not starting from scratch. Instead, an applicant could generate a draft letter that can be used as a starting point and customized as needed to make the final letter.
The diagram below shows the workflow of the naive RAG pipeline that the current version of Easy Letters can be used to implement.
[!NOTE] At the moment, Easy Letters only supports text generation and text embedding models from OpenAI. However, the library is designed to be extensible, so more features and models can be added in the future versions.
Installation
pip install easy-letters
Installing from Source
You can also install Easy Letters from the source code in this repository. The main benefit of this approach is that you might find it easier to run the sample notebooks and modify the code as you wish this way.
After cloning this repository, you can navigate to the directory where you cloned the repository and install the dependencies using Poetry:
git clone https://github.com/habedi/easy-letters.git && cd easy-letters
# Install the dependencies using Poetry
poetry install --with dev
Getting Started
API Key Setup
Easy Letters gets the API key for supported services (like OpenAI) from the environment variables. So you need to set the following environment variables to be able to use Easy Letters:
OPENAI_API_KEY: The OpenAI API key (required)
Sample Notebooks
You can find Jupyter notebooks with example code in the notebooks directory. The notebooks demonstrate how to use Easy Letters to generate application letter drafts.
Supported Models
Easy Letters currently supports the following models:
| Model | Type | Company |
|---|---|---|
| GPT-3.5 Turbo | Text Generation | OpenAI |
| GPT-4 Turbo | Text Generation | OpenAI |
| GPT-4o | Text Generation | OpenAI |
| GPT-4o Mini | Text Generation | OpenAI |
| Text Embedding 3 (Small Variant) | Text Embedding | OpenAI |
| Text Embedding 3 (Large Variant) | Text Embedding | OpenAI |
License
Easy Letters is available under the MIT license (LICENSE).
Metadata
Release files for easy-letters 0.1.9
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| easy_letters-0.1.9.tar.gz | 5.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| easy_letters-0.1.9-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 11.3 kB
Release files / easy_letters-0.1.9.tar.gz
| Download URL | easy_letters-0.1.9.tar.gz |
|---|---|
| Size | 5.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0c9bdc57cdf5958042d7144816156d43890dad696bf430d225a46410d7e2ce80
|
|
BLAKE2b-256 checksum How to use checksums |
67e6a79fb1f56887bfaf5edec7531ffbd1dc30332863523a06356db0dbf9b06b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.1 CPython/3.10.16 Linux/6.8.0-1021-azure
|
Release files / easy_letters-0.1.9-py3-none-any.whl
| Download URL | easy_letters-0.1.9-py3-none-any.whl |
|---|---|
| Size | 5.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a192863427a35e10916c437affbc936e91248d10af24fb28df46a07aa5261c16
|
|
BLAKE2b-256 checksum How to use checksums |
0746a82346e7fe4addd01b6eb98469d7243e886dfe465674b014a0a90a5d539d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.1 CPython/3.10.16 Linux/6.8.0-1021-azure
|