Welcome to the Getting Started guide for defining the workflow of your GenAI application using PSL (Protocol Specification Language). In this guide, we'll cover the foundational elements you'll use: ask, display, and prompt.
1. ask Section
The ask section prompts the app user for input.
[ask.VAR_NAME]description= What is your VAR_NAME?
Notes:
Substitute VAR_NAME with your own variable name, and edit the description accordingly.
In subsequent sections, user input can be accessed via {{input.VAR_NAME}}.
For instance, if you'd like to ask the user for their name:
[ask.name]description= What is your name?
2. display Section
The display section presents content to the app user in various formats.
[display]text= <message_to_display>
Notes:
Messages can include:
User input from an ask section: {{input.<previous_user_input>}}.
Response from a prompt section: {{response.<previous_prompt>}}.
To use different formats, options include audio = , video = , markdown = , image = , etc.
3. prompt Section
The prompt section uses an AI model or in-house function to generate a response.
Notes:
Within your message, you can reference:
User input from an ask section: {{input.<previous_user_input>}}.
Response from another prompt section: {{response.<previous_prompt>}}.
The response from this prompt can be accessed using {{response.do_something}} elsewhere in the PSL.
If display = True, the AI's response will be automatically displayed to the user.
Here system_role and message are model specific attributes. Model GPT-4 requires these two to be specified. We will provide a list of attributes supported by each model later.
With this knowledge, you're prepared to define dynamic workflows for your GenAI applications using PSL. Dive in and start creating!