A simple, lightweight shell script to use OpenAI's chatGPT and DALL-E from the terminal without installing python or node.js.
The script uses the completions
endpoint and the text-davinci-003
model for chatGPT and the images/generations
endpoint for generating images.
- Chat with GPT from the terminal
- Generate images from a text prompt
- View your chat history
- Chat context, GPT remembers previous chat questions and answers
- List all available OpenAI models
- Set OpenAI request parameters
This script relies on curl for the requests to the api and jq to parse the json response.
- curl
brew install curl
- jq
brew install jq
- An OpenAI API key. Create an account and get a free API Key at OpenAI
To install, run this in your terminal and provide your OpenAI API key when asked.
curl -sS https://raw.githubusercontent.com/0xacx/chatGPT-shell-cli/main/install.sh | sudo -E bash
If you want to install it manually, all you have to do is:
- Download the
chatgpt.sh
file in a directory you want - Add the path of
chatgpt.sh
to your$PATH
. You do that by adding this line to your shell profile:export PATH=$PATH:/path/to/chatgpt.sh
- Add the OpenAI API key to your shell profile by adding this line
export OPENAI_KEY=your_key_here
- If you are using iTerm and want to view images in terminal, install imgcat
- Run the script by using the
chatgpt
command anywhere
image:
To generate images, start a prompt withimage:
If you are using iTerm, you can view the image directly in the terminal. Otherwise the script will ask to open the image in your browser.history
To view your chat history, typehistory
models
To get a list of the models available at OpenAI API, typemodels
model:
To view all the information on a specific model, start a prompt withmodel:
and the modelid
as it appears in the list of models. For example:model:text-babbage:001
will get you all the fields fortext-babbage:001
model
- You can enable chat context mode for the model to remember your previous chat questions and answers. This way you can ask follow-up questions. To enable this mode start the script with
-c
or--chat-context
. i.e.chatgpt --chat-context
and start to chat normally.
-
To set request parameters you can start the script like this:
chatgpt --temperature 0.9 --model text-babbage:001 --max-tokens 100 --size 1024x1024
The available parameters are:
- temperature,
-t
or--temperature
- model,
-m
or--model
- max number of tokens,
--max-tokens
- image size,
-s
or--size
(The sizes that are accepted by the OpenAI API are 256x256, 512x512, 1024x1024)
To learn more about these parameters you can view the API documentation
- temperature,