Skip to main content

Build semantic functions.

Project description

Prompt Functions ⚙️

Easily define custom prompt functions with structured input and output.

Getting Started

1. Installation

Install the package using pip:

pip install prompt-functions

2. Setting Up Your First Function

Let's create a sentiment classification function:

Step 1: Create a directory named sentiment. Inside this directory, you need two files:

└─ sentiment
   ├── function_args.json
   ├── model_args.json
   └── template.txt

Step 2: Define your prompt template in template.txt:

Aalyze and determine whether the sentiment of the following sentence is positive, negative, or neutral.
Sentence:
{sentence}

Step 3: Set model paramters in model_args.json:

{
    "temperature": 0.0,
    "model": "gpt-3.5-turbo"
}

Step 4: Specify the function's output format in function_args.json:

{
    "function_name": "sentiment_classifier",
    "description": "Classify the sentiment of a sentence",
    "properties": {
        "thoughts": {
            "type": "string",
            "description": "Your thoughts when classifying sentiment of the given sentence."
        },
        "sentiment": {
            "type": "string",
            "enum": ["positive", "negative", "neutral"],
            "description": "The sentiment of the given sentence."
        }
    }
}

3. Using Your Prompt Function in Python

Here's how you can load and use your prompt function:

from prompt_functions import PromptFunction

# Load your function
sentiment = PromptFunction.from_dir("./sentiment/")

# Make a prediction
pred = sentiment(sentence="I am super happy!")

# Expected Output:
# {
#   "thoughts": "The sentiment in the sentence is positive",
#   "sentiment": "positive"
# }

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

prompt_functions-0.1.21.tar.gz (3.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

prompt_functions-0.1.21-py3-none-any.whl (4.7 kB view details)

Uploaded Python 3

File details

Details for the file prompt_functions-0.1.21.tar.gz.

File metadata

  • Download URL: prompt_functions-0.1.21.tar.gz
  • Upload date:
  • Size: 3.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.9.6 Darwin/22.4.0

File hashes

Hashes for prompt_functions-0.1.21.tar.gz
Algorithm Hash digest
SHA256 e17ca8216e8fddbad9e7b5ace4fd4ff4a1041e59caf58fef3d35697277675304
MD5 95bc53ae74d8e526f8348e8f5834c2d2
BLAKE2b-256 53762bd648011315fffb164fce3aab248cade3ffe26ba967b7afec18f9979ae8

See more details on using hashes here.

File details

Details for the file prompt_functions-0.1.21-py3-none-any.whl.

File metadata

  • Download URL: prompt_functions-0.1.21-py3-none-any.whl
  • Upload date:
  • Size: 4.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.9.6 Darwin/22.4.0

File hashes

Hashes for prompt_functions-0.1.21-py3-none-any.whl
Algorithm Hash digest
SHA256 10380128cfd3ac271dc0074ab77456b34670b328709e9808b2c7366f147799ad
MD5 e09890d9a3f26478642e0fb7fa832478
BLAKE2b-256 5904fb47400eb0e551f5c531a8acdad8c5a8a08a5cc3e58da844345f9d72fba1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page