• Stars
    star
    230
  • Rank 174,053 (Top 4 %)
  • Language
    Python
  • License
    MIT License
  • Created over 1 year ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

GPTerminator provides a convenient way to interact with OpenAI's chat completion and image generation API's using your command line interface.

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!