# Getting Started

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.

```ini
[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:

<pre class="language-ini"><code class="lang-ini"><strong>[ask.name]
</strong>description = What is your name?
</code></pre>

### 2. `display` Section

The `display` section presents content to the app user in various formats.

```ini
[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.

```ini
[prompt.do_something]
model_name = gpt-4
system_role = <system role here>
message = <enter your message>
display = True
```

#### 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!
