Skip to content

Commit

Permalink
Merge pull request #12172 from MicrosoftDocs/main
Browse files Browse the repository at this point in the history
6/13/2024 AM Publish
  • Loading branch information
Albertyang0 authored Jun 13, 2024
2 parents fe0f051 + 9ed9757 commit c65650c
Show file tree
Hide file tree
Showing 101 changed files with 3,931 additions and 443 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ This article describes an architecture that you can use to replace the manual an
5. A preconfigured logic app that monitors Data Lake Storage detects that new images are being uploaded. It starts a workflow.
6. The logic app calls a pretrained custom vision model to identify objects, features, or qualities in the images. Alternatively or additionally, it calls a computer vision (optical character recognition (OCR)) model to identify textual information in the images.
7. Results are received in JSON format. The logic app parses the results and creates key-value pairs. You can store the results in Azure dedicated SQL pools that are provisioned by Azure Synapse Analytics.
7. Power BI provides data visualization.
8. Power BI provides data visualization.

### Components

Expand Down Expand Up @@ -120,6 +120,7 @@ Appropriate use of scaling and the implementation of PaaS offerings that have bu
*This article is maintained by Microsoft. It was originally written by the following contributors.*

Principal author:

- [Oscar Shimabukuro Kiyan](https://www.linkedin.com/in/oscarshk) | Senior Cloud Solutions Architect – Data & AI

Other contributors:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,11 @@ The following sections describe the various stages of the data extraction proces
- [Invoice][Form Recognizer invoice model]
- [Receipt][Form Recognizer receipt model]
- [ID document][Form Recognizer ID document model]
- [Business card][Form Recognizer business card model]
- [General document][Form Recognizer general document model (preview)]
- [General document][Form Recognizer general document model]
- [US tax document models](/azure/ai-services/document-intelligence/concept-tax-document)
- [US mortgage document model](/azure/ai-services/document-intelligence/concept-mortgage-documents)

The response from Azure AI Document Intelligence contains raw optical character recognition (OCR) data and structured extractions. Azure AI Document Intelligence also assigns [confidence values][Characteristics and limitations of Form Recognizer - Customer evaluation] to the extracted data.
The response from Azure AI Document Intelligence contains raw optical character recognition (OCR) data and structured extractions.

1. The App Service back-end application uses the confidence values to check the extraction quality. If the quality is below a specified threshold, the app flags the data for manual verification. When the extraction quality meets requirements, the data enters [Azure Cosmos DB][Welcome to Azure Cosmos DB] for downstream application consumption. The app can also return the results to the front-end browser.

Expand Down Expand Up @@ -311,12 +312,12 @@ Principal author:
[Durability and availability parameters]: /azure/storage/common/storage-redundancy#durability-and-availability-parameters
[Extract text from objects using Power Automate and AI Builder]: ../../example-scenario/ai/extract-object-text.yml
[Failover for business continuity and disaster recovery]: /azure/machine-learning/how-to-high-availability-machine-learning
[Form Recognizer business card model]: /azure/applied-ai-services/form-recognizer/concept-business-card
[Form Recognizer general document model (preview)]: /azure/applied-ai-services/form-recognizer/concept-general-document
[Form Recognizer general document model]: /azure/applied-ai-services/form-recognizer/concept-general-document
[Form Recognizer ID document model]: /azure/applied-ai-services/form-recognizer/concept-id-document
[Form Recognizer invoice model]: /azure/applied-ai-services/form-recognizer/concept-invoice
[Form Recognizer layout model]: /azure/applied-ai-services/form-recognizer/concept-layout
[Form Recognizer receipt model]: /azure/applied-ai-services/form-recognizer/concept-receipt
[US tax document models]: /azure/ai-services/document-intelligence/concept-tax-document
[Get started: Form Recognizer Studio]: /azure/ai-services/document-intelligence/quickstarts/try-document-intelligence-studio?view=doc-intel-3.1.0
[Get started with AzCopy]: /azure/storage/common/storage-use-azcopy-v10
[How to: Use Sentiment analysis and Opinion Mining - Data limits]: /azure/cognitive-services/language-service/sentiment-opinion-mining/how-to/call-api#data-limits
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ An organization might impose requirements on the workload team that mandates the

The organization's governance might add more requirements for container base image maintenance and dependency package tracking than what the workload requirements indicate. Workload teams must ensure that the workload's runtime environment, the code deployed to it, and its operations align with these organizational standards.

##### Alternate approach to hosting the prompt flow code
### Alternate approach to hosting the prompt flow code

Instead of hosting the prompt flow code in a Machine Learning runtime environment, you can host it in App Service. In this approach, egress traffic is controlled, when compared to Machine Learning compute's managed virtual network. The logic itself doesn't change but the App Service instances need internet access.

Expand Down Expand Up @@ -178,7 +178,7 @@ The ingress traffic flow remains the same as the [baseline architecture](./basel

Your workload team is responsible for any resources that are related to public internet ingress into the workload. For example, in this architecture, Application Gateway and its public IP address are placed in the spoke network and not the hub network. Some organizations might place resources with ingress traffic in a connectivity subscription by using a centralized perimeter network (also known as DMZ, demilitarized zone, and screened subnet) implementation. Integration with that specific topology is out of scope for this article.

##### Alternate approach to inspecting incoming traffic
#### Alternate approach to inspecting incoming traffic

This architecture doesn't use Azure Firewall to inspect incoming traffic. Sometimes organizational governance requires this approach. Platform teams support the implementation to provide workload teams an extra layer of intrusion detection and prevention to block unwanted inbound traffic. This architecture needs more UDR configurations to support this topology. For more information about this approach, see [Zero Trust network for web applications with Azure Firewall and Application Gateway](../../example-scenario/gateway/application-gateway-before-azure-firewall.yml).

Expand Down Expand Up @@ -472,7 +472,7 @@ A landing zone deployment for this reference architecture is available on GitHub

*This article is maintained by Microsoft. It was originally written by the following contributors.*

Principal authors
Principal authors:

- [Chad Kittel](https://www.linkedin.com/in/chadkittel/) | Azure patterns & practices - Microsoft
- [Freddy Ayala](https://www.linkedin.com/in/freddyayala/) | Microsoft Cloud Solution Architect
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ Along with identity-based access, network security is at the core of the baselin

### Network flows

:::image type="complex" source="_images/openai-end-to-end-aml-deployment-flows.svg" border="false" lightbox="_images/openai-end-to-end-aml-deployment-flows.svg" alt-text="Diagram that shows a baseline end-to-end chat architecture with OpenAI with flow numbers."
:::image type="complex" source="_images/openai-end-to-end-aml-deployment-flows.svg" border="false" lightbox="_images/openai-end-to-end-aml-deployment-flows.svg" alt-text="Diagram that shows a baseline end-to-end chat architecture with OpenAI with flow numbers.":::
The diagram resembles the baseline end-to-end chat architecture with Azure OpenAI architecture with three numbered network flows. The inbound flow and the flow from App Service to Azure PaaS services are duplicated from the baseline App Service web architecture. The Machine Learning managed online endpoint flow shows an arrow from the compute instance private endpoint in the client UI virtual network pointing to the managed online endpoint. The second number shows an arrow pointed from the managed online endpoint to the compute cluster. The third shows arrows from the compute cluster to private endpoints that point to Container Registry, Storage, Azure OpenAI Service, and AI Search.
:::image-end:::

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ Databricks is set up so you can load and deploy your trained models to make pred
- Unlimited clusters that can scale to any size.
- Advanced security, role-based access controls, and audit logs.

To interact with the Azure Databricks service, use the Databricks [Workspace][workspace] interface in a web browser or the [command-line interface][cli] (CLI). Access the Databricks CLI from any platform that supports Python 2.7.9 to 3.6.
To interact with the Azure Databricks service, use the Databricks [Workspace][workspace] interface in a web browser or the [command-line interface (CLI)][cli]. Access the Databricks CLI from any platform that supports Python 2.7.9 to 3.6.

The reference implementation uses [notebooks][notebooks] to execute tasks in sequence. Each notebook stores intermediate data artifacts (training, test, scoring, or results data sets) to the same data store as the input data. The goal is to make it easy for you to use it as needed in your particular use case. In practice, you would connect your data source to your Azure Databricks instance for the notebooks to read and write directly back into your storage.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ Azure Cosmos DB is recommended for its turnkey global distribution and usefulnes

### Scalability

If you don't plan to use Spark, or you have a smaller workload that doesn't need distribution, consider using a [Data Science Virtual Machine][dsvm] (DSVM) instead of Azure Databricks. A DSVM is an Azure virtual machine with deep learning frameworks and tools for machine learning and data science. As with Azure Databricks, any model you create in a DSVM can be operationalized as a service on AKS via Machine Learning.
If you don't plan to use Spark, or you have a smaller workload that doesn't need distribution, consider using a [Data Science Virtual Machine (DSVM)][dsvm] instead of Azure Databricks. A DSVM is an Azure virtual machine with deep learning frameworks and tools for machine learning and data science. As with Azure Databricks, any model you create in a DSVM can be operationalized as a service on AKS via Machine Learning.

During training, either provision a larger fixed-size Spark cluster in Azure Databricks, or configure [autoscaling][autoscaling]. When autoscaling is enabled, Databricks monitors the load on your cluster and scales up and down as needed. Provision or scale out a larger cluster if you have a large data size and you want to reduce the amount of time it takes for data preparation or modeling tasks.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -230,7 +230,7 @@ Load-balacing across regions isn't typical, but could be used strategically to c

In this topology, Azure API Management is used specifically for the gateway technology. Here, API Management is deployed into a single region. From that gateway instance, you perform active-active load balancing across regions. The policies in your gateway reference all Azure OpenAI instances. The gateway requires network line of sight to each back end across regions, either through cross-region virtual network peering or private endpoints. Calls from this gateway to an Azure OpenAI instance in another region incur more network latency and egress charges.

Your gateway must honor throttling and availability signals from the Azure OpenAI instances and remove faulted back ends from the pool until safe to readd the faulted or throttled Azure OpenAI instance. The gateway should retry the current request against another back-end instance in the pool upon fault, before falling back to returning a gateway error. The gateway's health check should signal unhealthy when no back-end Azure OpenAI instances are available.
Your gateway must honor throttling and availability signals from the Azure OpenAI instances and remove faulted back ends from the pool until safe to re-add the faulted or throttled Azure OpenAI instance. The gateway should retry the current request against another back-end instance in the pool upon fault, before falling back to returning a gateway error. The gateway's health check should signal unhealthy when no back-end Azure OpenAI instances are available.

> [!NOTE]
> This gateway introduces a global single point of regional failure in your architecture since any service outage on your gateway instances render all regions inaccessible. Don't use this topology for business-critical workloads or where client-based load balancing is sufficient.
Expand Down
9 changes: 5 additions & 4 deletions docs/ai-ml/guide/conversation-summarization-content.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,9 +93,9 @@ There are three main approaches for training models for in-context learning: zer
You can use this customization step to improve your process by:
- Including a larger set of example data.
- Using traditional optimization techniques with backpropagation to readjust the weights of the model. These techniques enable higher quality results than the zero-shot or few-shot approaches provide by themselves.
- Improving the few-shot learning approach by training the model weights with specific prompts and a specific structure. This technique enables you to achieve better results on a wider number of tasks without needing to provide examples in the prompt. The result is less text sent and fewer tokens.
- Including a larger set of example data.
- Using traditional optimization techniques with backpropagation to readjust the weights of the model. These techniques enable higher quality results than the zero-shot or few-shot approaches provide by themselves.
- Improving the few-shot learning approach by training the model weights with specific prompts and a specific structure. This technique enables you to achieve better results on a wider number of tasks without needing to provide examples in the prompt. The result is less text sent and fewer tokens.
Disadvantages include the need for a large new dataset for every task, the potential for poor generalization out of distribution, and the possibility to exploit spurious features of the training data, resulting in high chances of unfair comparison with human performance.
Expand Down Expand Up @@ -139,7 +139,7 @@ The dataset used in this scenario is a set of hypothetical conversations between
|Prompt|Completion|
|-|-|
|Customer: Question on XAIL<br><br>Agent: Hello! How can I help you today?<br><br>Customer: Hi, I have a question about the Accessibility insider ring<br><br>Agent: Okay. I can certainly assist you with that.<br><br>Customer: Do I need to sign up for the preview ring to join the accessibility league?<br><br>Agent: No. You can leave your console out of Xbox Preview rings and still join the League. However, note that some experiences made available to you might require that you join a Xbox Preview ring.<br><br>Customer: Okay. And I can just sign up for preview ring later yeah?<br><br>Agent: That is correct.<br><br>Customer: Sweet.| Customer wants to know whether they need to sign up for preview rings to join Xbox Accessibility Insider League. Agent responds that it is not mandatory, but that some experiences might require it.|
|Customer: Question on XAIL<br><br>Agent: Hello! How can I help you today?<br><br>Customer: Hi, I have a question about the Accessibility insider ring<br><br>Agent: Okay. I can certainly assist you with that.<br><br>Customer: Do I need to sign up for the preview ring to join the accessibility league?<br><br>Agent: No. You can leave your console out of Xbox Preview rings and still join the League. However, note that some experiences made available to you might require that you join an Xbox Preview ring.<br><br>Customer: Okay. And I can just sign up for preview ring later yeah?<br><br>Agent: That is correct.<br><br>Customer: Sweet.| Customer wants to know whether they need to sign up for preview rings to join Xbox Accessibility Insider League. Agent responds that it is not mandatory, but that some experiences might require it.|
**Ideal output**. The goal is to create summaries that follow this format: "Customer said *x*. Agent responded *y*." Another goal is to capture salient features of the dialog, like the customer complaint, suggested resolution, and follow-up actions.
Expand Down Expand Up @@ -441,6 +441,7 @@ Principal author:
- [Meghna Jani](https://www.linkedin.com/in/meghnajani/) | Data & Applied Scientist II

Other contributor:

- [Mick Alberts](https://www.linkedin.com/in/mick-alberts-a24a1414/) | Technical Writer

*To see non-public LinkedIn profiles, sign in to LinkedIn.*
Expand Down
2 changes: 1 addition & 1 deletion docs/ai-ml/guide/mlops-technical-paper-content.md
Original file line number Diff line number Diff line change
Expand Up @@ -447,7 +447,7 @@ Here you'll find a list of considerations to explore. They're based on the lesso

### Model serving considerations

- The Azure Machine Learning SDK provides an option to deploy directly to Azure Kubernetes Service from a registered model, creating limits on what security/metrics are in place. You can try to find an easier solution for clients to test their model, but it's best to develop a more robust deployment to AKS for production workloads.
- The Azure Machine Learning SDK provides an option to deploy directly to Azure Kubernetes Service (AKS) from a registered model, creating limits on what security/metrics are in place. You can try to find an easier solution for clients to test their model, but it's best to develop a more robust deployment to AKS for production workloads.

## Next steps

Expand Down
2 changes: 1 addition & 1 deletion docs/ai-ml/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -270,7 +270,7 @@ This is a comprehensive family of AI services and cognitive APIs to help you bui

### Azure Cognitive Search

This is an AI-powered cloud search service for mobile and web app development. The service can search over private heterogenous content, with options for AI enrichment if your content is unstructured or unsearchable in raw form.
This is an AI-powered cloud search service for mobile and web app development. The service can search over private heterogeneous content, with options for AI enrichment if your content is unstructured or unsearchable in raw form.

- [Azure Cognitive Search product home page](https://azure.microsoft.com/services/search/)

Expand Down
6 changes: 3 additions & 3 deletions docs/aws-professional/eks-to-aks/migrate-eks-to-aks.md
Original file line number Diff line number Diff line change
Expand Up @@ -135,14 +135,14 @@ Follow these steps to back up persistent data:

*This article is maintained by Microsoft. It was originally written by the following contributors.*

**Principal authors**:

<!-- docutune:ignoredChange ISV -->

Principal authors:

- Dixit Arora | Senior Customer Engineer, ISV DN CoE
- [Ketan Chawda](https://www.linkedin.com/in/ketanchawda1402) | Senior Customer Engineer, ISV DN CoE

**Other contributors**:
Other contributors:

- [Paolo Salvatori](http://linkedin.com/in/paolo-salvatori) | Principal Customer Engineer, ISV & DN CoE
- [Anthony Nevico](https://www.linkedin.com/in/anthonynevico/) | Principal Cloud Solution Architect
Expand Down
2 changes: 1 addition & 1 deletion docs/best-practices/data-partitioning-content.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ Avoid creating "hot" partitions that can affect performance and availability. Fo

Choose a sharding key that minimizes any future requirements to split large shards, coalesce small shards into larger partitions, or change the schema. These operations can be very time consuming, and might require taking one or more shards offline while they are performed.

If shards are replicated, it might be possible to keep some of the replicas online while others are split, merged, or reconfigured. However, the system might need to limit the operations that can be performed during the reconfiguration. For example, the data in the replicas might be marked as read-only to prevent data inconsistences.
If shards are replicated, it might be possible to keep some of the replicas online while others are split, merged, or reconfigured. However, the system might need to limit the operations that can be performed during the reconfiguration. For example, the data in the replicas might be marked as read-only to prevent data inconsistencies.

For more information about horizontal partitioning, see [sharding pattern](../patterns/sharding.yml).

Expand Down
Binary file modified docs/browse/thumbs/architecture-ctfd.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit c65650c

Please sign in to comment.