Discover / LLM Ops & Observability
Prompt Flow
by microsoftPython
Toolkit for building, evaluating and deploying prompt based LLM application workflows.
Maturity: active because commit 25d ago, latest release promptflow_1.17.1. Derived from release and commit history, not a rating.
- Stars
- 11k
- Forks
- 1.1k
- Downloads / mo
- 79k
- Last commit
- 2026-07-09
- License
- MIT
- Open issues
- 71
Market and trust evidence
Edition not yet matchedNo exact skills.sh identity match is available for this repository. Repository adoption and freshness remain visible above; install momentum is not inferred.
Trust analysis is a screening signal, not a security warranty. Read the ranking and trust methodology.
In practice
Written by AI from this repository’s README · high confidencePrompt engineering by hand gives no repeatable way to test a flow, trace it or take it to production.
Use it when
Use it when you want executable flows with tracing, batch testing and evaluation that can run in CI.
Not the right pick when
Connections and flows are its own YAML format, so it imposes structure a plain script does not need.
Capabilities
- executable flows linking LLMs, prompts, Python code and tools
- tracing of interactions with LLMs while debugging
- batch evaluation over larger datasets
- pf CLI to init flows, create connections and test interactively
- integration of testing and evaluation into CI/CD
- deploy the flow to a serving platform or into app code
Requirements
- python>=3.9, <=3.11 recommended
- an OpenAI or Azure OpenAI key set up as a connection
Cost: Needs a paid API or account
Install
Derived from the published package name in the repository, not from a model.
Video walkthroughs
Identify Prompt Flow components AI-3016
Understand Azure AI Studio with Mini Project (Prompt Flow, AI Index, RAG, Python and WebApp)
Third-party YouTube uploads matched to this tool by title, channel and repository name on 2026-08-03. Not made, reviewed or endorsed by SkillPilot. View counts and publish months are as of the match date and the month is approximate. Nothing loads from YouTube until you press play.
What the repository ships
Detected from the actual files in the repository root.
Latest release promptflow_1.17.1
Published 2025-01-09
We are pleased to announce the release of promptflow 1.17.1.
This release includes some new features, bug fixes, and improvements. We recommend that all users upgrade to this version.
See the CHANGELOG for a list of all the changes.
The release will be available via PyPI:
pip install --upgrade promptflow
Please report any issues with the release on the promptflow issue tracker.
Thanks to all the contributors who made this release possible.
Tags
README
Prompt flow
Welcome to join us to make prompt flow better by
participating discussions,
opening issues,
submitting PRs.
Prompt flow is a suite of development tools designed to streamline the end-to-end development cycle of LLM-based AI applications, from ideation, prototyping, testing, evaluation to production deployment and monitoring. It makes prompt engineering much easier and enables you to build LLM apps with production quality.
With prompt flow, you will be able to:
- Create and iteratively develop flow
- Create executable flows that link LLMs, prompts, Python code and other tools together.
- Debug and iterate your flows, especially tracing interaction with LLMs with ease.
- Evaluate flow quality and performance
- Evaluate your flow's quality and performance with larger datasets.
- Integrate the testing and evaluation into your CI/CD system to ensure quality of your flow.
- Streamlined development cycle for production
- Deploy your flow to the serving platform you choose or integrate into your app's code base easily.
- (Optional but highly recommended) Collaborate with your team by leveraging the cloud version of Prompt flow in Azure AI.
Installation
To get started quickly, you can use a pre-built development environment. Click the button below to open the repo in GitHub Codespaces, and then continue the readme!
If you want to get started in your local environment, first install the packages:
Ensure you have a python environment, python>=3.9, <=3.11 is recommended.
pip install promptflow promptflow-tools
Quick Start ⚡
Create a chatbot with prompt flow
Run the command to initiate a prompt flow from a chat template, it creates folder named my_chatbot and generates required files within it:
pf flow init --flow ./my_chatbot --type chat
Setup a connection for your API key
For OpenAI key, establish a connection by running the command, using the openai.yaml file in the my_chatbot folder, which stores your OpenAI key (override keys and name with --set to avoid yaml file changes):
pf connection create --file ./my_chatbot/openai.yaml --set api_key=<your_api_key> --name open_ai_connection
For Azure OpenAI key, establish the connection by running the command, using the azure_openai.yaml file:
pf connection create --file ./my_chatbot/azure_openai.yaml --set api_key=<your_api_key> api_base=<your_api_base> --name open_ai_connection
Chat with your flow
In the my_chatbot folder, there's a flow.dag.yaml file that outlines the flow, including inputs/outputs, nodes, connection, and the LLM model, etc
Note that in the
chatnode, we're using a connection namedopen_ai_connection(specified inconnectionfield) and thegpt-35-turbomodel (specified indeployment_namefield). The deployment_name filed is to specify the OpenAI model, or the Azure OpenAI deployment resource.
Interact with your chatbot by running: (press Ctrl + C to end the session)
pf flow test --flow ./my_chatbot --interactive
Core value: ensuring "High Quality” from prototype to production
Explore our 15-minute tutorial that guides you through prompt tuning ➡ batch testing ➡ evaluation, all designed to ensure high quality ready for production.
Next Step! Continue with the Tutorial 👇 section to delve deeper into prompt flow.
Tutorial 🏃♂️
Prompt flow is a tool designed to build high quality LLM apps, the development process in prompt flow follows these steps: develop a flow, improve the flow quality, deploy the flow to production.
Develop your own LLM apps
VS Code Extension
We also offer a VS Code extension (a flow designer) for an interactive flow development experience with UI.
<img src="docs/media/readme/vsc.png" alt="vsc" width="1000"/>
You can install it from the <a href="https://marketplace.visualstudio.com/items?itemName=prompt-flow.prompt-flow">visualstudio marketplace</a>.
Deep delve into flow development
Getting started with prompt flow: A step by step guidance to invoke your first flow run.
Learn from use cases
Tutorial: Chat with PDF: An end-to-end tutorial on how to build a high quality chat application with prompt flow, including flow development and evaluation with metrics.
More examples can be found here. We welcome contributions of new use cases!
Setup for contributors
If you're interested in contributing, please start with our dev setup guide: dev_setup.md.
Next Step! Continue with the Contributing 👇 section to contribute to prompt flow.
Contributing
This project welcomes contributions and suggestions. Most contributions require you to agree to a
Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us
the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.
When you submit a pull request, a CLA bot will automatically determine whether you need to provide
a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions
provided by the bot. You will only need to do this once across all repos using our CLA.
This project has adopted the Microsoft Open Source Code of Conduct.
For more information see the Code of Conduct FAQ or
contact opencode@microsoft.com with any additional questions or comments.
Trademarks
This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft
trademarks or logos is subject to and must follow
Microsoft's Trademark & Brand Guidelines.
Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship.
Any use of third-party trademarks or logos are subject to those third-party's policies.
Code of Conduct
This project has adopted the
Microsoft Open Source Code of Conduct.
For more information see the
or contact opencode@microsoft.com
with any additional questions or comments.
Data Collection
The software may collect information about you and your use of the software and
send it to Microsoft if configured to enable telemetry.
Microsoft may use this information to provide services and improve our products and services.
You may turn on the telemetry as described in the repository.
There are also some features in the software that may enable you and Microsoft
to collect data from users of your applications. If you use these features, you
must comply with applicable law, including providing appropriate notices to
users of your applications together with a copy of Microsoft's privacy
statement. Our privacy statement is located at
https://go.microsoft.com/fwlink/?LinkID=824704. You can learn more about data
collection and use in the help documentation and our privacy statement. Your
use of the software operates as your consent to these practices.
Telemetry Configuration
Telemetry collection is on by default.
To opt out, please run pf config set telemetry.enabled=false to turn it off.
License
Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the MIT license.