GPTerminator 🤖 - ChatGPT in the Terminal!
GPTerminator provides a convenient way to interact with OpenAI's chat completion and image generation APIs using your command line interface.
Features ✨
- 🔍 Chat completion
- 💾 Save and load chat sessions
- 📊 File analysis
- 🎨 Image generation with Dalle
- 📋 Easy code and text copying using
- 🔁 Regeneration of responses
Getting Started & Installation 🚀
To use this terminal interface, follow these steps:
1) Install GPTerminator
git clone https://github.com/AineeJames/ChatGPTerminator
cd ChatGPTerminator
pip install .
or
pip install gpterminator
2) Set the OPENAI_API_KEY env variable (you may want this in your shell's .rc
file):
export OPENAI_API_KEY=<YOUR_API_KEY>
3) Start GPTerminator by running one of the following commands:
gpterm
# or
gpterm <input> # ex: gpterm write a hello world function in Python
4) Type !help
for a list of commands to use
Running with podman/docker (optional) 📦
Build the image and provide the APIKEY
podman build \
--build-arg APIKEY=$(echo $OPENAI_API_KEY) \
-t gpterm .
Run gpterm
in the container
podman run -it --rm --name gpterm gpterm
Set an alias for easy access
echo "alias gpterm='podman run -it --rm --name gpterm gpterm'" >> ~/.bashrc
Commands ❗
- Power up you chat experience with commands!
- By typing
!help
you can view all the possible commands along with a short description. - Please check out the wiki for more detailed help with commands!
Configuration ⚙️
The config.ini
configuration resides in different locations depending on your OS. In order to find the path, run gpterm
and then enter !pconf
.
GPTerminator is configurable and can support multiple configurations. Add the following to your config.ini
:
[CONFIG_TEMPLATE]
ModelName =
SystemMessage =
Temperature =
PresencePenalty =
FrequencyPenalty =
CommandInitiator =
SavePath =
CodeTheme =
Setting | Description | Default |
---|---|---|
ModelName | this is the model used when chatting | gpt-3.5-turbo |
Temperature | between 0 and 2 | 1 |
PresencePenalty | between -2 and 2 | 0 |
FrequencyPenalty | between -2 and 2 | 0 |
SystemMessage | this is the starting system message sent to the API | You are a helpful assistant named GPTerminator |
CommandInitiator | this can be set to change the default ! structure |
! |
SavePath | this changes the location of the save path when loading/saving | (default save path) |
CodeTheme | this changes the Pygments theme of code blocks | monokai |
Note More details on some settings can be found here
Note Valid color schemes can be found here
Note If you change the
CommandInitiator
, you will now type<new-command>
to execute commands...
After saving the config file, run gpterm
, then enter !setconf
and select which config you wish to use. You can also run the !pconf
command to view the current config details.
Contributing 🙌
Current Contributors:
We welcome contributions to this project. If you find a bug, have a feature request, or want to contribute code, please open an issue or submit a pull request.
Disclaimer ⚠️
Warning This program uses the OpenAI API to chat and generate images using DALL·E. It is a good idea to put a usage cap on your billing, just in case something goes wrong!