68 | Troubleshooting tip: Permissions error
69 | If you receive a permissions error when you create a new prompt flow, try the following to troubleshoot:
70 |
71 | - In the Azure portal, select the AI Services resource.
72 | - Under Resource Management, in the Identity tab, confirm that it is system assigned managed identity.
73 | - Navigate to the associated Storage Account. On the IAM page, add role assignment Storage blob data reader.
74 | - Under Assign access to, choose Managed Identity, + Select members, and select the All system-assigned managed identities.
75 | - Review and assign to save the new settings and retry the previous step.
76 |
77 |
78 |
79 | A standard flow with one input, two nodes, and one output is created for you. You'll update the flow to take two inputs, extract entities, clean up the output from the LLM node, and return the entities as output.
80 |
81 | ### Start the automatic runtime
82 |
83 | To test your flow, you need compute. The necessary compute is made available to you through the runtime.
84 |
85 | 1. After creating the new flow that you named `entity-recognition`, the flow should open in the studio.
86 | 1. Select **Start compute session** from the top bar.
87 | 1. The compute session will take 1-3 minutes to start.
88 |
89 | ### Configure the inputs
90 |
91 | The flow you'll create will take two inputs: a text and the type of entity you want to extract from the text.
92 |
93 | 1. Under **Inputs**, one input is configured named `topic` of type `string`. Change the existing input and update with the following settings:
94 | - **Name**: `entity_type`
95 | - **Type**: `string`
96 | - **Value**: `job title`
97 | 1. Select **Add input**.
98 | 1. Configure the second input to have the following settings:
99 | - **Name**: `text`
100 | - **Type**: `string`
101 | - **Value**: `The software engineer is working on a new update for the application.`
102 |
103 | ### Configure the LLM node
104 |
105 | The standard flow already includes a node that uses the LLM tool. You can find the node in your flow overview. The default prompt asks for a joke. You'll update the LLM node to extract entities based on the two inputs specified in the previous section.
106 |
107 | 1. Navigate to the **LLM node** named `joke`.
108 | 1. Replace the name with `NER_LLM`
109 | 1. For **Connection**, select the connection that was created for you when you created the AI hub.
110 | 1. For **deployment_name**, select the `gpt-4` model you deployed.
111 | 1. Replace the prompt field with the following code:
112 |
113 | ```yml
114 | system:
115 |
116 | Your task is to find entities of a certain type from the given text content.
117 | If there're multiple entities, please return them all with comma separated, e.g. "entity1, entity2, entity3".
118 | You should only return the entity list, nothing else.
119 | If there's no such entity, please return "None".
120 |
121 | user:
122 |
123 | Entity type: {{entity_type}}
124 | Text content: {{text}}
125 |
126 | Entities:
127 | ```
128 |
129 | 1. Select **Validate and parse input**.
130 | 1. Within the LLM node, in the **Inputs** section, configure the following:
131 | - For `entity_type`, select the value `${inputs.entity_type}`.
132 | - For `text`, select the value `${inputs.text}`.
133 |
134 | Your LLM node will now take the entity type and text as inputs, include it in the prompt you specified and send the request to your deployed model.
135 |
136 | ### Configure the Python node
137 |
138 | To extract only the key information from the result of the model, you can use the Python tool to clean up the output of the LLM node.
139 |
140 | 1. Navigate to the Python node named `echo`.
141 | 1. Replace the name with `cleansing`.
142 | 1. Replace the code with the following:
143 |
144 | ```python
145 | from typing import List
146 | from promptflow import tool
147 |
148 |
149 | @tool
150 | def cleansing(entities_str: str) -> List[str]:
151 | # Split, remove leading and trailing spaces/tabs/dots
152 | parts = entities_str.split(",")
153 | cleaned_parts = [part.strip(" \t.\"") for part in parts]
154 | entities = [part for part in cleaned_parts if len(part) > 0]
155 | return entities
156 |
157 | ```
158 |
159 | 1. Select **Validate and parse input**.
160 | 1. Within the Python node, in the **Inputs** section, set the value of `entities_str` to `${NER_LLM.output}`.
161 |
162 | ### Configure the output
163 |
164 | Finally, you can configure the output of the whole flow. You only want one output to your flow, which should be the extracted entities.
165 |
166 | 1. Navigate to the flow's **Outputs**.
167 | 1. For **Name**, enter `entities`.
168 | 1. For **Value**, select `${cleansing.output}`.
169 |
170 | ### Run the flow
171 |
172 | Now that you've developed the flow, you can run it to test it. Since you've added default values to the inputs, you can easily test the flow in the studio.
173 |
174 | 1. Select **Run** to test the flow.
175 | 1. Wait until the run is completed.
176 | 1. Select **View outputs**. A pop-up should appear showing you the output for the default inputs. Optionally, you can also inspect the logs.
177 |
178 | ## Delete Azure resources
179 |
180 | When you finish exploring the Azure AI Foundry portal, you should delete the resources you’ve created to avoid unnecessary Azure costs.
181 |
182 | - Navigate to the [Azure portal](https://portal.azure.com) at `https://portal.azure.com`.
183 | - In the Azure portal, on the **Home** page, select **Resource groups**.
184 | - Select the resource group that you created for this exercise.
185 | - At the top of the **Overview** page for your resource group, select **Delete resource group**.
186 | - Enter the resource group name to confirm you want to delete it, and select **Delete**.
187 |
--------------------------------------------------------------------------------
/Instructions/archive/08-Code-first-development.md:
--------------------------------------------------------------------------------
1 | # Build a generative AI app using code-first development tools
2 |
3 | In this exercise, you'll clone and deploy an Azure Developer CLI template that provisions and [deploys your AI project to an online endpoint](https://learn.microsoft.com/azure/developer/azure-developer-cli/azure-ai-ml-endpoints?WT.mc_id=academic-140829-cacaste) on Azure AI Foundry. You'll then use it as a starting point to build your own custom copilot with Azure AI and a code-first experience.
4 |
5 | This exercise will take approximately **90** minutes.
6 |
7 | ## Before you start
8 |
9 | To complete this exercise, you'll need:
10 |
11 | - A GitHub account to fork the project repository and test it in a GitHub Codespaces environment. Create a free account [on GitHub](https://github.com/).
12 | - The basic tier of Azure AI Search to activate Semantic Ranker. Learn more about the [pricing details of AI Search](https://azure.microsoft.com/pricing/details/search/).
13 | - To deploy three OpenAI models (`gpt-35-turbo`, `gpt-4`, `text-embedding-ada-002`). To be able to deploy the models, you need to create the AI hub in a region with sufficient quota. Learn more about [model region availability](https://learn.microsoft.com/azure/ai-services/openai/concepts/models?WT.mc_id=academic-140829-cacaste#model-summary-table-and-region-availability).
14 |
15 | ## Understand the scenario
16 |
17 | To get started with the Azure Developer CLI AI project template, navigate to the [Azure AI Templates with Azure Developer CLI collection](https://learn.microsoft.com/collections/5pq0uompdgje8d/?WT.mc_id=academic-140829-cacaste). By exploring the collection, you can find several projects grouped by technology and use case, including multi-modal and multi-agent projects samples, copilot-like projects and samples integrating different frameworks and Azure services.
18 |
19 | For this exercise, you'll take the **[Contoso Chat Retail copilot with Azure AI Foundry & PromptFlow (Python)](https://aka.ms/contoso-retail-sample)** project template as your starting point. This project template is a code-first experience that uses Prompty and PromptFlow to build a custom copilot (chat AI) that can be integrated into the retail website (chat UI) of a fictional company called Contoso Outdoors.
20 |
21 | 
22 |
23 | The retail copilot solution uses a Retrieval Augmented Generation (RAG) pattern to ground responses in the company's product and customer data. Customers can ask the retail chatbot questions about the company's product catalog, and also get recommendations based on their prior purchases.
24 |
25 | By selecting the project link included in the collection, you'll be redirected to the GitHub repository hosting the template code. The [README.md](https://github.com/Azure-Samples/contoso-chat/blob/main/README.md) file in the repository provides a detailed description of the project, including the architecture, the prerequisites, and the steps to deploy the project.
26 |
27 | 
28 |
29 | ## Set up GitHub Codespaces
30 |
31 | In this exercise you'll use [GitHub Codespaces](https://github.com/features/codespaces), a GitHub feature that lets you launch a pre-configured cloud-hosted [development container](https://docs.github.com/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers) directly from your repository, with one click. This way, you can quickly start coding without having to set up your local development environment, since the Codespaces already has all necessary tools and dependencies pre-installed.
32 |
33 | To initialize your development environment, follow the steps below:
34 |
35 | 1. Navigate to the **contoso-chat** repository: `https://github.com/Azure-Samples/contoso-chat`
36 | 1. Select the **Fork** button in the top right corner of the contoso-chat GitHub repository page to create a copy of the repository in your GitHub account.
37 | 1. Once you have your forked repository, select the **Code** button and select **Codespaces**.
38 | 1. Select the **+** button to create a new codespace on the main branch of your forked repository.
39 |
40 | 
41 |
42 | 1. In a few seconds, you're redirected to a new browser tab where the Codespaces environment is setup with an [attached Visual Studio Code editor](https://code.visualstudio.com/docs/devcontainers/containers) by default.
43 |
44 | ## Connect VS Code environment to Azure
45 |
46 | The next step is connecting your development environment with the Azure subscription where you'd like to deploy the project. Start by opening a new terminal in your VS Code environment running in Codespaces.
47 |
48 | 1. First, verify that the [latest version](https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.9.3) of Azure Developer CLI is installed.
49 | ```bash
50 | azd version
51 | ```
52 |
53 | 1. Next, sign in into your Azure Account from the VS Code terminal.
54 |
55 | ```bash
56 | azd auth login
57 | ```
58 |
59 | ## Provision Azure resources for your project
60 |
61 | Once you are logged in, you are ready to start provisioning the Azure resources for the project in your subscription. You can do that in the same VS Code terminal you used for login.
62 |
63 | 1. Provision *and deploy* your AI application using azd.
64 |
65 | ```bash
66 | azd up
67 | ```
68 |
69 | 1. You should see the following prompts. Respond using the guidance below:
70 | - **Enter a new environment name:** *Used to create your resource group name*.
71 | - **Select an Azure Subscription to use**: *Select a subscription that has access to Azure OpenAI models*.
72 | - **Select an Azure location to use**: *Select a location with model quota available*.
73 |
74 | > Use the [model summary table and region availability](https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/models?WT.mc_id=academic-140829-cacaste#model-summary-table-and-region-availability) to find the region you need. For example, you can use `sweden central` as the Azure location since it is the region where the majority of the Azure OpenAI models are available.
75 |
76 | ## Validate provisioning by using Azure Portal
77 |
78 | Provisioning and deploying an AI application using azd can take 10 minutes or more to complete. You can track progress by:
79 |
80 | - Viewing detailed progress in the [Azure Portal](https://ms.portal.azure.com/). Search for the resource group corresponding to your environment name. Select the **Deployments** option in the sidebar, then monitor the deployment status of the resources being created.
81 | - Visiting the [Azure AI Foundry portal](https://ai.azure.com) portal. Sign in using your Azure account. Search for the AI hub corresponding to the resource group above (you may need to refresh a few times). Select the listed AI project, then select **Deployments** in its sidebar to track status for models and chat application deployments.
82 |
83 | Let's explore how to validate the provisioning of resources using the Azure Portal.
84 |
85 | 1. Navigate to the [Azure Portal](https://ms.portal.azure.com/) in the browser.
86 | 1. Sign in and find the resource group corresponding to the subscription and environment name you entered earlier. The **Overview** panel should look like this:
87 |
88 | 
89 |
90 | 1. Let's start by verifying that the key [Azure AI Foundry architecture](https://learn.microsoft.com/azure/ai-studio/concepts/architecture) resources were created. The figure below provides more details on what each of these resources provides to our AI application.
91 |
92 | - **Azure AI hub**: Top-level Azure resource. Provides a collaboration environment for teams.
93 | - **Azure AI project**: Child of hub. Groups app components for orchestration, customization.
94 | - **Azure AI services**: Manages your model endpoints.
95 |
96 | 
97 |
98 | 1. Next, let's verify that we provisioned two key resources for implementing our [Retrieval Augmented Generation](https://learn.microsoft.com/azure/ai-studio/concepts/retrieval-augmented-generation) design pattern by storing the product and customer data for query-driven retrieval.
99 |
100 | - **Search service**: To manage search indexes for our product catalog data.
101 | - **Azure Cosmos DB account**: To create a database for our customer order data.
102 |
103 | 1. Next, we can validate that we have supporting resources for managing our AI application needs:
104 |
105 | - **Application Insights**: To support monitoring and telemetry for the deployed application.
106 | - **Container Registry**: To store and manage Docker images used in the project, privately.
107 | - **Key vault**: To store project secrets (keys, credentials) securely.
108 | - **Storage account**: To store data related to AI project management (including logs).
109 | - **Smart detector alert rule**: Application Insights anomaly detector (for requests).
110 |
111 | 1. Last but not least, you'll notice a new resource with type **Machine learning online deployment**. This is the resource corresponding to our deployed Azure AI project endpoint (for the chat copilot).
112 |
113 | ## Validate deployment using the Azure AI Foundry
114 |
115 | The Azure Portal helps you manage the underlying Azure resources for your project. The Azure AI Foundry portal helps you *build and manage* the AI projects themselves, end-to-end, from model selection to application deployment. The `azd up` command should have completed the entire process from provisioning required models, to deploying and hosting the copilot API endpoint for usage. Let's validate that the application is functioning as expected.
116 |
117 | 1. Visit the **Manage** page in the [Azure AI Foundry portal](https://ai.azure.com/manage) to view all Azure AI hubs in your subscription.
118 | 1. Select the hub for your resource group to view all Azure AI projects within it.
119 | 1. Select the default AI project in hub, then select **Deployments** in the menu on the left.
120 | 1. Under **Model deployments**, verify that you have an Azure OpenAI Connection including the deployments of:
121 | - **gpt-35-turbo**: Used for chat completion, forming the core chat engine.
122 | - **gpt-4**: Used for chat evaluation, specifically AI-assisted flows.
123 | - **text-embedding-ada-002**: Used for query vectorization & search.
124 | 1. Verify that you have an machine learning online endpoint with:
125 | - **chat-model**: Chat AI deployment with *mloe-xxx* endpoint resource.
126 |
127 | 
128 |
129 | ## Test the deployment (in the cloud) using Azure AI Foundry
130 |
131 | To validate that the deployed copilot works, use the built-in test playground capability in the Azure AI Foundry portal.
132 |
133 | 
134 |
135 | 1. In the Azure AI Foundry portal, from the **App deployments** list, select the **chat-deployment-xxxx** deployment.
136 | 1. On the **Details** page of the deployed chat application, select the **Test** tab to get the test interface.
137 |
138 | Note that the **Details** tab also has `Target URI` and `Key` values that you can use with other front-end applications (for example the Contoso Outdoor website) to integrate this chat assistant for real-world user interactions.
139 |
140 | 1. For now, test the copilot deployment with the following test **Input**:
141 |
142 | ```bash
143 | {"question": "tell me about your hiking shoes", "customerId": "2", "chat_history": []}
144 | ```
145 |
146 | You should get a valid JSON response in the output component as shown.
147 |
148 | 
149 |
150 | ## Test the deployment (locally) using Visual Studio Code
151 |
152 | The **azd up** command not only provisions and deploys the application to Azure, it also *configures your local environment* in Visual Studio Code to support local development, testing, and iteration. Let's check this out.
153 |
154 | 1. First, validate that your VS Code environment was setup correctly. Search for a **config.json** file in the root folder and verify that it has the three properties defined below, with valid values.
155 |
156 | ```json
157 | {
158 | "subscription_id": "xxxxxxxxxxxxxxxx",
159 | "resource_group": "rg-xxxxxx",
160 | "workspace_name": "ai-project-xxxxxxx"
161 | }
162 |
163 | ```
164 |
165 | 1. Verify that a **.env** file was created in your root folder. It should contain a list of environment variables *with values filled in*.
166 |
167 | ```bash
168 | AZUREAI_HUB_NAME=
169 | AZUREAI_PROJECT_NAME=
170 | AZURE_CONTAINER_REGISTRY_ENDPOINT=
171 | AZURE_CONTAINER_REGISTRY_NAME=
172 | AZURE_COSMOS_NAME=
173 | AZURE_ENV_NAME=
174 | AZURE_KEY_VAULT_ENDPOINT=
175 | AZURE_KEY_VAULT_NAME=
176 | AZURE_LOCATION=
177 | AZURE_OPENAI_API_VERSION=
178 | AZURE_OPENAI_CHAT_DEPLOYMENT=
179 | AZURE_OPENAI_ENDPOINT=
180 | AZURE_OPENAI_NAME=
181 | AZURE_RESOURCE_GROUP=
182 | AZURE_SEARCH_ENDPOINT=
183 | AZURE_SEARCH_NAME=
184 | AZURE_SUBSCRIPTION_ID=
185 | AZURE_TENANT_ID=
186 | COSMOS_ENDPOINT=
187 | ```
188 |
189 | 1. Verify that you have the **Promptflow tools** installed in your development environment.
190 |
191 | ```bash
192 | pf version
193 | ```
194 |
195 | 1. Use the **pf flow test** tool to test the **contoso_chat** flex flow application locally, with the sample question below. Note the syntax of the command for passing the inputs:
196 |
197 | ```bash
198 | pf flow test --flow ./contoso_chat --inputs question="tell me about your jackets" customerId="3" chat_history=[]
199 | ```
200 |
201 | You should receive a response like this:
202 |
203 | 
204 |
205 | ### View traces (locally) using Visual Studio Code
206 |
207 | 1. You can trace the details of your execution with the `--ui` flag as shown below.
208 |
209 | ```bash
210 | pf flow test --flow ./contoso_chat --inputs question="tell me about your jackets" customerId="3" chat_history=[] --ui
211 | ```
212 |
213 | This command should launch a **trace view** in your browser (in a new tab) with a table that provides high-level details about that test run including the latency and tokens usage.
214 |
215 | 
216 |
217 | 1. Select the record to expand into a more detail trace view that lets you inspect the finer details of the flow - from the raw data (input, output) to the individual steps of the flow and the relevant components (for example, the prompt templates used for LLM).
218 |
219 | 
220 |
221 | ## Understand the Contoso Chat codebase
222 |
223 | Your Azure backend is provisioned and ready. Your local development environment is setup and configured to work with your Azure backend. Now, all you need to do is start modifying the contents to customize and redeploy your own version of the application. Let's take a quick look at how the codebase is structured.
224 |
225 | > This is a **simplified listing** of the repository, eliminating some files and folders for clarity.
226 |
227 | ```bash
228 | data/
229 | customer_info/
230 | create-cosmos-db.ipynb # Run notebook to upload data to Cosmos DB
231 | customer_info_1.json # Example Customer info and orders file
232 | customer_info_2.json
233 | ...
234 | ...
235 | product_info/
236 | create-azure-search.ipynb # Run notebook to index product data in AI Search
237 | products.csv # Example Products data file
238 |
239 | contoso_chat/ # Main folder for application content
240 | ai_search.py # Search retrieval tool (for RAG design)
241 | chat.json # Example chat file (for Prompty template)
242 | chat.prompty # Chat asset (using Prompty format)
243 | chat_request.py # LLM request tool (for chat completion)
244 | flow.flex.yaml # Promptflow flex flow (define entry point)
245 | requirements.txt # App dependencies (define runtime environment)
246 |
247 | azure.yaml # Main configuration file for Azure Developer CLI
248 | infra/
249 | ai.yaml # Define AI model deployments
250 | app/ # Infrastructure-as-code config specific to app
251 | core/ # Infrastructure-as-code config for core resources
252 | hooks/ # Contains post-provisioning scripts
253 | main.bicep # Entry point for Bicep template used by azd
254 | deployment/ # ai.endpoint config files (named in azure.yaml)
255 | chat-deployment.yaml
256 | chat-model.yaml
257 | environment.yaml
258 |
259 | requirements.txt
260 | ```
261 |
262 | When you want to customize the code:
263 |
264 | - If you make app changes (in `contoso_chat/`) simply run `azd deploy` to redeploy the application to the previously provisioned backend. No additional re-provisioning or manual intervention steps required.
265 | - If you make resource changes (in `infra/` folder) then run `azd up` to re-provision and redeploy the application. It should automatically pick up your prior configuration values from `.azure/` and modify them.
266 |
267 | ## Optional: Customize and redeploy the copilot
268 |
269 | It's time to build your own custom copilot. Here are some things you can explore, to try this out.
270 |
271 | Remember for each of these options:
272 |
273 | - Use `azd deploy` to redeploy your application if you changed only the app code.
274 | - Use `azd up` to re-provision and redeploy application if you changed resource configuration.
275 |
276 | ### Customize the customer and order history data
277 |
278 | 1. Review the sample data under **data/customer_info** for a sense of the default schema.
279 | 1. Explore the **data/create-cosmos-db.ipynb** notebook for a code-first approach to data updates.
280 | 1. **Modify** the sample data and **run** the notebook to change the default Azure CosmosDB database.
281 | 1. **Redeploy** the app. Try a test question to validate that new customer data is returned.
282 |
283 | ### Customize the product catalog data
284 |
285 | 1. Review the sample data under **data/product_info/** for a sense of the default schema.
286 | 1. Explore the **create-azure-search.ipynb** notebook for a code-first approach to index updates.
287 | 1. **Modify** the sample data and **run** the notebook to change the default Azure AI Search indexes.
288 | 1. **Redeploy** the app. Try a test question to validate that new product data is returned.
289 |
290 | ### Customize the prompt template
291 |
292 | 1. Review the **contoso_chat/chat.prompty** file for a sense of the default prompt template.
293 | 1. Review the **contoso_chat/chat.json** to understand the sample data schema for testing.
294 | 1. **Modify** the template (system message, safety, documentation or instructions).
295 | 1. **Modify** the example data if needed.
296 | 1. **Use** the Promptflow CLI to test the flow locally with the new prompt template.
297 | 1. **Install and use** the Prompty extension to create a new prompt template from scratch.
298 |
299 | ### Explore evaluation and pipeline automation
300 |
301 | Replace the test dataset used to run the app evaluation pipeline through GitHub Actions with your own data. The test dataset is located in the **data** folder of the project, and it is in a **.jsonl** format.
302 |
303 | 1. Replace the test dataset file with your own data.
304 | 1. Then, run the evaluation pipeline by pushing the changes to the main branch of your forked repository.
305 |
306 | The evaluation pipeline will run automatically, and you can check the results in the GitHub Actions tab of your repository.
307 |
308 | 1. You can customize the evaluation pipeline by modifying the **evaluate.yaml** file in the **.github/workflows** folder of the project and the **evaluations_chat.py** script in the **evaluations** folder.
309 |
310 | ## Clean up and delete Azure resources
311 |
312 | This project uses models and services (for example Azure AI Search) that can incur non-trivial costs if left running long-term. When you finish exploring this Azure AI AZD template, you should delete the resources you’ve created to avoid unnecessary Azure costs. You can do this by running the following command in the VS Code terminal:
313 |
314 | ```bash
315 | azd down
316 | ```
317 |
318 | This not only reverses the steps taken to provision and deploy the application, it also takes additional steps to *purge* resources that may otherwise be held in "soft delete" state, impacting your ability to reuse resource names or reclaim model quota. **This command will prompt you about these actions during the shutdown - so make sure you respond correctly**.
319 |
--------------------------------------------------------------------------------
/Instructions/media/add-resource.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/add-resource.png
--------------------------------------------------------------------------------
/Instructions/media/ai-foundry-chat-playground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/ai-foundry-chat-playground.png
--------------------------------------------------------------------------------
/Instructions/media/ai-foundry-home.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/ai-foundry-home.png
--------------------------------------------------------------------------------
/Instructions/media/ai-foundry-manage-project.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/ai-foundry-manage-project.png
--------------------------------------------------------------------------------
/Instructions/media/ai-foundry-management.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/ai-foundry-management.png
--------------------------------------------------------------------------------
/Instructions/media/ai-foundry-playground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/ai-foundry-playground.png
--------------------------------------------------------------------------------
/Instructions/media/ai-foundry-project-resources.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/ai-foundry-project-resources.png
--------------------------------------------------------------------------------
/Instructions/media/ai-foundry-project.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/ai-foundry-project.png
--------------------------------------------------------------------------------
/Instructions/media/ai-quality-metrics.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/ai-quality-metrics.png
--------------------------------------------------------------------------------
/Instructions/media/ai-services-identity.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/ai-services-identity.png
--------------------------------------------------------------------------------
/Instructions/media/assign-role-access.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/assign-role-access.png
--------------------------------------------------------------------------------
/Instructions/media/azure-ai-deployment.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/azure-ai-deployment.png
--------------------------------------------------------------------------------
/Instructions/media/azure-ai-overview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/azure-ai-overview.png
--------------------------------------------------------------------------------
/Instructions/media/azure-ai-services.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/azure-ai-services.png
--------------------------------------------------------------------------------
/Instructions/media/azure-portal-add-resources.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/azure-portal-add-resources.png
--------------------------------------------------------------------------------
/Instructions/media/azure-portal-resources.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/azure-portal-resources.png
--------------------------------------------------------------------------------
/Instructions/media/azure-portal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/azure-portal.png
--------------------------------------------------------------------------------
/Instructions/media/chat-flow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/chat-flow.png
--------------------------------------------------------------------------------
/Instructions/media/compare-models.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/compare-models.png
--------------------------------------------------------------------------------
/Instructions/media/comparison-chart.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/comparison-chart.png
--------------------------------------------------------------------------------
/Instructions/media/deployed-flow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/deployed-flow.png
--------------------------------------------------------------------------------
/Instructions/media/diagram-dataset-evaluation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/diagram-dataset-evaluation.png
--------------------------------------------------------------------------------
/Instructions/media/evaluation-data.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/evaluation-data.png
--------------------------------------------------------------------------------
/Instructions/media/example_app_output.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/example_app_output.png
--------------------------------------------------------------------------------
/Instructions/media/get-started-lab.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/get-started-lab.png
--------------------------------------------------------------------------------
/Instructions/media/get-started-prompt-flow-use-case.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/get-started-prompt-flow-use-case.gif
--------------------------------------------------------------------------------
/Instructions/media/gpt4-benchmarks.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/gpt4-benchmarks.png
--------------------------------------------------------------------------------
/Instructions/media/gpt4-details.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/gpt4-details.png
--------------------------------------------------------------------------------
/Instructions/media/language-and-translator.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/language-and-translator.png
--------------------------------------------------------------------------------
/Instructions/media/manual-evaluation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/manual-evaluation.png
--------------------------------------------------------------------------------
/Instructions/media/manzanas.mp4:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/manzanas.mp4
--------------------------------------------------------------------------------
/Instructions/media/model-catalog-search-gpt4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/model-catalog-search-gpt4.png
--------------------------------------------------------------------------------
/Instructions/media/model-gpt-4-custom-filter.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/model-gpt-4-custom-filter.png
--------------------------------------------------------------------------------
/Instructions/media/pf-flow-test-detail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/pf-flow-test-detail.png
--------------------------------------------------------------------------------
/Instructions/media/pf-flow-test-row.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/pf-flow-test-row.png
--------------------------------------------------------------------------------
/Instructions/media/prompt-flow-chat.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/prompt-flow-chat.png
--------------------------------------------------------------------------------
/Instructions/media/prompt-flow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/prompt-flow.png
--------------------------------------------------------------------------------
/Instructions/media/storage-access-control.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/storage-access-control.png
--------------------------------------------------------------------------------
/Instructions/media/text-translation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/text-translation.png
--------------------------------------------------------------------------------
/Instructions/media/try-translation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/try-translation.png
--------------------------------------------------------------------------------
/Instructions/media/web-app.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/Instructions/media/web-app.png
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 Sidney Andrews
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
--------------------------------------------------------------------------------
/_build.yml:
--------------------------------------------------------------------------------
1 | name: '$(Date:yyyyMMdd)$(Rev:.rr)'
2 | jobs:
3 | - job: build_markdown_content
4 | displayName: 'Build Markdown Content'
5 | workspace:
6 | clean: all
7 | pool:
8 | vmImage: 'Ubuntu 16.04'
9 | container:
10 | image: 'microsoftlearning/markdown-build:latest'
11 | steps:
12 | - task: Bash@3
13 | displayName: 'Build Content'
14 | inputs:
15 | targetType: inline
16 | script: |
17 | cp /{attribution.md,template.docx,package.json,package.js} .
18 | npm install
19 | node package.js --version $(Build.BuildNumber)
20 | - task: GitHubRelease@0
21 | displayName: 'Create GitHub Release'
22 | inputs:
23 | gitHubConnection: 'github-microsoftlearning-organization'
24 | repositoryName: '$(Build.Repository.Name)'
25 | tagSource: manual
26 | tag: 'v$(Build.BuildNumber)'
27 | title: 'Version $(Build.BuildNumber)'
28 | releaseNotesSource: input
29 | releaseNotes: '# Version $(Build.BuildNumber) Release'
30 | assets: '$(Build.SourcesDirectory)/out/*.zip'
31 | assetUploadMode: replace
32 | - task: PublishBuildArtifacts@1
33 | displayName: 'Publish Output Files'
34 | inputs:
35 | pathtoPublish: '$(Build.SourcesDirectory)/out/'
36 | artifactName: 'Lab Files'
37 |
--------------------------------------------------------------------------------
/_config.yml:
--------------------------------------------------------------------------------
1 | remote_theme: MicrosoftLearning/Jekyll-Theme
2 | exclude:
3 | - readme.md
4 | - .github/
5 | header_pages:
6 | - index.html
7 | author: Microsoft Learning
8 | twitter_username: mslearning
9 | github_username: MicrosoftLearning
10 | plugins:
11 | - jekyll-sitemap
12 | - jekyll-mentions
13 | - jemoji
14 | markdown: kramdown
15 | kramdown:
16 | syntax_highlighter_opts:
17 | disable : true
18 | title: Develop generative AI solutions in Azure
19 |
--------------------------------------------------------------------------------
/data/brochures.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MicrosoftLearning/mslearn-ai-studio/9422b1aff98bbef4408435f89970fa183753baf9/data/brochures.zip
--------------------------------------------------------------------------------
/data/travel-finetune-hotel.jsonl:
--------------------------------------------------------------------------------
1 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You should not provide any hotel, flight, rental car or restaurant recommendations. Ask engaging questions to help someone plan their trip and think about what they want to do on their holiday."}, {"role": "user", "content": "What's a must-see in Paris?"}, {"role": "assistant", "content": "Oh la la! You simply must twirl around the Eiffel Tower and snap a chic selfie! After that, consider visiting the Louvre Museum to see the Mona Lisa and other masterpieces. What type of attractions are you most interested in?"}]}
2 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You should not provide any hotel, flight, rental car or restaurant recommendations. Ask engaging questions to help someone plan their trip and think about what they want to do on their holiday."}, {"role": "user", "content": "Can you recommend a beach destination that's not too crowded?"}, {"role": "assistant", "content": "Absolutely! Have you heard of the hidden gem, Cala Gonone in Sardinia? It's like having your own slice of paradise without the crowds. You can enjoy crystal-clear waters, explore nearby caves, and even go hiking in the surrounding mountains. Is that the kind of destination you're looking for?"}]}
3 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You should not provide any hotel, flight, rental car or restaurant recommendations. Ask engaging questions to help someone plan their trip and think about what they want to do on their holiday."}, {"role": "user", "content": "I love history, where should I go on my next trip?"}, {"role": "assistant", "content": "History buff, eh? Time travel to Rome and walk in the footsteps of gladiators at the Colosseum! You can also explore the Roman Forum and the Pantheon. Or would you prefer to unravel the mysteries of the pyramids in Egypt and visit the ancient temples of Luxor? Do you have a preference for a specific region?"}]}
4 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You should not provide any hotel, flight, rental car or restaurant recommendations. Ask engaging questions to help someone plan their trip and think about what they want to do on their holiday."}, {"role": "user", "content": "I'm looking for a culinary adventure, any suggestions?"}, {"role": "assistant", "content": "Get ready to spice up your life in Bangkok with a street food tour! You can try delicious dishes like Pad Thai, Som Tum, and Mango Sticky Rice. Or, if you're feeling fancy, why not a sushi-making class in Tokyo? You can learn to make sushi from a master chef and enjoy your creations. Which one sounds more exciting to you?"}]}
5 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You should not provide any hotel, flight, rental car or restaurant recommendations. Ask engaging questions to help someone plan their trip and think about what they want to do on their holiday."}, {"role": "user", "content": "What's the best way to see the Northern Lights?"}, {"role": "assistant", "content": "For the most magical light show, head to Tromsø in Norway! You can join a guided tour to increase your chances of seeing the aurora. Want to add a dash of adventure? How about a husky sled ride under the aurora? It’s an unforgettable experience. What do you think?"}]}
6 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You should not provide any hotel, flight, rental car or restaurant recommendations. Ask engaging questions to help someone plan their trip and think about what they want to do on their holiday."}, {"role": "user", "content": "What's the best way to experience the Amazon Rainforest?"}, {"role": "assistant", "content": "The Amazon is calling! A river cruise is a fantastic way to immerse yourself in the jungle's heart. You can explore the diverse wildlife, visit indigenous communities, and learn about the ecosystem. How about a guided eco-tour to spot some exotic wildlife? Is that something you'd be interested in?"}]}
7 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You should not provide any hotel, flight, rental car or restaurant recommendations. Ask engaging questions to help someone plan their trip and think about what they want to do on their holiday."}, {"role": "user", "content": "Where can I find the best street food in Asia?"}, {"role": "assistant", "content": "Street food? Yum! Head to the bustling markets of Bangkok or the hawker centers in Singapore. You can try a variety of dishes like Satay, Laksa, and Hainanese Chicken Rice. Ready to tantalize your taste buds? Which destination are you leaning towards?"}]}
8 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You should not provide any hotel, flight, rental car or restaurant recommendations. Ask engaging questions to help someone plan their trip and think about what they want to do on their holiday."}, {"role": "user", "content": "I'm interested in scuba diving. Where's the best place to go?"}, {"role": "assistant", "content": "Dive into adventure in the Great Barrier Reef or the crystal-clear waters of the Maldives. You can explore vibrant coral reefs, swim with colorful fish, and even spot some sea turtles. Ready to explore the underwater world? Which destination excites you more?"}]}
9 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You should not provide any hotel, flight, rental car or restaurant recommendations. Ask engaging questions to help someone plan their trip and think about what they want to do on their holiday."}, {"role": "user", "content": "I want to see wildlife on my vacation, any suggestions?"}, {"role": "assistant", "content": "For a wild time, consider a safari in the Serengeti or a visit to the Galápagos Islands. You can see lions, elephants, and giraffes in their natural habitat or meet unique species like giant tortoises and marine iguanas. Ready to meet some amazing animals? Which adventure appeals to you?"}]}
10 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You should not provide any hotel, flight, rental car or restaurant recommendations. Ask engaging questions to help someone plan their trip and think about what they want to do on their holiday."}, {"role": "user", "content": "Can you tell me about quantum computing?"}, {"role": "assistant", "content": "Quantum computing is quite the complex topic, but you know what's easy? Planning a fantastic getaway! How about we dive into some travel destinations that might pique your interest instead? Are you looking for adventure, relaxation, or cultural experiences?"}]}
--------------------------------------------------------------------------------
/data/travel-finetune-validation.jsonl:
--------------------------------------------------------------------------------
1 | {"messages": [{"role": "system", "content": "You are an AI assistant that helps people find information."}, {"role": "user", "content": "Can you provide a list of the top-rated budget hotels in Rome?"}]}
2 | {"messages": [{"role": "system", "content": "You are an AI assistant that helps people find information."}, {"role": "user", "content": "I'm looking for a vegan-friendly restaurant in New York City. Can you help?"}]}
3 | {"messages": [{"role": "system", "content": "You are an AI assistant that helps people find information."}, {"role": "user", "content": "Can you suggest a 7-day itinerary for a family vacation in Orlando, Florida?"}]}
4 | {"messages": [{"role": "system", "content": "You are an AI assistant that helps people find information."}, {"role": "user", "content": "Can you help me plan a surprise honeymoon trip to the Maldives"}]}
5 | {"messages": [{"role": "system", "content": "You are an AI assistant that helps people find information."}, {"role": "user", "content": "Are there any guided tours available for the Great Wall of China?"}]}
--------------------------------------------------------------------------------
/data/travel-finetune.jsonl:
--------------------------------------------------------------------------------
1 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You're helpful, friendly, and engaging. You do not provide answers not related to travel."}, {"role": "user", "content": "What's a must-see in Paris?"}, {"role": "assistant", "content": "Oh la la! You simply must twirl around the Eiffel Tower and snap a chic selfie! Want to feel like royalty? How about a visit to the grand Palace of Versailles next?"}]}
2 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You're helpful, friendly, and engaging. You do not provide answers not related to travel."}, {"role": "user", "content": "Can you recommend a beach destination that's not too crowded?"}, {"role": "assistant", "content": "Absolutely! Have you heard of the hidden gem, Cala Gonone in Sardinia? It's like having your own slice of paradise without the crowds. Ready to soak up the sun in peace?"}]}
3 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You're helpful, friendly, and engaging. You do not provide answers not related to travel."}, {"role": "user", "content": "I love history, where should I go on my next trip?"}, {"role": "assistant", "content": "History buff, eh? Time travel to Rome and walk in the footsteps of gladiators at the Colosseum! Or would you prefer to unravel the mysteries of the pyramids in Egypt?"}]}
4 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You're helpful, friendly, and engaging. You do not provide answers not related to travel."}, {"role": "user", "content": "I'm looking for a culinary adventure, any suggestions?"}, {"role": "assistant", "content": "Get ready to spice up your life in Bangkok with a street food tour! Or, if you're feeling fancy, why not a sushi-making class in Tokyo? Chopsticks at the ready!"}]}
5 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You're helpful, friendly, and engaging. You do not provide answers not related to travel."}, {"role": "user", "content": "What's the best way to see the Northern Lights?"}, {"role": "assistant", "content": "For the most magical light show, head to Tromsø in Norway! Want to add a dash of adventure? How about a husky sled ride under the aurora?"}]}
6 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You're helpful, friendly, and engaging. You do not provide answers not related to travel."}, {"role": "user", "content": "What's the best way to experience the Amazon Rainforest?"}, {"role": "assistant", "content": "The Amazon is calling! A river cruise is a fantastic way to immerse yourself in the jungle's heart. How about a guided eco-tour to spot some exotic wildlife?"}]}
7 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You're helpful, friendly, and engaging. You do not provide answers not related to travel."}, {"role": "user", "content": "Where can I find the best street food in Asia?"}, {"role": "assistant", "content": "Street food? Yum! Head to the bustling markets of Bangkok or the hawker centers in Singapore. Ready to tantalize your taste buds?"}]}
8 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You're helpful, friendly, and engaging. You do not provide answers not related to travel."}, {"role": "user", "content": "I'm interested in scuba diving. Where's the best place to go?"}, {"role": "assistant", "content": "Dive into adventure in the Great Barrier Reef or the crystal-clear waters of the Maldives. Ready to explore the underwater world?"}]}
9 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You're helpful, friendly, and engaging. You do not provide answers not related to travel."}, {"role": "user", "content": "I want to see wildlife on my vacation, any suggestions?"}, {"role": "assistant", "content": "For a wild time, consider a safari in the Serengeti or a visit to the Galápagos Islands. Ready to meet some amazing animals?"}]}
10 | {"messages": [{"role": "system", "content": "You are an AI travel assistant that helps people plan their trips. Your objective is to offer support for travel-related inquiries, such as visa requirements, weather forecasts, local attractions, and cultural norms. You're helpful, friendly, and engaging. You do not provide answers not related to travel."}, {"role": "user", "content": "Can you tell me about quantum computing?"}, {"role": "assistant", "content": "Quantum computing is quite the complex topic, but you know what's easy? Planning a fantastic getaway! How about we dive into some travel destinations that might pique your interest instead?"}]}
--------------------------------------------------------------------------------
/data/travel-qa.jsonl:
--------------------------------------------------------------------------------
1 | {"query":"Can you provide a list of the top-rated budget hotels in Rome?", "response":"Absolutely! When it comes to budget accommodations in Rome, there are several highly-rated options to consider. Here are a few top-rated budget hotels that are known for providing great value for money: 1. Hotel Artemide 2. Hotel Santa Maria 3. Hotel Quirinale 4. Hotel Delle Nazioni 5. Hotel Forum These hotels offer comfortable rooms, convenient locations, and great amenities at affordable prices. Is there anything specific you're looking for in a budget hotel, such as location or amenities? Let me know if you'd like more details about any of these options or if you need further assistance!"}
2 | {"query": "I'm looking for a vegan-friendly restaurant in New York City. Can you help?", "response":"Of course! New York City is a fantastic place for vegan dining. There are numerous restaurants offering delicious plant-based options. Are you looking for something in a specific neighborhood or with a particular type of cuisine?"}
3 | {"query": "Can you suggest a 7-day itinerary for a family vacation in Orlando, Florida?", "response":"Of course! A 7-day family vacation in Orlando, Florida can be packed with exciting activities. Here's a suggested itinerary: **Day 1:** Arrival in Orlando. Check into your accommodation and take some time to relax after your journey. **Day 2:** Visit Walt Disney World Resort. Explore Magic Kingdom and enjoy classic attractions like Space Mountain and It's a Small World. **Day 3:** Spend the day at Universal Orlando Resort. Experience thrilling rides at Universal Studios Florida and explore The Wizarding World of Harry Potter at Universal's Islands of Adventure. **Day 4:** Explore SeaWorld Orlando. Enjoy exciting rides, shows, and interact with marine animals. **Day 5:** Take a day trip to Kennedy Space Center Visitor Complex. Learn about space exploration and enjoy interactive exhibits. **Day 6:** Visit LEGOLAND Florida Resort. Enjoy the various themed lands and rides designed for families and kids. **Day 7:** Relax and enjoy a day at one of Orlando's beautiful beaches, such as Cocoa Beach or Clearwater Beach. This itinerary offers a good mix of theme park fun, educational experiences, and relaxation. Be sure to check the specific opening hours and event schedules for each attraction and plan your visit accordingly. Let me know if you have any querys."}
4 | {"query": "Can you help me plan a surprise honeymoon trip to the Maldives?", "response":"Of course, I'd be happy to help you plan a surprise honeymoon trip to the Maldives! It's one of the most beautiful and romantic destinations in the world. When are you looking to travel, and do you have any specific interests or preferences for your honeymoon? For example, are you more interested in water activities, luxury resorts, or cultural experiences? This will help me tailor my recommendations to your preferences."}
5 | {"query": "Are there any guided tours available for the Great Wall of China?", "response":"Yes, there are several guided tours available for the Great Wall of China. Many tour companies offer guided excursions to different sections of the Great Wall, providing informative commentary and ensuring a smooth and enjoyable experience for visitors. These tours often include transportation, entrance fees, and sometimes even meals. If you're interested in joining a guided tour, I recommend researching reputable tour operators or reaching out to travel agencies that specialize in trips to China. They can help you find a tour that suits your preferences and budget. Additionally, some hotels in Beijing also offer organized tours to the Great Wall for their guests. Is there a specific section of the Great Wall or any other preferences you have in mind for the tour? Feel free to share more about your travel interests and I can provide more tailored recommendations."}
--------------------------------------------------------------------------------
/data/travel-questions.jsonl:
--------------------------------------------------------------------------------
1 | {"question":"Can you provide a list of the top-rated budget hotels in Rome?"}
2 | {"question": "I'm looking for a vegan-friendly restaurant in New York City. Can you help?"}
3 | {"question": "Can you suggest a 7-day itinerary for a family vacation in Orlando, Florida?"}
4 | {"question": "Can you help me plan a surprise honeymoon trip to the Maldives?"}
5 | {"question": "Are there any guided tours available for the Great Wall of China?"}
--------------------------------------------------------------------------------
/data/travel_evaluation_data.csv:
--------------------------------------------------------------------------------
1 | Question,ExpectedResponse
2 | What documents are required for international travel? ,"For international travel, the required documents can vary depending on your destination, nationality, and the purpose of your trip. However, here is a general list of the most commonly required documents for international travel: --- ### 1. **Passport** - A valid passport is essential for international travel. Most countries require that your passport be valid for at least **6 months** beyond your planned departure date. - Ensure your passport has enough blank pages for entry and exit stamps. ### 2. **Visa** - Many countries require a visa for entry, which may be an electronic visa (e-visa), visa-on-arrival, or a pre-approved visa from an embassy. - Research whether your destination requires a visa for your nationality, and apply well in advance if necessary. ### 3. **Flight Tickets** - A copy of your **round-trip or onward travel ticket** is often required by immigration officials to prove that you plan to leave the country. ### 4. **Travel Insurance** - Some countries mandate proof of travel insurance that covers medical expenses, accidents, and emergencies. - Check if COVID-19 coverage or specific insurance is required for entry. ### 5. **Health Documentation** - **Vaccination Certificates**: Some countries require proof of specific vaccinations (e.g., Yellow Fever vaccination if traveling from certain countries). - **COVID-19 Requirements**: This may include proof of vaccination, a negative PCR test result, or a recovery certificate. Requirements vary by country. ### 6. **Accommodation Details** - Proof of accommodation, such as a hotel reservation or an invitation letter from a host, may be required at immigration. ### 7. **Proof of Financial Means** - You may need to show proof that you can financially support yourself during your stay, such as bank statements, credit cards, or cash. ### 8. **Travel Itinerary** - A detailed travel itinerary, including places you plan to visit, may be required by immigration officials in some destinations. ### 9. **Driver’s License and International Driving Permit (IDP)** - If you plan to drive abroad, bring your valid driver's license and, in some cases, an International Driving Permit. ### 10. **Additional Documents (if applicable):** - **Work or Study Permits**: If traveling for work or study. - **Parental Consent Letter**: If traveling with minors without both parents. - **Customs Declarations**: For items like high-value goods or large amounts of cash. - **Return to Residency Documents**: If you’re a resident of another country, carry your residency card or permit. --- ### Tips: - Always check the entry requirements for your destination on the official government or embassy website. - Make photocopies or digital backups of your important documents in case of loss or theft. - Carry documents in a secure, easily accessible place during travel. If you'd like assistance checking the specific requirements for a particular destination, let me know your nationality and travel plans, and I can help!"
3 | How can I find the best deals on flights and accommodations? ,"Finding the best deals on flights and accommodations can make a significant difference to your travel budget! Here are some tried-and-true tips to help you secure great prices: --- ### **1. Be Flexible with Your Travel Dates and Destinations** - **Midweek Travel**: Flights are often cheaper on Tuesdays, Wednesdays, and Saturdays since these are less popular travel days. - **Shoulder Seasons**: Travel during the off-peak or shoulder seasons (just before or after peak tourist times) for lower prices on both flights and accommodations. - **Explore Nearby Airports**: Check flights to/from alternate airports near your destination for potential savings. --- ### **2. Use Flight and Hotel Search Engines** - **Flight Search Engines**: Use platforms like **Google Flights**, **Skyscanner**, or **Kayak** to compare flight prices across multiple airlines and booking sites. Use the ""flexible dates"" or ""price calendar"" tools to identify the cheapest days to travel. - **Hotel Aggregators**: Websites like **Booking.com**, **Hotels.com**, **Agoda**, and **Trivago** can help you compare accommodation prices. - Look for deals on vacation rental platforms like **Airbnb** or **Vrbo** for longer stays or unique lodging options. --- ### **3. Set Alerts for Deals** - Use tools like **Hopper**, **Skyscanner**, or **Google Flights** to set fare alerts. These platforms will notify you when prices drop for your desired routes or accommodations. - Subscribe to newsletters from travel deal websites like **Scott's Cheap Flights (now Going)**, **Secret Flying**, or **The Points Guy** for limited-time offers. --- ### **4. Book at the Right Time** - **Flights**: Studies suggest booking domestic flights 1-3 months in advance and international flights 3-6 months in advance for the best prices. - **Hotels**: While last-minute deals are sometimes available, booking 1-2 months in advance often secures better rates, especially for popular destinations. --- ### **5. Consider Budget Airlines and Loyalty Programs** - **Budget Airlines**: Look into low-cost carriers like Ryanair, EasyJet, or JetBlue, but be aware of additional fees for baggage, seat selection, etc. - **Airline Miles and Points**: Sign up for frequent flyer programs and hotel loyalty programs to earn points for future discounts. Credit cards with travel rewards can also help you save. --- ### **6. Look for Packages or Bundles** - Use travel websites like **Expedia**, **Priceline**, or **Travelocity** to bundle flights, hotels, and even car rentals for potential savings. - Consider all-inclusive resorts or group tour packages, especially if you're traveling to a destination with high daily costs. --- ### **7. Check for Discounts and Promotions** - **Student, Senior, or Military Discounts**: Some airlines and hotels offer special rates for certain groups. Always inquire! - **Membership Perks**: If you're a member of AAA, AARP, or Costco, you may have access to exclusive travel discounts. - **Promo Codes**: Search for promo codes or coupons online before booking. --- ### **8. Don’t Forget Alternate Accommodation Options** - **Hostels**: Great for budget travelers, hostels often offer dormitory-style lodging or private rooms at a fraction of hotel prices. - **House Swaps**: Platforms like **HomeExchange** allow you to swap homes with other travelers. - **Camping or Glamping**: If you love the outdoors, this can be a unique and cost-effective option. --- ### **9. Clear Your Browsing History** Some websites use cookies to track your searches and may increase prices if they see repeated interest. To avoid this: - Search in incognito mode. - Clear your browser cookies. --- ### **10. Negotiate and Book Smart** - **Direct Booking**: Sometimes, booking directly"
4 | What safety precautions should I take when traveling to a new country? ,"Traveling to a new country can be an exciting and enriching experience, but it's important to prioritize safety to ensure a smooth and enjoyable trip. Here are some key safety precautions to take: --- ### **Before You Travel** 1. **Research Your Destination**: - Learn about local customs, laws, and cultural norms to avoid unintentional offenses. - Check the current safety situation, including political stability, crime rates, and health risks, through government travel advisories (e.g., U.S. State Department, UK Foreign Office, or your country’s equivalent). 2. **Register with Your Embassy**: - Some countries offer a travel registration program for citizens. This helps your government contact you in case of an emergency (e.g., natural disaster, political unrest). 3. **Secure Travel Insurance**: - Purchase comprehensive travel insurance that covers medical emergencies, trip cancellations, theft, and other unforeseen events. 4. **Make Copies of Important Documents**: - Photocopy your passport, visa, travel insurance, and itinerary. Keep digital and physical copies stored securely in separate locations. 5. **Vaccinations and Medications**: - Check if vaccinations are required for your destination and carry any necessary medications with prescriptions. 6. **Plan Finances**: - Notify your bank of your travel dates to avoid credit card blocks. - Carry a mix of cash and cards, and store them in different places for security. --- ### **During Your Trip** 1. **Stay Aware of Your Surroundings**: - Be vigilant in crowded places, as they can be hotspots for pickpocketing. - Avoid displaying valuables like jewelry, expensive gadgets, or large amounts of cash. 2. **Use Reliable Transportation**: - Opt for licensed taxis, ride-sharing apps, or public transportation recommended by locals or your accommodation. - Avoid hitchhiking or accepting rides from strangers. 3. **Stay Connected**: - Share your itinerary with a trusted friend or family member. - Keep your phone charged and carry a portable power bank. 4. **Blend In with the Locals**: - Dress modestly and appropriately for the culture to avoid drawing unnecessary attention. - Learn a few basic phrases in the local language, which can help in emergencies and make interactions smoother. 5. **Protect Your Belongings**: - Use anti-theft backpacks or money belts to store your valuables. - Lock your luggage and use safes in hotels for passports and other important documents. 6. **Avoid Risky Areas**: - Research areas known for high crime rates and steer clear of them, especially at night. - Stick to well-lit and populated streets when exploring. 7. **Be Cautious with Food and Water**: - Drink bottled or filtered water if the local water supply is unsafe. - Eat at reputable restaurants or street vendors with high turnover to reduce the risk of foodborne illnesses. 8. **Trust Your Instincts**: - If something feels off, remove yourself from the situation. Your intuition can often alert you to potential dangers. --- ### **Emergency Preparedness** 1. **Know Local Emergency Numbers**: - Research and save the local equivalent of 911 (e.g., 112 in Europe, 999 in the UK). 2. **Locate the Nearest Embassy**: - Know where your country’s embassy or consulate is located in case you need assistance. 3. **Have a Backup Plan**: - Keep extra funds and a secondary form of ID in a separate location in case of theft. - Be aware of alternative transportation or accommodation options in case plans change. --- ### **Post-Travel Tip** - Monitor Your Health: - If you feel unwell after returning home, particularly if you visited a country with health risks (e.g., malaria, dengue), seek medical advice and inform your doctor about"
5 | What is the best way to convert currency while abroad? ,"Converting currency while abroad can be straightforward if you plan ahead and choose the most cost-effective and secure methods. Here are the best ways to do it: ### 1. **Use ATMs Abroad** - **Why it’s good:** ATMs typically offer better exchange rates than currency exchange counters, as they use interbank rates. - **Tips:** - Use ATMs affiliated with major banks or located in secure areas. - Check with your bank before traveling to see if they have partnerships with international banks to avoid high ATM fees. - Avoid dynamic currency conversion at the ATM (where they offer to convert to your home currency); instead, choose to withdraw in the local currency. ### 2. **Use a Travel-Friendly Credit or Debit Card** - **Why it’s good:** Many travel credit and debit cards come with zero foreign transaction fees and competitive exchange rates. - **Tips:** - Look for cards that waive foreign transaction fees, such as Chase Sapphire Preferred or Capital One Venture. - Inform your bank or card provider about your travel plans to avoid any security blocks. - Always pay in the local currency when using your card abroad to get the best rate. ### 3. **Exchange Currency Before You Leave** - **Why it’s good:** This ensures you have some cash on hand when you arrive, especially for immediate expenses like transportation or small purchases. - **Tips:** - Exchange money at your local bank or a reputable currency exchange service, as they often offer better rates than airport kiosks. - Avoid exchanging large amounts at airports or hotels due to higher fees and poor rates. ### 4. **Use Online Currency Exchange Services** - **Why it’s good:** Platforms like Revolut, Wise (formerly TransferWise), or PayPal often provide competitive rates and allow you to convert money digitally. - **Tips:** - Set up an account before traveling. - Some services provide multi-currency accounts, enabling you to store money in different currencies and use it abroad without fees. ### 5. **Avoid Currency Exchange Counters** - **Why to avoid:** These counters, especially in tourist areas, airports, and hotels, tend to have poor exchange rates and high fees. - **If necessary:** Use them only for small amounts in emergencies. ### 6. **Monitor Exchange Rates** - **Why it’s good:** Knowing the current exchange rate helps you avoid being overcharged. - **Tips:** - Use apps like XE Currency or OANDA to stay updated on exchange rates. - Check rates regularly if you plan to exchange currency multiple times during your trip. ### 7. **Carry a Mix of Payment Options** - **Why it’s good:** Some places may only accept cash, while others prefer cards. Having a mix ensures you’re prepared for any situation. - **Tips:** - Keep a small amount of local currency for street vendors, tips, or taxis. - Use cards for larger transactions to take advantage of better exchange rates. ### Final Advice: - **Plan ahead:** Research the best options available in your destination country. - **Stay secure:** Be cautious about where you withdraw or exchange money to avoid scams or theft. - **Compare fees:** Always factor in any service fees, withdrawal fees, and conversion fees to determine the true cost of currency exchange. If you'd like specific recommendations based on your destination or financial institution, feel free to ask!"
6 | Which travel insurance options provide the most comprehensive coverage? ,"When choosing travel insurance, the most comprehensive options typically include coverage for a wide range of circumstances, such as medical emergencies, trip cancellations, lost or delayed baggage, and more. Here are some factors to consider and popular travel insurance options that provide robust coverage: ### **Key Features of Comprehensive Travel Insurance** 1. **Medical Coverage**: Includes emergency medical expenses, evacuation, and repatriation. 2. **Trip Cancellation/Interruption**: Reimbursement for prepaid expenses if your trip is canceled or interrupted due to unforeseen events like illness, weather, or airline issues. 3. **Baggage Protection**: Covers lost, stolen, or delayed luggage. 4. **Accidental Death and Dismemberment**: Provides compensation for severe injuries or death while traveling. 5. **Adventure Activities Coverage**: Includes protection for high-risk activities like skiing, scuba diving, or zip-lining. 6. **COVID-19 Coverage**: Covers medical treatment or trip disruptions caused by COVID-19. 7. **Travel Delay Coverage**: Reimbursement for meals, accommodations, and transportation during unexpected delays. 8. **Rental Car Protection**: Covers damage or theft of rental vehicles. 9. **24/7 Assistance**: Offers round-the-clock support for emergencies, including translation services and legal advice. --- ### **Top Travel Insurance Providers** Here are some highly-rated companies that offer comprehensive travel insurance plans: #### 1. **World Nomads** - Best for adventurous travelers and backpackers. - Covers a wide range of activities, including high-risk sports. - Includes medical, cancellation, and baggage coverage. - Flexible policies for extended trips. #### 2. **Allianz Global Assistance** - Offers customizable plans for different travel needs. - Includes comprehensive coverage for medical emergencies, trip cancellations, and delays. - Known for strong customer service and 24/7 assistance. #### 3. **Travel Guard (AIG)** - Offers a variety of plans with extensive coverage options. - Covers medical emergencies, trip cancellations, and baggage protection. - Provides add-ons for adventure activities and rental car damage. #### 4. **GeoBlue** - Ideal for international travelers focused on health and medical coverage. - Includes emergency medical evacuation and broad health-related coverage. - Often chosen by expats or long-term travelers. #### 5. **Berkshire Hathaway Travel Protection (ExactCare)** - Known for fast claim processing and high coverage limits. - Covers trip cancellations, interruptions, baggage issues, and medical emergencies. - Includes optional add-ons for adventure sports and rental car protection. #### 6. **Squaremouth** - Acts as a comparison tool for multiple travel insurance providers. - Allows you to compare policies side-by-side to find the most comprehensive plan for your needs. - Offers extensive filters to customize coverage options. #### 7. **Travelex Insurance Services** - Offers comprehensive plans, including medical coverage, trip cancellation/interruption, and baggage protection. - Family-friendly policies that cover children at no additional cost. - Includes optional upgrades for adventure sports and business travel. --- ### **How to Choose the Right Plan** 1. **Assess Your Needs**: Consider your destination, trip duration, planned activities, and health condition. 2. **Compare Providers**: Use comparison sites like Squaremouth or InsureMyTrip to evaluate policies. 3. **Read the Fine Print**: Ensure coverage includes exclusions or limitations that may apply to your trip. 4. **Check Reviews**: Look for customer feedback to gauge reliability and claims processing. --- ### **Pro Tip**: When purchasing travel insurance, ensure the policy covers your destination and planned activities. Additionally, if traveling during uncertain times (e.g., pandemic-related disruptions), look for policies with ""cancel for any reason"" (CFAR) coverage for maximum flexibility. Would you like help comparing specific providers or"
7 |
--------------------------------------------------------------------------------
/data/travel_evaluation_data.jsonl:
--------------------------------------------------------------------------------
1 | {"Question": "What documents are required for international travel? ", "ExpectedResponse": "For international travel, the required documents can vary depending on your destination, nationality, and the purpose of your trip. However, here is a general list of the most commonly required documents for international travel: --- ### 1. **Passport** - A valid passport is essential for international travel. Most countries require that your passport be valid for at least **6 months** beyond your planned departure date. - Ensure your passport has enough blank pages for entry and exit stamps. ### 2. **Visa** - Many countries require a visa for entry, which may be an electronic visa (e-visa), visa-on-arrival, or a pre-approved visa from an embassy. - Research whether your destination requires a visa for your nationality, and apply well in advance if necessary. ### 3. **Flight Tickets** - A copy of your **round-trip or onward travel ticket** is often required by immigration officials to prove that you plan to leave the country. ### 4. **Travel Insurance** - Some countries mandate proof of travel insurance that covers medical expenses, accidents, and emergencies. - Check if COVID-19 coverage or specific insurance is required for entry. ### 5. **Health Documentation** - **Vaccination Certificates**: Some countries require proof of specific vaccinations (e.g., Yellow Fever vaccination if traveling from certain countries). - **COVID-19 Requirements**: This may include proof of vaccination, a negative PCR test result, or a recovery certificate. Requirements vary by country. ### 6. **Accommodation Details** - Proof of accommodation, such as a hotel reservation or an invitation letter from a host, may be required at immigration. ### 7. **Proof of Financial Means** - You may need to show proof that you can financially support yourself during your stay, such as bank statements, credit cards, or cash. ### 8. **Travel Itinerary** - A detailed travel itinerary, including places you plan to visit, may be required by immigration officials in some destinations. ### 9. **Driver\u2019s License and International Driving Permit (IDP)** - If you plan to drive abroad, bring your valid driver's license and, in some cases, an International Driving Permit. ### 10. **Additional Documents (if applicable):** - **Work or Study Permits**: If traveling for work or study. - **Parental Consent Letter**: If traveling with minors without both parents. - **Customs Declarations**: For items like high-value goods or large amounts of cash. - **Return to Residency Documents**: If you\u2019re a resident of another country, carry your residency card or permit. --- ### Tips: - Always check the entry requirements for your destination on the official government or embassy website. - Make photocopies or digital backups of your important documents in case of loss or theft. - Carry documents in a secure, easily accessible place during travel. If you'd like assistance checking the specific requirements for a particular destination, let me know your nationality and travel plans, and I can help!"}
2 | {"Question": "How can I find the best deals on flights and accommodations? ", "ExpectedResponse": "Finding the best deals on flights and accommodations can make a significant difference to your travel budget! Here are some tried-and-true tips to help you secure great prices: --- ### **1. Be Flexible with Your Travel Dates and Destinations** - **Midweek Travel**: Flights are often cheaper on Tuesdays, Wednesdays, and Saturdays since these are less popular travel days. - **Shoulder Seasons**: Travel during the off-peak or shoulder seasons (just before or after peak tourist times) for lower prices on both flights and accommodations. - **Explore Nearby Airports**: Check flights to/from alternate airports near your destination for potential savings. --- ### **2. Use Flight and Hotel Search Engines** - **Flight Search Engines**: Use platforms like **Google Flights**, **Skyscanner**, or **Kayak** to compare flight prices across multiple airlines and booking sites. Use the \"flexible dates\" or \"price calendar\" tools to identify the cheapest days to travel. - **Hotel Aggregators**: Websites like **Booking.com**, **Hotels.com**, **Agoda**, and **Trivago** can help you compare accommodation prices. - Look for deals on vacation rental platforms like **Airbnb** or **Vrbo** for longer stays or unique lodging options. --- ### **3. Set Alerts for Deals** - Use tools like **Hopper**, **Skyscanner**, or **Google Flights** to set fare alerts. These platforms will notify you when prices drop for your desired routes or accommodations. - Subscribe to newsletters from travel deal websites like **Scott's Cheap Flights (now Going)**, **Secret Flying**, or **The Points Guy** for limited-time offers. --- ### **4. Book at the Right Time** - **Flights**: Studies suggest booking domestic flights 1-3 months in advance and international flights 3-6 months in advance for the best prices. - **Hotels**: While last-minute deals are sometimes available, booking 1-2 months in advance often secures better rates, especially for popular destinations. --- ### **5. Consider Budget Airlines and Loyalty Programs** - **Budget Airlines**: Look into low-cost carriers like Ryanair, EasyJet, or JetBlue, but be aware of additional fees for baggage, seat selection, etc. - **Airline Miles and Points**: Sign up for frequent flyer programs and hotel loyalty programs to earn points for future discounts. Credit cards with travel rewards can also help you save. --- ### **6. Look for Packages or Bundles** - Use travel websites like **Expedia**, **Priceline**, or **Travelocity** to bundle flights, hotels, and even car rentals for potential savings. - Consider all-inclusive resorts or group tour packages, especially if you're traveling to a destination with high daily costs. --- ### **7. Check for Discounts and Promotions** - **Student, Senior, or Military Discounts**: Some airlines and hotels offer special rates for certain groups. Always inquire! - **Membership Perks**: If you're a member of AAA, AARP, or Costco, you may have access to exclusive travel discounts. - **Promo Codes**: Search for promo codes or coupons online before booking. --- ### **8. Don\u2019t Forget Alternate Accommodation Options** - **Hostels**: Great for budget travelers, hostels often offer dormitory-style lodging or private rooms at a fraction of hotel prices. - **House Swaps**: Platforms like **HomeExchange** allow you to swap homes with other travelers. - **Camping or Glamping**: If you love the outdoors, this can be a unique and cost-effective option. --- ### **9. Clear Your Browsing History** Some websites use cookies to track your searches and may increase prices if they see repeated interest. To avoid this: - Search in incognito mode. - Clear your browser cookies. --- ### **10. Negotiate and Book Smart** - **Direct Booking**: Sometimes, booking directly"}
3 | {"Question": "What safety precautions should I take when traveling to a new country? ", "ExpectedResponse": "Traveling to a new country can be an exciting and enriching experience, but it's important to prioritize safety to ensure a smooth and enjoyable trip. Here are some key safety precautions to take: --- ### **Before You Travel** 1. **Research Your Destination**: - Learn about local customs, laws, and cultural norms to avoid unintentional offenses. - Check the current safety situation, including political stability, crime rates, and health risks, through government travel advisories (e.g., U.S. State Department, UK Foreign Office, or your country\u2019s equivalent). 2. **Register with Your Embassy**: - Some countries offer a travel registration program for citizens. This helps your government contact you in case of an emergency (e.g., natural disaster, political unrest). 3. **Secure Travel Insurance**: - Purchase comprehensive travel insurance that covers medical emergencies, trip cancellations, theft, and other unforeseen events. 4. **Make Copies of Important Documents**: - Photocopy your passport, visa, travel insurance, and itinerary. Keep digital and physical copies stored securely in separate locations. 5. **Vaccinations and Medications**: - Check if vaccinations are required for your destination and carry any necessary medications with prescriptions. 6. **Plan Finances**: - Notify your bank of your travel dates to avoid credit card blocks. - Carry a mix of cash and cards, and store them in different places for security. --- ### **During Your Trip** 1. **Stay Aware of Your Surroundings**: - Be vigilant in crowded places, as they can be hotspots for pickpocketing. - Avoid displaying valuables like jewelry, expensive gadgets, or large amounts of cash. 2. **Use Reliable Transportation**: - Opt for licensed taxis, ride-sharing apps, or public transportation recommended by locals or your accommodation. - Avoid hitchhiking or accepting rides from strangers. 3. **Stay Connected**: - Share your itinerary with a trusted friend or family member. - Keep your phone charged and carry a portable power bank. 4. **Blend In with the Locals**: - Dress modestly and appropriately for the culture to avoid drawing unnecessary attention. - Learn a few basic phrases in the local language, which can help in emergencies and make interactions smoother. 5. **Protect Your Belongings**: - Use anti-theft backpacks or money belts to store your valuables. - Lock your luggage and use safes in hotels for passports and other important documents. 6. **Avoid Risky Areas**: - Research areas known for high crime rates and steer clear of them, especially at night. - Stick to well-lit and populated streets when exploring. 7. **Be Cautious with Food and Water**: - Drink bottled or filtered water if the local water supply is unsafe. - Eat at reputable restaurants or street vendors with high turnover to reduce the risk of foodborne illnesses. 8. **Trust Your Instincts**: - If something feels off, remove yourself from the situation. Your intuition can often alert you to potential dangers. --- ### **Emergency Preparedness** 1. **Know Local Emergency Numbers**: - Research and save the local equivalent of 911 (e.g., 112 in Europe, 999 in the UK). 2. **Locate the Nearest Embassy**: - Know where your country\u2019s embassy or consulate is located in case you need assistance. 3. **Have a Backup Plan**: - Keep extra funds and a secondary form of ID in a separate location in case of theft. - Be aware of alternative transportation or accommodation options in case plans change. --- ### **Post-Travel Tip** - Monitor Your Health: - If you feel unwell after returning home, particularly if you visited a country with health risks (e.g., malaria, dengue), seek medical advice and inform your doctor about"}
4 | {"Question": "What is the best way to convert currency while abroad? ", "ExpectedResponse": "Converting currency while abroad can be straightforward if you plan ahead and choose the most cost-effective and secure methods. Here are the best ways to do it: ### 1. **Use ATMs Abroad** - **Why it\u2019s good:** ATMs typically offer better exchange rates than currency exchange counters, as they use interbank rates. - **Tips:** - Use ATMs affiliated with major banks or located in secure areas. - Check with your bank before traveling to see if they have partnerships with international banks to avoid high ATM fees. - Avoid dynamic currency conversion at the ATM (where they offer to convert to your home currency); instead, choose to withdraw in the local currency. ### 2. **Use a Travel-Friendly Credit or Debit Card** - **Why it\u2019s good:** Many travel credit and debit cards come with zero foreign transaction fees and competitive exchange rates. - **Tips:** - Look for cards that waive foreign transaction fees, such as Chase Sapphire Preferred or Capital One Venture. - Inform your bank or card provider about your travel plans to avoid any security blocks. - Always pay in the local currency when using your card abroad to get the best rate. ### 3. **Exchange Currency Before You Leave** - **Why it\u2019s good:** This ensures you have some cash on hand when you arrive, especially for immediate expenses like transportation or small purchases. - **Tips:** - Exchange money at your local bank or a reputable currency exchange service, as they often offer better rates than airport kiosks. - Avoid exchanging large amounts at airports or hotels due to higher fees and poor rates. ### 4. **Use Online Currency Exchange Services** - **Why it\u2019s good:** Platforms like Revolut, Wise (formerly TransferWise), or PayPal often provide competitive rates and allow you to convert money digitally. - **Tips:** - Set up an account before traveling. - Some services provide multi-currency accounts, enabling you to store money in different currencies and use it abroad without fees. ### 5. **Avoid Currency Exchange Counters** - **Why to avoid:** These counters, especially in tourist areas, airports, and hotels, tend to have poor exchange rates and high fees. - **If necessary:** Use them only for small amounts in emergencies. ### 6. **Monitor Exchange Rates** - **Why it\u2019s good:** Knowing the current exchange rate helps you avoid being overcharged. - **Tips:** - Use apps like XE Currency or OANDA to stay updated on exchange rates. - Check rates regularly if you plan to exchange currency multiple times during your trip. ### 7. **Carry a Mix of Payment Options** - **Why it\u2019s good:** Some places may only accept cash, while others prefer cards. Having a mix ensures you\u2019re prepared for any situation. - **Tips:** - Keep a small amount of local currency for street vendors, tips, or taxis. - Use cards for larger transactions to take advantage of better exchange rates. ### Final Advice: - **Plan ahead:** Research the best options available in your destination country. - **Stay secure:** Be cautious about where you withdraw or exchange money to avoid scams or theft. - **Compare fees:** Always factor in any service fees, withdrawal fees, and conversion fees to determine the true cost of currency exchange. If you'd like specific recommendations based on your destination or financial institution, feel free to ask!"}
5 | {"Question": "Which travel insurance options provide the most comprehensive coverage? ", "ExpectedResponse": "When choosing travel insurance, the most comprehensive options typically include coverage for a wide range of circumstances, such as medical emergencies, trip cancellations, lost or delayed baggage, and more. Here are some factors to consider and popular travel insurance options that provide robust coverage: ### **Key Features of Comprehensive Travel Insurance** 1. **Medical Coverage**: Includes emergency medical expenses, evacuation, and repatriation. 2. **Trip Cancellation/Interruption**: Reimbursement for prepaid expenses if your trip is canceled or interrupted due to unforeseen events like illness, weather, or airline issues. 3. **Baggage Protection**: Covers lost, stolen, or delayed luggage. 4. **Accidental Death and Dismemberment**: Provides compensation for severe injuries or death while traveling. 5. **Adventure Activities Coverage**: Includes protection for high-risk activities like skiing, scuba diving, or zip-lining. 6. **COVID-19 Coverage**: Covers medical treatment or trip disruptions caused by COVID-19. 7. **Travel Delay Coverage**: Reimbursement for meals, accommodations, and transportation during unexpected delays. 8. **Rental Car Protection**: Covers damage or theft of rental vehicles. 9. **24/7 Assistance**: Offers round-the-clock support for emergencies, including translation services and legal advice. --- ### **Top Travel Insurance Providers** Here are some highly-rated companies that offer comprehensive travel insurance plans: #### 1. **World Nomads** - Best for adventurous travelers and backpackers. - Covers a wide range of activities, including high-risk sports. - Includes medical, cancellation, and baggage coverage. - Flexible policies for extended trips. #### 2. **Allianz Global Assistance** - Offers customizable plans for different travel needs. - Includes comprehensive coverage for medical emergencies, trip cancellations, and delays. - Known for strong customer service and 24/7 assistance. #### 3. **Travel Guard (AIG)** - Offers a variety of plans with extensive coverage options. - Covers medical emergencies, trip cancellations, and baggage protection. - Provides add-ons for adventure activities and rental car damage. #### 4. **GeoBlue** - Ideal for international travelers focused on health and medical coverage. - Includes emergency medical evacuation and broad health-related coverage. - Often chosen by expats or long-term travelers. #### 5. **Berkshire Hathaway Travel Protection (ExactCare)** - Known for fast claim processing and high coverage limits. - Covers trip cancellations, interruptions, baggage issues, and medical emergencies. - Includes optional add-ons for adventure sports and rental car protection. #### 6. **Squaremouth** - Acts as a comparison tool for multiple travel insurance providers. - Allows you to compare policies side-by-side to find the most comprehensive plan for your needs. - Offers extensive filters to customize coverage options. #### 7. **Travelex Insurance Services** - Offers comprehensive plans, including medical coverage, trip cancellation/interruption, and baggage protection. - Family-friendly policies that cover children at no additional cost. - Includes optional upgrades for adventure sports and business travel. --- ### **How to Choose the Right Plan** 1. **Assess Your Needs**: Consider your destination, trip duration, planned activities, and health condition. 2. **Compare Providers**: Use comparison sites like Squaremouth or InsureMyTrip to evaluate policies. 3. **Read the Fine Print**: Ensure coverage includes exclusions or limitations that may apply to your trip. 4. **Check Reviews**: Look for customer feedback to gauge reliability and claims processing. --- ### **Pro Tip**: When purchasing travel insurance, ensure the policy covers your destination and planned activities. Additionally, if traveling during uncertain times (e.g., pandemic-related disruptions), look for policies with \"cancel for any reason\" (CFAR) coverage for maximum flexibility. Would you like help comparing specific providers or"}
6 |
--------------------------------------------------------------------------------
/index.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Develop generative AI solutions in Azure
3 | permalink: index.html
4 | layout: home
5 | ---
6 |
7 | The following exercises are designed to provide you with a hands-on learning experience in which you'll explore common tasks that developers do when building generative AI solutions on Microsoft Azure.
8 |
9 | > **Note**: To complete the exercises, you'll need an Azure subscription in which you have sufficient permissions and quota to provision the necessary Azure resources and generative AI models. If you don't already have one, you can sign up for an [Azure account](https://azure.microsoft.com/free). There's a free trial option for new users that includes credits for the first 30 days.
10 |
11 | ## Exercises
12 |
13 | {% assign labs = site.pages | where_exp:"page", "page.url contains '/Instructions'" %}
14 | {% for activity in labs %}
15 |