Skip to content

Commit

Permalink
Jieting/lowercase Prompt flow to prompt flow (microsoft#1029)
Browse files Browse the repository at this point in the history
# Description

A one time clean up of the wording. "prompt flow" should be all lower
case with space between prompt and flow, except for in the beginning of
a sentence.

# All Promptflow Contribution checklist:
- [x] **The pull request does not introduce [breaking changes].**
- [x] **CHANGELOG is updated for new features, bug fixes or other
significant changes.**
- [x] **I have read the [contribution guidelines](../CONTRIBUTING.md).**
- [x] **Create an issue and link to the pull request to get dedicated
review from promptflow team. Learn more: [suggested
workflow](../CONTRIBUTING.md#suggested-workflow).**

## General Guidelines and Best Practices
- [x] Title of the pull request is clear and informative.
- [x] There are a small number of commits, each of which have an
informative message. This means that previously merged commits do not
appear in the history of the PR. For more information on cleaning up the
commits in your PR, [see this
page](https://github.com/Azure/azure-powershell/blob/master/documentation/development-docs/cleaning-up-commits.md).

### Testing Guidelines
- [x] Pull request includes test coverage for the included changes.
  • Loading branch information
ChenJieting authored Nov 8, 2023
1 parent 0c1f47a commit a12825f
Show file tree
Hide file tree
Showing 21 changed files with 42 additions and 42 deletions.
4 changes: 2 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Contributing to Prompt Flow
You can contribute to Prompt Flow with issues and pull requests (PRs). Simply
You can contribute to prompt flow with issues and pull requests (PRs). Simply
filing issues for problems you encounter is a great way to contribute. Contributing
code is greatly appreciated.

Expand Down Expand Up @@ -58,7 +58,7 @@ DON'Ts:
- **DON'T** surprise us with big pull requests. Instead, file an issue and start
a discussion so we can agree on a direction before you invest a large amount of time.
- **DON'T** commit code that you didn't write. If you find code that you think is a good
fit to add to Prompt flow, file an issue and start a discussion before proceeding.
fit to add to prompt flow, file an issue and start a discussion before proceeding.
- **DON'T** submit PRs that alter licensing related files or headers. If you believe
there's a problem with them, file an issue and we'll be happy to discuss it.
- **DON'T** make new APIs without filing an issue and discussing with us first.
Expand Down
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
[![CONTRIBUTING](https://img.shields.io/badge/Contributing-8A2BE2)](https://github.com/microsoft/promptflow/blob/main/CONTRIBUTING.md)
[![License: MIT](https://img.shields.io/github/license/microsoft/promptflow)](https://github.com/microsoft/promptflow/blob/main/LICENSE)

> Welcome to join us to make Prompt flow better by
> Welcome to join us to make prompt flow better by
> participating [discussions](https://github.com/microsoft/promptflow/discussions),
> opening [issues](https://github.com/microsoft/promptflow/issues/new/choose),
> submitting [PRs](https://github.com/microsoft/promptflow/pulls).
Expand Down Expand Up @@ -77,7 +77,7 @@ Interact with your chatbot by running: (press `Ctrl + C` to end the session)
pf flow test --flow ./my_chatbot --interactive
```

Next Step! Continue with the **Tutorial** 👇 section to delve deeper into Prompt flow.
Next Step! Continue with the **Tutorial** 👇 section to delve deeper into prompt flow.

## Tutorial 🏃‍♂️

Expand All @@ -95,7 +95,7 @@ You can install it from the <a href="https://marketplace.visualstudio.com/items?

#### Deep delve into flow development

[Getting Started with Prompt Flow](https://microsoft.github.io/promptflow/how-to-guides/quick-start.html): A step by step guidance to invoke your first flow run.
[Getting started with prompt flow](https://microsoft.github.io/promptflow/how-to-guides/quick-start.html): A step by step guidance to invoke your first flow run.

### Learn from use cases

Expand All @@ -106,7 +106,7 @@ You can install it from the <a href="https://marketplace.visualstudio.com/items?

If you're interested in contributing, please start with our dev setup guide: [dev_setup.md](./docs/dev/dev_setup.md).

Next Step! Continue with the **Contributing** 👇 section to to contribute to Prompt flow.
Next Step! Continue with the **Contributing** 👇 section to to contribute to prompt flow.

## Contributing

Expand Down
2 changes: 1 addition & 1 deletion docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ This readme file will not be included in above doc site. It keeps a guide for pr
Below is a table of important doc pages.
| Category | Article |
|----------------|----------------|
|Quick start|[Get started with prompt flow](./how-to-guides/quick-start.md)|
|Quick start|[Getting started with prompt flow](./how-to-guides/quick-start.md)|
|Concepts|[Flows](./concepts/concept-flows.md)<br> [Tools](./concepts/concept-tools.md)<br> [Connections](./concepts/concept-connections.md)<br> [Variants](./concepts/concept-variants.md)<br> |
|How-to guides|[How to initialize and test a flow](./how-to-guides/init-and-test-a-flow.md) <br>[How to run and evaluate a flow](./how-to-guides/run-and-evaluate-a-flow/index.md)<br> [How to tune prompts using variants](./how-to-guides/tune-prompts-with-variants.md)<br>[How to deploy a flow](./how-to-guides/deploy-a-flow/index.md)<br>[How to create and use your own tool package](./how-to-guides/develop-a-tool/create-and-use-tool-package.md)|
|Tools reference|[LLM tool](./tools-reference/llm-tool.md)<br> [Prompt tool](./tools-reference/prompt-tool.md)<br> [Python tool](./tools-reference/python-tool.md)<br> [SERP API tool](./tools-reference/serp-api-tool.md)<br> [Embedding tool](./tools-reference/embedding_tool.md)||
Expand Down
4 changes: 2 additions & 2 deletions docs/concepts/concept-flows.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
While how LLMs work may be elusive to many developers, how LLM apps work is not - they essentially involve a series of calls to external services such as LLMs/databases/search engines, or intermediate data processing, all glued together. Thus LLM apps are merely Directed Acyclic Graphs (DAGs) of function calls. These DAGs are flows in Prompt flow.
While how LLMs work may be elusive to many developers, how LLM apps work is not - they essentially involve a series of calls to external services such as LLMs/databases/search engines, or intermediate data processing, all glued together. Thus LLM apps are merely Directed Acyclic Graphs (DAGs) of function calls. These DAGs are flows in prompt flow.

# Flows

A flow in prompt flow is a DAG of functions (we call them [tools](./concept-tools.md)). These functions/tools connected via input/output dependencies and executed based on the topology by Prompt flow executor.
A flow in prompt flow is a DAG of functions (we call them [tools](./concept-tools.md)). These functions/tools connected via input/output dependencies and executed based on the topology by prompt flow executor.

A flow is represented as a YAML file and can be visualized with our [Prompt flow for VS Code extension](https://marketplace.visualstudio.com/items?itemName=prompt-flow.prompt-flow). Here is an example:

Expand Down
10 changes: 5 additions & 5 deletions docs/concepts/design-principles.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Design principles

When we started this project, [LangChain](https://www.langchain.com/) already became popular esp. after the ChatGPT launch. One of the questions we’ve been asked is what’s the difference between prompt flow and LangChain. This article is to elucidate the reasons for building Prompt Flow and the deliberate design choices we have made. To put it succinctly, prompt flow is a suite of development tools for you to build LLM apps with a strong emphasis of quality through experimentations, not a framework - which LangChain is.
When we started this project, [LangChain](https://www.langchain.com/) already became popular esp. after the ChatGPT launch. One of the questions we’ve been asked is what’s the difference between prompt flow and LangChain. This article is to elucidate the reasons for building prompt flow and the deliberate design choices we have made. To put it succinctly, prompt flow is a suite of development tools for you to build LLM apps with a strong emphasis of quality through experimentations, not a framework - which LangChain is.

While LLM apps are mostly in exploration stage, Microsoft started in this area a bit earlier and we’ve had the opportunity to observe how developers are integrating LLMs into existing systems or build new applications. These invaluable insights have shaped the fundamental design principles of Prompt Flow.
While LLM apps are mostly in exploration stage, Microsoft started in this area a bit earlier and we’ve had the opportunity to observe how developers are integrating LLMs into existing systems or build new applications. These invaluable insights have shaped the fundamental design principles of prompt flow.

## 1. Expose the prompts vs. hiding them

Expand All @@ -25,7 +25,7 @@ Prompt flow offers a range of tools to streamline the new way of work:
* Integrate the evaluation into your CI/CD pipeline, aligning the assertions in your gated tests with the selected metrics.


Prompt Flow introduces two conceptual components to facilitate this workflow:
Prompt flow introduces two conceptual components to facilitate this workflow:

* Evaluation flow: a flow type that indicates this flow is not for deploy or integrate into your app, it’s for evaluating an app/flow performance.
* Run: every time you run your flow with data, or run an evaluation on the output of a flow, a Run object is created to manage the history and allow for comparison and additional analysis.
Expand All @@ -46,6 +46,6 @@ This approach offers several key benefits, primarily centered around **enhanced

![promptflow-dag](../media/promptflow-dag.png)

The emphasis on visibility in Prompt flow's design helps developers to gain a comprehensive understanding of the intricate details of their applications. This, in turn, empowers developers to engage in effective troubleshooting and optimization.
The emphasis on visibility in prompt flow's design helps developers to gain a comprehensive understanding of the intricate details of their applications. This, in turn, empowers developers to engage in effective troubleshooting and optimization.

Despite there're some control flow features like "activate-when" to serve the needs of branches/switch-case, we do not intend to make Flow itself Turning complete. If you want to develop an agent which is fully dynamic and guided by LLM, leveraging [Semantic Kernel](https://github.com/microsoft/semantic-kernel) together with Prompt Flow would be a favorable option.
Despite there're some control flow features like "activate-when" to serve the needs of branches/switch-case, we do not intend to make Flow itself Turning complete. If you want to develop an agent which is fully dynamic and guided by LLM, leveraging [Semantic Kernel](https://github.com/microsoft/semantic-kernel) together with prompt flow would be a favorable option.
2 changes: 1 addition & 1 deletion docs/dev/replay-e2e-test-for-pfazure.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ This document introduces replay test for those tests located in [end-to-end test

## Why we need replay test

End-to-end tests for pfazure targets to test the behavior that Prompt Flow SDK/CLI interacts with service, this process can be time consuming, error prone, and require credentials (which is unavailable to pull request from forked repository); all of these go against our intention for a smooth develop experience.
End-to-end tests for pfazure targets to test the behavior that prompt flow SDK/CLI interacts with service, this process can be time consuming, error prone, and require credentials (which is unavailable to pull request from forked repository); all of these go against our intention for a smooth develop experience.

Therefore, we introduce replay test, which leverage [VCR.py](https://pypi.org/project/vcrpy/) to record all required network traffic to local files and replay during tests. In this way, we avoid the need of credentials, speed up and stabilize the test process.

Expand Down
2 changes: 1 addition & 1 deletion docs/how-to-guides/add-conditional-control-to-a-flow.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
This is an experimental feature, and may change at any time. Learn [more](faq.md#stable-vs-experimental).
:::

In Prompt flow, we support control logic by activate config, like if-else, switch. Activate config enables conditional execution of nodes within your flow, ensuring that specific actions are taken only when the specified conditions are met.
In prompt flow, we support control logic by activate config, like if-else, switch. Activate config enables conditional execution of nodes within your flow, ensuring that specific actions are taken only when the specified conditions are met.

This guide will help you learn how to use activate config to add conditional control to your flow.

Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Create and Use Your Own Custom Strong Type Connection
Connections provide a secure method for managing credentials for external APIs and data sources in Prompt flow. This guide explains how to create and use a custom strong type connection.
Connections provide a secure method for managing credentials for external APIs and data sources in prompt flow. This guide explains how to create and use a custom strong type connection.

## What is a Custom Strong Type Connection?
A custom strong type connection in Prompt flow allows you to define a custom connection class with strongly typed keys. This provides the following benefits:
A custom strong type connection in prompt flow allows you to define a custom connection class with strongly typed keys. This provides the following benefits:

* Enhanced user experience - no need to manually enter connection keys.
* Rich intellisense experience - defining key types enables real-time suggestions and auto-completion of available keys as you work in VS Code.
Expand Down
6 changes: 3 additions & 3 deletions docs/how-to-guides/init-and-test-a-flow.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ pf flow init --flow <flow-name> --type chat
Use VS Code explorer pane > directory icon > right click > the "New flow in this directory" action. Follow the popped out dialog to initialize your flow in the target folder.
![img](../media/how-to-guides/init-and-test-a-flow/vscode_new_flow_1.png)

Alternatively, you can use the "Create new flow" action on the Prompt flow pane > quick access section to create a new flow
Alternatively, you can use the "Create new flow" action on the prompt flow pane > quick access section to create a new flow
![img](../media/how-to-guides/init-and-test-a-flow/vscode_new_flow_2.png)

:::
Expand Down Expand Up @@ -77,7 +77,7 @@ Testing flow will NOT create a batch run record, therefore it's unable to use co

Promptflow also provides ways to test the initialized flow or flow node. It will help you quickly test your flow.

### Visual editor on the VS Code for Prompt flow.
### Visual editor on the VS Code for prompt flow.

::::{tab-set}
:::{tab-item} VS Code Extension
Expand Down Expand Up @@ -203,7 +203,7 @@ The log and result of flow node test will be displayed in the terminal. And the
:::{tab-item} VS Code Extension
:sync: VS Code Extension

The Prompt flow extension provides inline actions in both default yaml editor and visual editor to trigger single node runs.
The prompt flow extension provides inline actions in both default yaml editor and visual editor to trigger single node runs.

![img](../media/how-to-guides/vscode_single_node_test.png)
![img](../media/how-to-guides/vscode_single_node_test_visual.png)
Expand Down
4 changes: 2 additions & 2 deletions docs/how-to-guides/manage-runs.md
Original file line number Diff line number Diff line change
Expand Up @@ -245,7 +245,7 @@ client.runs.visualize(name="<run-name>")
:::{tab-item} VS Code Extension
:sync: VSC

On the VS Code primary sidebar > the Prompt flow pane, there is a run list. It will list all the runs on your machine. Select one or more items and click the "visualize" button on the top-right to visualize the local runs.
On the VS Code primary sidebar > the prompt flow pane, there is a run list. It will list all the runs on your machine. Select one or more items and click the "visualize" button on the top-right to visualize the local runs.

![img](../media/how-to-guides/vscode_run_actions.png)
:::
Expand Down Expand Up @@ -286,7 +286,7 @@ print(runs)
:::{tab-item} VS Code Extension
:sync: VSC

On the VS Code primary sidebar > the Prompt flow pane, there is a run list. It will list all the runs on your machine. Hover on it to view more details.
On the VS Code primary sidebar > the prompt flow pane, there is a run list. It will list all the runs on your machine. Hover on it to view more details.
![img](../media/how-to-guides/vscode_list_runs.png)
:::
::::
Expand Down
4 changes: 2 additions & 2 deletions docs/how-to-guides/quick-start.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ pf -v

## Understand what's a flow

A flow, represented as a YAML file, is a DAG of functions, which is connected via input/output dependencies, and executed based on the topology by Prompt flow executor. See [Flows](../../concepts/concept-flows.md) for more details.
A flow, represented as a YAML file, is a DAG of functions, which is connected via input/output dependencies, and executed based on the topology by prompt flow executor. See [Flows](../../concepts/concept-flows.md) for more details.

### Get the flow sample

Expand Down Expand Up @@ -297,5 +297,5 @@ Learn more on how to:
- [Prompt flow in Azure AI](../cloud/azureai/quick-start.md): run and evaluate flow in Azure AI where you can collaborate with team better.

And you can also check our [examples](https://github.com/microsoft/promptflow/tree/main/examples), especially:
- [Getting Started with Prompt Flow](https://github.com/microsoft/promptflow/blob/main/examples/tutorials/get-started/quickstart.ipynb): the notebook covering the python sdk experience for sample introduced in this doc.
- [Getting started with prompt flow](https://github.com/microsoft/promptflow/blob/main/examples/tutorials/get-started/quickstart.ipynb): the notebook covering the python sdk experience for sample introduced in this doc.
- [Tutorial: Chat with PDF](https://github.com/microsoft/promptflow/blob/main/examples/tutorials/e2e-development/chat-with-pdf.md): An end-to-end tutorial on how to build a high quality chat application with prompt flow, including flow development and evaluation with metrics.
4 changes: 2 additions & 2 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ With prompt flow, you will be able to:
- **Deploy your flows** 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](https://learn.microsoft.com/en-us/azure/machine-learning/prompt-flow/overview-what-is-prompt-flow?view=azureml-api-2).

> Welcome to join us to make Prompt flow better by
> Welcome to join us to make prompt flow better by
> participating [discussions](https://github.com/microsoft/promptflow/discussions),
> opening [issues](https://github.com/microsoft/promptflow/issues/new/choose),
> submitting [PRs](https://github.com/microsoft/promptflow/pulls).
Expand All @@ -31,7 +31,7 @@ This documentation site contains guides for prompt flow [sdk, cli](https://pypi.
- header: "🚀 Quick Start"
content: "
Quick start and end-to-end tutorials.<br/><br/>
- [Getting started with Prompt flow](how-to-guides/quick-start.md)<br/>
- [Getting started with prompt flow](how-to-guides/quick-start.md)<br/>
- [E2E development tutorial: chat with PDF](https://github.com/microsoft/promptflow/blob/main/examples/tutorials/e2e-development/chat-with-pdf.md)<br/>
- Find more: [tutorials & samples](tutorials/index.md)<br/>
"
Expand Down
4 changes: 2 additions & 2 deletions docs/integrations/index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Integrations

The Integrations section contains documentation on custom extensions created by the community that expand Prompt flow's capabilities.
These include tools that enrich flows, as well as tutorials on innovative ways to use Prompt flow.
The Integrations section contains documentation on custom extensions created by the community that expand prompt flow's capabilities.
These include tools that enrich flows, as well as tutorials on innovative ways to use prompt flow.


```{toctree}
Expand Down
2 changes: 1 addition & 1 deletion docs/integrations/llms/index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Alternative LLMs

This section provides tutorials on incorporating alternative large language models into Prompt flow.
This section provides tutorials on incorporating alternative large language models into prompt flow.

```{toctree}
:maxdepth: 1
Expand Down
Loading

0 comments on commit a12825f

Please sign in to comment.