A versatile collection of CLI tools leveraging large language models
Project description
LLM-Toolbox
LLM-Toolbox is a collection of command-line tools that harness the power of large language models to perform various tasks. This repository houses scripts and tools that utilize OpenAI's ChatGPT for tasks such as automatic commit messages, dictionary and thesaurus queries, text translation, proofreading, enriching language learning, automating shell commands, and more.
Additionally, the toolbox provides a selection of prompt templates to help you get the most out of your interactions with the language models. Whether you're new to scripting with language models or an experienced developer, these templates can serve as an invaluable resource.
Given the wide-ranging capabilities of the LLM-Toolbox, it can be helpful to see it in action first. Therefore, I strongly suggest you check out the video demos of the tools to gain a hands-on understanding of their potential. After viewing the demos, you can return here for a deeper dive into the specific applications and benefits. So, go ahead, watch the demos! 😊
Table of Contents
- Prompt Templates
- Isn't the OpenAI API expensive?
- The Value of Investing in LLM-Toolbox
- Installation
- Getting Started
- Tools
- Prompt Templates
- License
Prompt Templates
If you're not a terminal-centric person, or if you prefer the web interface anyway, note that I prepared templates for ChatGPT web interface.
It's better to use the web interface if you plan on having very long chat interactions with GPT-4 (requires a ChatGPT Plus subscription, though). Otherwise it will cost you too much.
Isn't the OpenAI API expensive?
A lot of people are afraid that these tools will cost them too much. But the truth is, as long as you're not sending too many requests to GPT-4, you won't have exorbitant bills. On the contrary, this may surprise you, but I'm pretty confident that the majority of people won't exceed a cost of $3 per month, as long as they continue to use GPT-3.5, even if they use these tools more than a hundred times a day.
Also, there's a safeguard: you can configure a soft and a hard usage limit on your OpenAI account. This ensures that you won't ever be taken by surprise.
- Soft limit: You receive a notification email.
- Hard limit: Subsequent requests will be rejected.
The Value of Investing in LLM-Toolbox
Well... in giving your money to OpenAI, actually.
Even if you have a monthly expense of more than a dollar, it's well worth looking at looking at the huge benefits you'll receive from utilizing the tools in the LLM-Toolbox. These innovative solutions provide users with powerful capabilities that can significantly streamline tasks, improve productivity, and foster creativity.
Particularly, let's consider ShellGenius, a remarkable tool within the LLM-Toolbox. It enhances the command-line experience by translating task descriptions into efficient shell commands, a feat that not only saves time but also reduces the possibility of human error. This tool is extremely beneficial for both beginners, who may not be fluent in shell commands, and experienced users who can streamline their command-line tasks by simply describing what they wish to accomplish, and ShellGenius provides the correct shell command to achieve it.
Therefore, when considering the cost, it's essential to look beyond the immediate dollar value and evaluate the considerable time, effort, and resources you stand to save. The utility and value derived from such tools often outweigh the minimal monthly cost. The price of these tools should not be a deterrent but rather seen as an investment in enhancing your efficiency and productivity.
Is GPT-3.5 Sufficient for Those Tools?
GPT-3.5 is an excellent model for these tools, offering cost-effective solution that consistently delivers appropriate responses. I take great care in crafting my prompts and the tools to generate the best results that cater to my daily needs.
I will continue refining them, if necessary, as time goes on. So stay tuned to this repo and consider giving it a star ⭐!
You'll also be able to update the LLM-Toolbox directly from the CLI 😊.
Current Costs
At the time of writing (2023-06-17T13:35:56+02:00), these are the costs:
Model | Prompt Cost | Response Cost |
---|---|---|
gpt-3.5-turbo | $0.0015 / 1K | $0.002 / 1K |
gpt-3.5-turbo-16k | $0.003 / 1K | $0.004 / 1K |
gpt-4 | $0.03 / 1K | $0.06 / 1K |
gpt-4-32k | $0.06 / 1K | $0.12 / 1K |
Installation
pip
python3 -m pip install llm-toolbox
pipx
, the Easy Way
To use these tools, I recommend that you first install pipx. It's a package manager for Python that makes the installation and upgrade of CLI apps easy (no more hassle with virtual environment 😌).
-
Debian / Ubuntu
sudo apt install pipx
-
macOS
brew install pipx
Installing the LLM-Toolbox
To install the latest stable version of the LLM-Toolbox, simply run this command:
pipx install llm-toolbox
If you want to follow the main
branch:
pipx install git+https://github.com/sderev/llm-toolbox
To upgrade it:
pipx upgrade llm-toolbox
Cloning the LLM-Toolbox Repository
You can clone this repository with the following command:
git clone https://github.com/sderev/llm-toolbox.git
Getting Started
Set your OpenAI API key
LLM-Toolbox requires an OpenAI API key to function. You can obtain a key by signing up for an account at OpenAI's website.
You need to set some usage limit before to be able to use the API. You can configure on your OpenAI account in Billing -> Usage limits.
Once you have your API key, set it as an environment variable:
-
On macOS and Linux:
export OPENAI_API_KEY="your-api-key-here"
To avoid having to type it everyday, you can create a file with the key:
echo "your-api-key" > ~/.openai-api-key.txt
Note: Remember to replace
"your-api-key"
with your actual API key.And then, you can add this to your shell configuration file (
.bashrc
,.zshrc
, etc.):export OPENAI_API_KEY="$(cat ~/.openai-api-key.txt)"
-
On Windows:
setx OPENAI_API_KEY your_key
Tools
Instructions on how to use each of the tools are included in the individual directories under tools/. This is also where I give some tricks and tips on their usage 💡👀💭.
Here's a brief overview:
ShellGenius
ShellGenius is an intuitive CLI tool designed to enhance your command-line experience by turning your task descriptions into efficient shell commands. Check out the project on its dedicated repository.
VocabMaster
Master new languages with VocabMaster, a CLI tool designed to help you record vocabulary, access translations and examples, and seamlessly import them into Anki for an optimized language learning experience. Check out the project on its dedicated repository.
Thesaurus
The thesaurus
script takes a word or a phrase as input and provides a list of synonyms and antonyms.
Define
The define
script takes a word as input and provides its definition along with an example sentence using the word.
Proofread
The proofread
script takes a sentence as input and provides a corrected version of it, if needed, along with an explanation of the corrections.
Translate
The translate
script takes a sentence and a target language as input and provides the translated sentence in the target language.
Prompt Templates
In addition to the various tools provided, the LLM-Toolbox includes a collection of prompt templates in the prompts/
directory. These templates cover a wide range of scenarios and are designed to optimize your interaction with language models. They are an excellent starting point if you're not sure how to structure your prompts or if you're seeking to improve the effectiveness of your current prompts.
Please feel free to explore these templates and adapt them to suit your specific needs.
License
This project is licensed under the terms of the Apache License 2.0.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for LLM_Toolbox-0.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3a45388367013f92c9a3b5e815c4d600f742381a23ba59c4022951b50a8bc093 |
|
MD5 | 38b75a8f85eb9ac90da161b9c6c3c7ef |
|
BLAKE2b-256 | 4aea586bd2f131e13553b714307a32dd1b2c7edbde7ba42d6bd1d121f30298df |