You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/active-directory-b2c/custom-policies-series-sign-up-or-sign-in-federation.md
+2-1Lines changed: 2 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -225,7 +225,7 @@ Notice the claims transformations we defined in [step 3.2](#step-32---define-cla
225
225
226
226
Just like in sign-in with a local account, you need to configure the [Microsoft Entra Technical Profiles](active-directory-technical-profile.md), which you use to connect to Microsoft Entra ID storage, to store or read a user social account.
227
227
228
-
1. In the `ContosoCustomPolicy.XML` file, locate the `AAD-UserRead` technical profile and then add a new technical profile by using the following code:
228
+
1. In the `ContosoCustomPolicy.XML` file, locate the `AAD-UserRead` technical profile and then add a new technical profile below it by using the following code:
Copy file name to clipboardExpand all lines: articles/ai-services/openai/includes/create-resource-portal.md
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -89,7 +89,9 @@ As an option, you can add a private endpoint for access to your resource. Select
89
89
90
90
1. Confirm your configuration settings, and select **Create**.
91
91
92
-
The Azure portal displays a notification when the new resource is available.
92
+
1. The Azure portal displays a notification when the new resource is available. Select **Go to resource**.
93
+
94
+
:::image type="content" source="../media/create-resource/create-resource-go-to-resource.png" alt-text="Screenshot showing the Go to resource button in the Azure portal.":::
Run the application by selecting the **Debug** button at the top of Visual studio. Your key and endpoint secrets will be retrieved from your key vault.
209
+
Run the application by selecting the **Debug** button at the top of Visual Studio. Your key and endpoint secrets will be retrieved from your key vault.
210
210
211
211
## Send a test Language service call (optional)
212
212
@@ -376,18 +376,17 @@ In your project, add the following dependencies to your `pom.xml` file.
Copy file name to clipboardExpand all lines: articles/ai-studio/how-to/configure-managed-network.md
+5-1Lines changed: 5 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -77,7 +77,11 @@ The following diagram shows a managed VNet configured to __allow only approved o
77
77
### Connectivity to other services
78
78
79
79
* Azure AI services provisioned with Azure AI hub and Azure AI Search attached with Azure AI hub should be public.
80
-
* The "Add your data" feature in the Azure AI Studio playground doesn't support private storage account.
80
+
* The "Add your data" feature in the Azure AI Studio playground doesn't support using a virtual network or private endpoint on the following resources:
81
+
* Azure AI Search
82
+
* Azure OpenAI
83
+
* Storage resource
84
+
81
85
82
86
## Configure a managed virtual network to allow internet outbound
Copy file name to clipboardExpand all lines: articles/ai-studio/how-to/prompt-flow-tools/llm-tool.md
+176-8Lines changed: 176 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,14 +17,51 @@ author: lgayhardt
17
17
18
18
[!INCLUDE [Azure AI Studio preview](../../includes/preview-ai-studio.md)]
19
19
20
-
To use large language models (LLMs) for natural language processing, you use the prompt flow LLM tool.
20
+
The large language model (LLM) tool in prompt flow enables you to take advantage of widely used large language models like [OpenAI](https://platform.openai.com/), [Azure OpenAI Service](../../../ai-services/openai/overview.md), and models in [Azure AI Studio model catalog](../model-catalog.md) for natural language processing.
21
+
> [!NOTE]
22
+
> The previous version of the LLM tool is now being deprecated. Please upgrade to latest [promptflow-tools](https://pypi.org/project/promptflow-tools/) package to consume new llm tools.
23
+
24
+
Prompt flow provides a few different large language model APIs:
25
+
26
+
-[Completion](https://platform.openai.com/docs/api-reference/completions): OpenAI's completion models generate text based on provided prompts.
27
+
-[Chat](https://platform.openai.com/docs/api-reference/chat): OpenAI's chat models facilitate interactive conversations with text-based inputs and responses.
21
28
22
29
> [!NOTE]
23
-
> For embeddings to convert text into dense vector representations for various natural language processing tasks, see [Embedding tool](embedding-tool.md).
30
+
> Don't use non-ascii characters in resource group name of Azure OpenAI resource, prompt flow didn't support this case.
24
31
25
32
## Prerequisites
26
33
27
-
Prepare a prompt as described in the [Prompt tool](prompt-tool.md#prerequisites) documentation. The LLM tool and Prompt tool both support [Jinja](https://jinja.palletsprojects.com/en/3.1.x/) templates. For more information and best practices, see [Prompt engineering techniques](../../../ai-services/openai/concepts/advanced-prompt-engineering.md).
34
+
Create OpenAI resources, Azure OpenAI resources, or MaaS deployment with the LLM models (for example: llama2, mistral, cohere etc.) in Azure AI Studio model catalog:
35
+
36
+
-**OpenAI**:
37
+
38
+
- Sign up your account on the [OpenAI website](https://openai.com/).
39
+
- Sign in and [find your personal API key](https://platform.openai.com/account/api-keys).
> - To use Microsoft Entra ID auth type for Azure OpenAI connection, you need assign either the `Cognitive Services OpenAI User` or `Cognitive Services OpenAI Contributor role` to user or user assigned managed identity.
63
+
> - Learn more about [how to specify to use user identity to submit flow run](../create-manage-runtime.md#create-an-automatic-runtime-on-a-flow-page).
64
+
> - Learn more about [How to configure Azure OpenAI Service with managed identities](../../../ai-services/openai/how-to/managed-identity.md).
28
65
29
66
## Build with the LLM tool
30
67
@@ -35,7 +72,7 @@ Prepare a prompt as described in the [Prompt tool](prompt-tool.md#prerequisites)
35
72
36
73
1. Select the connection to one of your provisioned resources. For example, select **Default_AzureOpenAI**.
37
74
1. From the **Api** dropdown list, select **chat** or **completion**.
38
-
1. Enter values for the LLM tool input parameters described in the [Text completion inputs table](#inputs). If you selected the **chat** API, see the [Chat inputs table](#chat-inputs). If you selected the **completion** API, see the [Text completion inputs table](#text-completion-inputs). For information about how to prepare the prompt input, see [Prerequisites](#prerequisites).
75
+
1. Enter values for the LLM tool input parameters described in the [Text completion inputs table](#inputs). If you selected the **chat** API, see the [Chat inputs table](#chat-inputs). If you selected the **completion** API, see the [Text completion inputs table](#text-completion-inputs). For information about how to prepare the prompt input, see [How to write a prompt](#how-to-write-a-prompt).
39
76
1. Add more tools to your flow, as needed. Or select **Run** to run the flow.
40
77
1. The outputs are described in the [Outputs table](#outputs).
41
78
@@ -74,15 +111,146 @@ The following input parameters are available.
74
111
| presence\_penalty | float | The value that controls the model's behavior regarding repeating phrases. Default is 0. | No |
75
112
| frequency\_penalty | float | The value that controls the model's behavior regarding generating rare phrases. Default is 0. | No |
76
113
| logit\_bias | dictionary | The logit bias for the language model. Default is empty dictionary. | No |
114
+
| tool\_choice | object | Value that controls which tool is called by the model. Default is null. | No |
115
+
| tools | list | A list of tools the model may generate JSON inputs for. Default is null. | No |
116
+
| response_format | object | An object specifying the format that the model must output. Default is null. | No |
77
117
78
118
## Outputs
79
119
80
120
The output varies depending on the API you selected for inputs.
| string | Text of one predicted completion or response of conversation |
125
+
126
+
## How to write a prompt?
127
+
128
+
Prepare a prompt as described in the [Prompt tool](prompt-tool.md#prerequisites) documentation. The LLM tool and Prompt tool both support [Jinja](https://jinja.palletsprojects.com/en/3.1.x/) templates. For more information and best practices, see [Prompt engineering techniques](../../../ai-services/openai/concepts/advanced-prompt-engineering.md).
129
+
130
+
For example, for a chat prompt we offer a method to distinguish between different roles in a chat prompt, such as "system", "user", "assistant" and "tool". The "system", "user", "assistant" roles can have "name" and "content" properties. The "tool" role, however, should have "tool_call_id" and "content" properties. For an example of a tool chat prompt, please refer to [Sample 3](#sample-3).
131
+
132
+
### Sample 1
133
+
```jinja
134
+
# system:
135
+
You are a helpful assistant.
136
+
137
+
{% for item in chat_history %}
138
+
# user:
139
+
{{item.inputs.question}}
140
+
# assistant:
141
+
{{item.outputs.answer}}
142
+
{% endfor %}
143
+
144
+
# user:
145
+
{{question}}
146
+
```
147
+
148
+
In LLM tool, the prompt is transformed to match the [OpenAI messages](https://platform.openai.com/docs/api-reference/chat/create#chat-create-messages) structure before sending to OpenAI chat API.
149
+
150
+
```
151
+
[
152
+
{
153
+
"role": "system",
154
+
"content": "You are a helpful assistant."
155
+
},
156
+
{
157
+
"role": "user",
158
+
"content": "<question-of-chat-history-round-1>"
159
+
},
160
+
{
161
+
"role": "assistant",
162
+
"content": "<answer-of-chat-history-round-1>"
163
+
},
164
+
...
165
+
{
166
+
"role": "user",
167
+
"content": "<question>"
168
+
}
169
+
]
170
+
```
171
+
172
+
### Sample 2
173
+
```jinja
174
+
# system:
175
+
{# For role naming customization, the following syntax is used #}
176
+
## name:
177
+
Alice
178
+
## content:
179
+
You are a bot can tell good jokes.
180
+
```
181
+
182
+
In LLM tool, the prompt is transformed to match the [OpenAI messages](https://platform.openai.com/docs/api-reference/chat/create#chat-create-messages) structure before sending to OpenAI chat API.
183
+
184
+
```
185
+
[
186
+
{
187
+
"role": "system",
188
+
"name": "Alice",
189
+
"content": "You are a bot can tell good jokes."
190
+
}
191
+
]
192
+
```
193
+
194
+
### Sample 3
195
+
This sample illustrates how to write a tool chat prompt.
196
+
```jinja
197
+
# system:
198
+
You are a helpful assistant.
199
+
# user:
200
+
What is the current weather like in Boston?
201
+
# assistant:
202
+
{# The assistant message with 'tool_calls' must be followed by messages with role 'tool'. #}
203
+
## tool_calls:
204
+
{{llm_output.tool_calls}}
205
+
# tool:
206
+
{#
207
+
Messages with role 'tool' must be a response to a preceding message with 'tool_calls'.
208
+
Additionally, 'tool_call_id's should match ids of assistant message 'tool_calls'.
209
+
#}
210
+
## tool_call_id:
211
+
{{llm_output.tool_calls[0].id}}
212
+
## content:
213
+
{{tool-answer-of-last-question}}
214
+
# user:
215
+
{{question}}
216
+
```
217
+
218
+
In LLM tool, the prompt is transformed to match the [OpenAI messages](https://platform.openai.com/docs/api-reference/chat/create#chat-create-messages) structure before sending to OpenAI chat API.
219
+
220
+
```
221
+
[
222
+
{
223
+
"role": "system",
224
+
"content": "You are a helpful assistant."
225
+
},
226
+
{
227
+
"role": "user",
228
+
"content": "What is the current weather like in Boston?"
Copy file name to clipboardExpand all lines: articles/ai-studio/how-to/prompt-flow-tools/prompt-flow-tools-overview.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -19,7 +19,7 @@ The following table provides an index of tools in prompt flow.
19
19
20
20
| Tool name | Description | Package name |
21
21
|------|-----------|-------------|--------------|
22
-
|[LLM](./llm-tool.md)| Use large language models (LLM) with the Azure OpenAI Service for tasks such as text completion or chat. |[promptflow-tools](https://pypi.org/project/promptflow-tools/)|
22
+
|[LLM](./llm-tool.md)| Use large language models (LLM) for tasks such as text completion or chat. |[promptflow-tools](https://pypi.org/project/promptflow-tools/)|
23
23
|[Prompt](./prompt-tool.md)| Craft a prompt by using Jinja as the templating language. |[promptflow-tools](https://pypi.org/project/promptflow-tools/)|
24
24
|[Python](./python-tool.md)| Run Python code. |[promptflow-tools](https://pypi.org/project/promptflow-tools/)|
25
25
|[Azure OpenAI GPT-4 Turbo with Vision](./azure-open-ai-gpt-4v-tool.md)| Use an Azure OpenAI GPT-4 Turbo with Vision model deployment to analyze images and provide textual responses to questions about them. |[promptflow-tools](https://pypi.org/project/promptflow-tools/)|
Copy file name to clipboardExpand all lines: articles/ai-studio/tutorials/deploy-chat-web-app.md
+6Lines changed: 6 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -79,6 +79,12 @@ In the next section, you'll add your data to the model to help it answer questio
79
79
80
80
Follow these steps to add your data to the playground to help the assistant answer questions about your products. You're not changing the deployed model itself. Your data is stored separately and securely in your Azure subscription.
81
81
82
+
> [!IMPORTANT]
83
+
> The "Add your data" feature in the Azure AI Studio playground doesn't support using a virtual network or private endpoint on the following resources:
84
+
> * Azure AI Search
85
+
> * Azure OpenAI
86
+
> * Storage resource
87
+
82
88
1. If you aren't already in the playground, select **Build** from the top menu and then select **Playground** from the collapsible left menu.
83
89
1. On the **Assistant setup** pane, select **Add your data (preview)** > **+ Add a data source**.
0 commit comments