A Python based CLI and GitHub Action to use Open AI or Azure Open AI models to review contents of pull requests.
First, install the package via pip
:
pip install gpt-review
You will need to provide an OpenAI API key to use this CLI tool. In order of precedence, it will check the following methods:
-
Presence of a context file at
azure.yaml
or whereverCONTEXT_FILE
points to. Seeazure.yaml.template
for an example. -
AZURE_OPENAI_API_URL
andAZURE_OPENAI_API_KEY
to connect to an Azure OpenAI API:export AZURE_OPENAI_API=<your azure api url> export AZURE_OPENAI_API_KEY=<your azure key>
-
OPENAI_API_KEY
for direct use of the OpenAI APIexport OPENAI_API_KEY=<your openai key>
-
AZURE_KEY_VAULT_URL
to use Azure Key Vault. Put secrets for the url atazure-open-ai
and the API Keyazure-openai-key
, then run:export AZURE_KEY_VAULT_URL=https://<keyvault_name>.vault.azure.net/ az login
To show help information about available commands and their usage, run:
gpt --help
To display the current version of this CLI tool, run:
gpt --version
Here are the main commands for using this CLI tool:
To submit a question to GPT and receive an answer, use the following format:
gpt ask "What is the capital of France?"
You can customize your request using various options like maximum tokens (--max-tokens
), temperature (--temperature
), top-p value (--top-p
), frequency penalty (--frequency-penalty
), presence penalty (--presence-penalty
), etc.
To submit a question to GPT with a file and receive an answer, use the following format:
gpt ask --files WordDocument.docx "Summarize the contents of this document."
To review a PR, use the following format:
gpt github review \
--access-token $GITHUB_ACCESS_TOKEN \
--pull-request $PULL_REQUEST_NUMBER \
--repository $REPOSITORY_NAME
To generate a git commit message with GPT after having added the files, use the following format:
git add .
gpt git commit
For more detailed information on each command and its options, run:
gpt COMMAND --help
Replace COMMAND with one of the main commands listed above (e.g., 'ask').
To install the package in development mode, with additional packages for testing, run the following command:
pip install -e .[test]