Skip to main content

GPT-3 wrapper for Python

Project description

gpt3-simple-primer

Simple GPT-3 primer using openai.

Background

Generative Pre-trained Transformer 3 (GPT-3) is an autoregressive language model that uses deep learning to produce human-like text. For more information, visit https://openai.com/blog/openai-api/.

The OpenAI Python library is the official Python wrapper for the OpenAI API. The purpose of this library is to simplify the priming process by providing easy to use methods for setting the instructions and adding examples.

Priming

Priming is the practice of providing an initial prompt to the language model to improve subsequent model predictions.

GPT-3 generally does very well even with short instructions and a few examples of your intended use case. Examples are typically delimited based on input and output. For instance, GPT-3 can be used to predict food ingredients based on the following prompt:

Given the name of a food, list the ingredients used to make this meal.

Food: apple pie
Ingredients: apple, butter, flour, egg, cinnamon, crust, sugar

Food: guacamole
Ingredients: avocado, tomato, onion, lime, salt

Requirements

You will need an API key from OpenAI to access GPT-3.

Installation

To install, run:

pip install gpt3-simple-primer

Usage

input_text and output_text determines how input and output are delimited in the examples. The default is to use Input and Output.

from gpt3_simple_primer import GPT3Generator, set_api_key

KEY = 'sk-xxxxx'  # openai key
set_api_key(KEY)

generator = GPT3Generator(input_text='Food',
                          output_text='Ingredients')

generator.set_instructions('List the ingredients for this meal.')
generator.add_example('apple pie', 'apple, butter, flour, egg, cinnamon, crust, sugar')
generator.add_example('guacamole', 'avocado, tomato, onion, lime, salt')

# Ingredients: cream, egg yolk, sugar, lime, key lime juice
generator.generate(prompt='key lime pie',
                   engine='davinci',
                   max_tokens=20,
                   temperature=0.5,
                   top_p=1)

To see the prompt used for priming:

generator.get_prompt()

To remove an example from the prompt:

generator.remove_example('apple pie')

Examples

The library includes examples of GPT-3 applications based off of specific prompts.

from gpt3_simple_primer import set_api_key
from gpt3_simple_primer.examples import idiom_explainer

KEY = 'sk-xxxxx'  # openai key
set_api_key(KEY)

idiom_explainer.generate('hill to die on', max_tokens=15, engine='davinci')

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

gpt3_simple_primer-0.1.2.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

gpt3_simple_primer-0.1.2-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

Details for the file gpt3_simple_primer-0.1.2.tar.gz.

File metadata

  • Download URL: gpt3_simple_primer-0.1.2.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12

File hashes

Hashes for gpt3_simple_primer-0.1.2.tar.gz
Algorithm Hash digest
SHA256 c9f997a6e0d69988ee4e02a70ec1cf34c5041555603bd4d21b46a892a1b0d252
MD5 4846370d5c8719d93545c7f2f5667503
BLAKE2b-256 93b747e32af4f928a355c2f87697ba5fd030939e1b2f9e795761c9fe93ee0db8

See more details on using hashes here.

File details

Details for the file gpt3_simple_primer-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: gpt3_simple_primer-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 5.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12

File hashes

Hashes for gpt3_simple_primer-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 3c1a656f513fa9a9739b17099c7a6d66e54050c1059557aff0cf4971658a9f5f
MD5 7a271cbfa46c08fa88fc726b2f46d4a2
BLAKE2b-256 9c54e83b8c912a8bb3bc291a1cdb6cd68ab4e5754ab5d28af011b6f63af5917e

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