Git Product home page Git Product logo

gpterminator's Introduction

GPTerminator ๐Ÿค– - 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 โœจ

  • ๐Ÿ” 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 .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) ๐Ÿ“ฆ

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 desctiption.
  • Please check out the wiki for more detailed help with commands!

Configuration โš™๏ธ

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 ๐Ÿ™Œ

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 โš ๏ธ

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!

gpterminator's People

Contributors

aineejames avatar wilcockj avatar yihong0618 avatar webgtx avatar wangw469 avatar

Watchers

 avatar

Forkers

sofiamoreno6904

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.