Skip to main content

OpenAI Helper for Easy I/O

Project description

OpenAI-Helper

OpenAI Helper for Easy I/O

Github

https://github.com/craigtrim/openai-helper

Usage

Set the OpenAI credentials

import os
os.environ['OPENAI_KEY'] = "<encrypted key>"
os.environ['OPENAI_ORG'] = "<encrypted key>"

Use CryptoBase.encrypt_str("...") from https://pypi.org/project/baseblock/

Initialize the OpenAI Helper:

run = OpenAITextCompletion().run

This will connect to OpenAI and establish performant callbacks.

Call OpenAI:

run(input_prompt="Generate a one random number between 1 and 5000")

or

run(engine="text-ada-001",
    temperature=1.0,
    max_tokens=256,
    input_prompt="Rewrite the input in grammatical English:\n\nInput: You believe I can help you understand what trust yourself? don't you?\nOutput:\n\n")

The output will contain both the input and output values:

{
   "input":{
      "best_of":1,
      "engine":"text-davinci-003",
      "frequency_penalty":0.0,
      "input_prompt":"Rewrite the input in grammatical English:\n\nInput: You believe I can help you understand what trust yourself? don't you?\nOutput:\n\n",
      "max_tokens":256,
      "presence_penalty":2,
      "temperature":1.0,
      "timeout":5,
      "top_p":1.0
   },
   "output":{
      "choices":[
         {
            "finish_reason":"stop",
            "index":0,
            "logprobs":"None",
            "text":"Don't you believe that I can help you understand trust in yourself?"
         }
      ],
      "created":1659051242,
      "id":"cmpl-5Z7IwXM5bCwWj8IuHaGnOLn6bCvHz",
      "model":"text-ada-001",
      "object":"text_completion",
      "usage":{
         "completion_tokens":17,
         "prompt_tokens":32,
         "total_tokens":49
      }
   }
}

Supported Parameters and Defaults

This method signature describes support:

def process(self,
            input_prompt: str,
            engine: str = None,
            best_of: int = None,
            temperature: float = None,
            max_tokens: int = None,
            top_p: float = None,
            frequency_penalty: int = None,
            presence_penalty: int = None) -> dict:
    """ Run an OpenAI event

    Args:
        input_prompt (str): The Input Prompt to execute against OpenAI
        engine (str, optional): The OpenAI model (engine) to run against. Defaults to None.
            Options as of July, 2022 are:
                'text-davinci-003'
                'text-curie-001',
                'text-babbage-001'
                'text-ada-001'
        best_of (int, optional): Generates Multiple Server-Side Combinations and only selects the best. Defaults to None.
            This can really eat up OpenAI tokens so use with caution!
        temperature (float, optional): Control Randomness; Scale is 0.0 - 1.0. Defaults to None.
            Scale is 0.0 - 1.0
            Lower values approach predictable outputs and determinate behavior
            Higher values are more engaging but also less predictable
            Use High Values cautiously
        max_tokens (int, optional): The Maximum Number of tokens to generate. Defaults to None.
            Requests can use up to 4,000 tokens (this takes the length of the input prompt into account)
            The higher this value, the more each request will cost.
        top_p (float, optional): Controls Diversity via Nucleus Sampling. Defaults to None.
            no idea what this means
        frequency_penalty (int, optional): How much to penalize new tokens based on their frequency in the text so far. Defaults to None.
            Scale: 0.0 - 2.0.
        presence_penalty (int, optional): Seems similar to frequency penalty. Defaults to None.

    Returns:
        dict: an output dictionary with two keys:
            input: the input dictionary with validated parameters and default values where appropriate
            output: the output event from OpenAI
    """

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

openai-helper-0.1.43.tar.gz (17.4 kB view details)

Uploaded Source

Built Distribution

openai_helper-0.1.43-py3-none-any.whl (30.6 kB view details)

Uploaded Python 3

File details

Details for the file openai-helper-0.1.43.tar.gz.

File metadata

  • Download URL: openai-helper-0.1.43.tar.gz
  • Upload date:
  • Size: 17.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.8.5 Windows/10

File hashes

Hashes for openai-helper-0.1.43.tar.gz
Algorithm Hash digest
SHA256 cb234d63ba314405f1ee113166ef8de9765e2fc60a4cfd7fdd6a6c3026d079ac
MD5 c025d3eb1e62eb5ae2afc6bb614c44bb
BLAKE2b-256 5c5334a15cfde48fa17f3cd1c44bea6826058a4de9e3b94a1ebad5c98558695d

See more details on using hashes here.

Provenance

File details

Details for the file openai_helper-0.1.43-py3-none-any.whl.

File metadata

  • Download URL: openai_helper-0.1.43-py3-none-any.whl
  • Upload date:
  • Size: 30.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.8.5 Windows/10

File hashes

Hashes for openai_helper-0.1.43-py3-none-any.whl
Algorithm Hash digest
SHA256 a8a8a663dc4549b04bbfb44f416602ab587fa2f67a2ddac838d50591fad6fcc0
MD5 d4a1613afde0e9c7ba3c2bb4ef1ac522
BLAKE2b-256 9277800c4a68241cf4fdb58b77f73badb87091c0514c67e30e99bd9e94f5c787

See more details on using hashes here.

Provenance

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