Skip to main content

See https://github.com/AineeJames/ChatGPTerminator for more details!

Project description

GPTerminator :robot: - ChatGPT in the Terminal!

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

Features :sparkles:

  • :mag: Chat completion
  • :floppy_disk: Save and load chat sessions
  • :bar_chart: File analysis
  • :art: Image generation with Dalle
  • :clipboard: Easy code and text copying using
  • :repeat: Regeneration of responses

Getting Started & Installation :rocket:

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 .rc file):

export OPENAI_API_KEY=PUT_API_KEY_HERE

3) Run the following command to start the ChatGPT terminal interface:

gpterm

4) You can now start chatting. Type a message and press Enter to get a response.

5) Type !help for a list of commands to use

Running with podman/docker (optional) :package:

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 :exclamation:

  • Power up you chat experience with commands!
  • By typing !help you can view all the possible commands along with a short desctiption.
  • Please check out the wiki for more detailed help with commands!

Configuration :gear:

The config.ini directory resides in different locations dependent on your OS. In order to find the path, run GPTerminator and then type !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 = 
  • ModelName: this is the model used when chatting
  • Temperature = between 0 and 2
  • PresencePenalty = between -2 and 2
  • FrequencyPenalty = between -2 and 2
  • SystemMessage: this is the starting system message sent to the API
  • CommandInitiator: this can be set to change the default ! structure
  • SavePath: this changes the location of the save path when loading/saving

Note: More details on some settings can be found here

After saving the config file, run: gpterm Then, type !setconf and select which config you wish to use, you can also run the !pconf commang to view the current config details.

Note: If you change the CommandInitiator, you will now type to execute commands...

Contributing :raised_hands:

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 dalle. It is a good idea to put a usage cap on your billing, just in case something goes wrong!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gpterminator-0.1.10.tar.gz (10.5 kB view hashes)

Uploaded Source

Built Distribution

gpterminator-0.1.10-py3-none-any.whl (9.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page