Skip to main content

Python Project for reviewing GitHub PRs with Open AI and Chat-GPT.

Project description

gpt-review

Actions Status Coverage Status License: MIT PyPI Downloads Code style: black

A Python based CLI and GitHub Action to use Open AI or Azure Open AI models to review contents of pull requests.

How to install CLI:

Install the package via pip and set the environment variables for your OpenAI API Key and Organization ID. To use Azure OpenAI, set the environment variable AZURE_OPENAI_API_URL and AZURE_OPENAI_API_URL_KEY to the URL and key for your Azure OpenAI API.

pip install gpt-review

export AZURE_OPENAI_API=<your azure api url>
export AZURE_OPENAI_API_KEY=<your azure key>

Or use Azure Key Vault to secure your API Key. Create secrets for the url named azure-open-ai, and for the API Key named azure-openai-key.

export AZURE_KEY_VAULT_URL=https://<keyvault_name>.vault.azure.net/

az login

Main Commands

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:

1. Ask a Question

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.

Ask a Question about a File

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."

2. Review a PR

To review a PR, use the following format:

gpt github review \
    --access-token $GITHUB_ACCESS_TOKEN \
    --pull-request $PULL_REQUEST_NUMBER \
    --repository $REPOSITORY_NAME

3. Generate a git commit message with GPT

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').

Developer Setup

To install the package in development mode, with additional packages for testing, run the following command:

pip install -e .[test]

Project details


Release history Release notifications | RSS feed

This version

0.7.2

Download files

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

Source Distribution

gpt-review-0.7.2.tar.gz (27.1 kB view details)

Uploaded Source

Built Distribution

gpt_review-0.7.2-py3-none-any.whl (16.7 kB view details)

Uploaded Python 3

File details

Details for the file gpt-review-0.7.2.tar.gz.

File metadata

  • Download URL: gpt-review-0.7.2.tar.gz
  • Upload date:
  • Size: 27.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.30.0

File hashes

Hashes for gpt-review-0.7.2.tar.gz
Algorithm Hash digest
SHA256 9f6da5cfbe920f98f5fea74d0f5024d593438a11a3a1c5188d4eb10d36486890
MD5 d9224336cdb1e7ba5651d5a49a02cd13
BLAKE2b-256 5c1e8240f8d0fbf09ca3756d02aaa23d36ac1e738894165a8e12fc77ddfa8e02

See more details on using hashes here.

File details

Details for the file gpt_review-0.7.2-py3-none-any.whl.

File metadata

  • Download URL: gpt_review-0.7.2-py3-none-any.whl
  • Upload date:
  • Size: 16.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.30.0

File hashes

Hashes for gpt_review-0.7.2-py3-none-any.whl
Algorithm Hash digest
SHA256 46cf9e382f06bd70a28c7870d84b448b799dfa0a998cb95ce970b633030c7aad
MD5 e3df0c90b344e8988c99567eb46fc10c
BLAKE2b-256 357b89d812a57beded353ab3caacb018d2c39c4e34120eccbd68de20cccc0f8c

See more details on using hashes here.

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