Edit

Prompt tool

Warning

Prompt flow in Microsoft Foundry and Azure Machine Learning will be retired on April 20, 2027. Prompt flow is no longer recommended for new development. Migrate existing Prompt flow applications and deployments to Microsoft Agent Framework before April 20, 2027.

Prompt flow container images are no longer receiving updates, including security and package updates. This applies to Prompt flow runtime images, including promptflow-runtime, promptflow-runtime-stable, and promptflow-python.

After April 20, 2027, Prompt flow, including the web authoring experience in Microsoft Foundry and Azure Machine Learning, the VS Code extensions, and related Prompt flow container images, will no longer be supported or available.

If your application depends on Prompt flow deployments or runtime images, plan to move those workloads to supported alternatives such as Microsoft Agent Framework before the retirement date. For migration guidance, see the Prompt flow migration guide and migration code samples.

The prompt tool in prompt flow offers a collection of textual templates that serve as a starting point for creating prompts. These templates, based on the Jinja2 template engine, facilitate the definition of prompts. The tool proves useful when prompt tuning is required prior to feeding the prompts into the large language model in prompt flow.

Inputs

Name Type Description Required
prompt string Prompt template in Jinja Yes
Inputs - List of variables of prompt template and its assignments -

Outputs

The following sections show the prompt text parsed from the prompt and inputs.

Write a prompt

  1. Prepare a Jinja template. Learn more about Jinja.

    In the following example, the prompt incorporates Jinja templating syntax to dynamically generate the welcome message and personalize it based on the user's name. It also presents a menu of options for the user to choose from. Depending on whether the user_name variable is provided, it either addresses the user by name or uses a generic greeting.

    Welcome to {{ website_name }}!
    {% if user_name %}
        Hello, {{ user_name }}!
    {% else %}
        Hello there!
    {% endif %}
    Please select an option from the menu below:
    1. View your account
    2. Update personal information
    3. Browse available products
    4. Contact customer support
    
  2. Assign values for the variables.

In the preceding example, two variables are automatically detected and listed in the Inputs section. You should assign values to the input variables.

Sample 1

Here are the inputs and outputs for the sample.

Inputs

Variable Type Sample value
website_name string "Microsoft"
user_name string "Jane"

Outputs

Welcome to Microsoft! Hello, Jane! Please select an option from the menu below: 1. View your account 2. Update personal information 3. Browse available products 4. Contact customer support

Sample 2

Here are the inputs and outputs for the sample.

Inputs

Variable Type Sample value
website_name string "Bing"
user_name string "

Outputs

Welcome to Bing! Hello there! Please select an option from the menu below: 1. View your account 2. Update personal information 3. Browse available products 4. Contact customer support