Blog Post

Microsoft Developer Community Blog
13 MIN READ

RAGHack 2024: Recordings and slides!

Pamela_Fox's avatar
Pamela_Fox
Icon for Microsoft rankMicrosoft
Dec 20, 2024

Earlier this year, we held RAGHack, a global hackathon which included more than 30 live streams across multiple spoken languages and programming languages. Thanks to talks from engineers, product managers, cloud solution architects, and advocates, we learnt how to develop RAG with a wide range of Azure technologies, like AI Search, Cosmos DB, PostgreSQL, Azure SQL, and Azure Communications Services.

If you missed seeing the RAGHack streams live, you can catch up by watching the streams and downloading the slides, using the links below! 👇

Want to catch our next live series about RAG? Register for RAG Deep Dive, a series in January/February that will go deep into our most popular RAG solution for Azure.

English streams

RAG 101

📺 Watch YouTube recording

An intro to RAGHack, a global hackathon to develop apps using LLMs and RAG. A large language model (LLM) like GPT-4 can be used for summarization, translation, entity extraction, and question-answering. Retrieval Augmented Generation (RAG) is an approach that sends context to the LLM so that it can provide grounded answers. RAG apps can be developed on Azure using a wide range of programming languages and retrievers (such as AI Search, Cosmos DB, PostgreSQL, and Azure SQL). Get an overview of RAG in this session before diving deep in our follow-up streams.

🔗 Helpful links:

RAG with .NET

📺 Watch YouTube recording

Learn how to develop apps using RAG with .NET and Semantic Kernel. We'll walk through our .NET RAG solution, showing the process of data ingestion with Azure Document Intelligence and AI Search, then walking through the RAG steps of query rewriting, hybrid search, and question answering. You'll learn how to easily bring your own data into the RAG solution, and how to customize the prompts and Blazor UI for your domain. 

Presented by Jordan Matthiesen (PM in .NET), Luis Quintanilla (PM in .NET), Bruno Capuano (Advocate for .NET)

🔗 Helpful links:

RAG with Azure AI Studio

📺 Watch YouTube recording

Learn how to build a RAG-based custom copilot end-to-end using Azure AI Studio, code-first. We'll walk through "Contoso Chat", a retail copilot scenario with product and customer data. We'll explore prompt engineering using prompty assets, orchestration with promptflow flex-flows and automated provisioning and deployment with azd. You'll learn how to build & test your copilot locally (in VS Code), then deploy & test it in production on Azure.

Presented by Leah Bar-On Simmons (Azure AI PM) and Nitya Narasimhan (Azure AI Advocate) 

🔗 Helpful links:

RAG with Python

📺 Watch YouTube recording

Learn how to develop apps using RAG with Python and the OpenAI SDK. We'll walk through our most popular RAG solution, showing the process of data ingestion with Azure Document Intelligence and AI Search, then walking through the RAG steps of query rewriting, hybrid search, and question answering. You'll learn how to easily bring your own data into the RAG solution, and how to customize the prompts and UI for your domain.

Presented by Pamela Fox, Developer Advocate for Python

🔗 Helpful links:

RAG with Langchain4J

📺 Watch YouTube recording

Langchain4J is a great way to use large language models from Java, and is modeled on the most popular Python orchestrator, Langchain. Learn how to use Langchain4J to build a RAG solution, connecting to different LLMs, embedding models, and vector stores. We'll share multiple open-source solutions so that you can get started with Langchain4J today. 

Presented by Julien Dubois, Principal Manager of Java Developer Relations at Microsoft

🔗 Helpful links:

RAG with LangchainJS

📺 Watch YouTube recording

Learn how to develop RAG apps with JavaScript and TypeScript, using both the OpenAI SDK and LangchainJS. We'll demonstrate multiple RAG starter apps with different architectures, including static web apps with serverless backends. You'll learn how to bring your own data into these RAG solutions and customize for your domain.

Presented by Glaucia Lemos and Yohan Lasorsa, from the JavaScript Developer Advocacy team at Microsoft

🔗 Helpful links:

Scalable RAG with CosmosDB for NoSQL

📺 Watch YouTube recording

Join us to learn about building scalable RAG applications using Azure Cosmos DB for NoSQL! Learn foundational concepts, generate embeddings with Azure OpenAI, process, store, and search over document data in Azure Cosmos DB leveraging vector similarity search using DiskANN, a vector indexing method that enable fast and cost-efficient vector search at any scale!

Presented by James Codella, Product Manager for Cosmos DB

🔗 Helpful links:

Responsible AI

📺 Watch YouTube recording

Join us as we tackle the challenge of embedding ethical principles and diversity into AI conversational platforms! We'll explore Microsoft's cool tools and practices for building responsible AI, with examples straight from our toolkit on the Responsible AI Tools and Practices page. See live demos showcasing importance of "Responsible AI", including examples of models and use cases that violate the principles. You'll walk away with practical insights and tools to create AI solutions that boost brand trust and open up new markets.

Presented by Rory Preddy, Java Developer Advocate

🔗 Helpful links:

RAG on Cosmos DB MongoDB

📺 Watch YouTube recording

Learn how to build a RAG app using vCore-based Azure Cosmos DB for MongoDB and its new vector search capabilities. We'll walk through a Python web app that uses the LangChain package to orchestrate a RAG flow in order to answer questions about a restaurant's data.

Presented by Khelan Modi, Product Manager on Azure Cosmos DB team, and John Aziz, Software Developer and Microsoft MVP

🔗 Helpful links:

RAG with Azure AI Search

📺 Watch YouTube recording

Azure AI Search is a powerful search engine, with many features designed specifically for RAG applications. We'll demonstrate optimal retrieval using hybrid search with the semantic ranker, show the new integrated vectorization feature for cloud-based data ingestion, and discuss vector storage optimization.

Presented by Farzad Sunavala, Product Manager on Azure AI Search, and Pamela Fox, Developer Advocate for Python

🔗 Helpful links:

RAG on PostgreSQL

📺 Watch YouTube recording

Discover the many ways you can build RAG applications on top of Azure Database for PostgreSQL Flexible Servers. We'll start by using the pgvector extension for vector similarity search. Then we'll explore the new azure_ai extension which provides built-in functions for embeddings, summarization, sentiment analysis, and more. Finally, we'll demo the new azure_local_ai extension to efficiently run pre-trained models on our database server, which can be a great fit for RAG applications that require custom embedding models. 

Presented by Joshua Johnson, Principal TPM on Azure PostgreSQL, and Pamela Fox, Developer Advocate for Python

🔗 Helpful links:

RAG on Azure SQL Server

📺 Watch YouTube recording

How do you build a RAG solution on data already stored in SQL Server or Azure SQL? In this session you'll learn about existing and future options that you can start to use right tomorrow, leveraging Azure SQL as a vector store and taking advantage of its established performances, security and enterprise readiness!

Presented by Davide Mauri, Principal Product Manager on Azure SQL DB

🔗 Helpful links:

Intro to GraphRAG

📺 Watch YouTube recording

In this presentation, you'll gain an understanding of GraphRAG, a technique that enhances document analysis and question-and-answer performance by leveraging large language models (LLMs) to create knowledge graphs. We'll explore how GraphRAG builds upon Retrieval-Augmented Generation (RAG) by using knowledge graphs instead of vector similarity for retrieval. You'll learn how to set up the environment, prepare data, and implement GraphRAG using LangChain, with practical code examples. Additionally, we'll explore some advanced features and customization options available in LangChain to optimize and tailor GraphRAG to your specific needs.

Presented by John Alexander, Content Developer and Apurva Mody, Principal Program Manager

🔗 Helpful links:

Add multi-channel communication in RAG apps

📺 Watch YouTube recording

In this session, we will explore how to enhance your Retrieval-Augmented Generation (RAG) applications by integrating various communication channels, including chat, voice, SMS, and WhatsApp, using Azure Communication Services. By connecting the intelligence of a RAG app with these channels, you can create more versatile and user-friendly AI solutions. We'll show you how to implement these integrations to improve user engagement by using their preferred mode of communication.

Presented by Milan Kaur, Product Manager at Microsoft

🔗 Helpful links:

RAG with Java + Semantic Kernel

📺 Watch YouTube recording

Learn how to develop apps using RAG with Java and Semantic Kernel. We'll walk through our RAG solution, showing the process of data ingestion with Azure Document Intelligence and AI Search, then walking through the RAG steps of query rewriting, hybrid search, and question answering. You'll learn how to easily bring your own data into the RAG solution and deploy it to Azure.

Presented by Bruno Borges (Product Manager, Java), Davide Antelmo (Cloud Solution Architect, Java), John Oliver (Software Engineer, Semantic Kernel)

🔗 Helpful links:

RAG with Java + Spring AI

📺 Watch YouTube recording

Artificial Intelligence is an amazing thing, but it gets even smarter when you can point it at your data. In this session, you'll learn how easy it can be to tap into the wealth of domain knowledge locked up in your organization's documents using RAG (Retrieval Augmented Generation) with Java and Spring AI. You have the power!

Presented by Mark Heckler, Java Cloud Advocate

🔗 Helpful links:

RAG with vision models

📺 Watch YouTube recording

What do you do when the documents for your RAG app include images, like graphs or photos? You first need to generate embeddings using a multimodal model, like the one available from Azure Computer Vision, search those embeddings using a powerful vector search like Azure AI Search, and then send any retrieved text and images to a multimodal LLM like GPT-4o. Learn how to get started quickly with a RAG on multimodal documents in this session. 

Presented by Pamela Fox, Python Advocate at Microsoft

🔗 Helpful links:

Internationalization for RAG apps

📺 Watch YouTube recording

Building a RAG app for a non-English audience? Fortunately, language models and embedding models is that they understand a wide range of languages. Unfortunately, they have a bias towards English, so you need to choose your approach carefully when deploying them in other languages. In this session, we'll dive into tokenization, optimal data chunking strategies, and other best practices for internationalization.

Presented by Anthony Shaw, Python Cloud Advocate and Renee Noble, Regional Cloud advocate

🔗 Helpful links:

Use Phi-3 to create a VSCode chat agent extension

📺 Watch YouTube recording

Have you used a GitHub Copilot chat agent, like the powerful @workspace? You can build your own agent like that, to answer questions about your own domain or functionality. In this session, we'll show how you can quickly create your own customized GitHub Copilot Chat Agent Extension through the GitHub Copilot Chat Agent API combined with the Phi-3 model.

Presented by Kinfey Lo, Cloud Advocate

🔗 Helpful links:

Agentic RAG with Langchain

📺 Watch YouTube recording

RAG (Retrieval Augmented Generation) is the most common approach used to get LLMs to answer questions grounded in a particular domain's data. Learn how to use Langchain, the most popular Python package for LLM orchestration, to build a RAG application with Python and Azure OpenAI. Discover how to use agentic flows in Langchain to build more complex RAG workflows.

Presented by Marlene Mhangami, Developer Advocate for Python

🔗 Helpful links:

Build an OpenAI code interpreter for Python

📺 Watch YouTube recording

Discover how to build a Python code interpreter tool using Azure OpenAI for the code generation and Azure Container Apps Dynamic Sessions for sandboxed code execution. See how the popular Langchain package makes it easy to generate step-by-step code generation, and how the default Dynamic Sessions environments can call popular third-party libraries like pandas and numpy.

Presented by Anthony Chu, Product Manager for Azure Container Apps

🔗 Helpful links:

Connections in Azure AI Studio

📺 Watch YouTube recording

Dive into the essentials of connecting AI and ML solutions using Azure AI Studio. This session will guide you through setting up AI Studio with best practices for security and access management, highlighting connections to key services such as Azure Cognitive Services, Azure Search, and Azure Storage Accounts. Whether you're implementing RAG chatbots or deploying models, discover how to protect your resources and ensure compliance across your enterprise. This session will highlight solutions from the Microsoft AI-In-a-Box framework.

Presented by Chris Ayers, Customer Engineer, and Marco Aurelio Cardoso, Customer Engineer

🔗 Helpful links:

Explore AutoGen concepts with AutoGen Studio

📺 Watch YouTube recording

In this session we will explore some of AutoGen foundational concepts such as enhanced inference, code executors, and more advanced concepts such as Agents and Agent flows. The session will leverage code both in Jupyter Notebooks and the Autogen Studio code. Session objectives: Basic understanding of some of the AutoGen's foundational and intermediate concepts Basic understanding of the AutoGen Studio code Building applications with AutoGen 

Presented by Alex Morales, Customer Engineering Manager at Microsoft

🔗 Helpful links:

RAG with Data Access Control

📺 Watch YouTube recording

With a RAG approach, the app first searches a knowledge base for relevant matches to a user's query, then sends the results to the LLM along with the original question. What if you have documents that should only be accessed by a subset of your users, like a group or a single user? Then you need data access controls to ensure that document visibility is respected during the RAG flow. In this session, we'll show an approach using Azure AI Search with data access controls to only search the documents that can be seen by the logged in user. We'll also demonstrate a feature for user-uploaded documents that uses data access controls along with Azure Data Lake Storage Gen2. 

Presented by Matt Gotteiner, Product Manager for Azure AI Search, and Pamela Fox, Developer Advocate for Python

🔗 Helpful links:

RAFT: (RAG + Fine Tuning) in Azure AI Studio

📺 Watch YouTube recording

RAG is a very good domain adaptation technic but sometimes doesn't meet quality expectations. RAFT (Retrieval augmented fine-tuning) is a new hybrid approach to LLM domain adaptation that combines RAG and fine-tuning. In this session, you'll learn how to implement RAFT using Azure AI Studio and its fine tuning capabilities.

Presented by Cedric Vidal, AI Advocate for Startups

🔗 Helpful links:

Pick the right model for the right job

📺 Watch YouTube recording

Building RAG and trying to decide what model to use? There are an increasing number of high-quality large language models available, many of which are now available from Azure AI, like OpenAi, Mistral, Cohere, Llama, Phi-3, and more. Which one do you use, and how do you easily switch between them? In this talk, we'll show you how to use the Azure AI inference SDK as well as orchestration libraries like Llamaindex to run the same code with different models. We'll talk about what models work best for different stages of RAG, plus how you can evaluate your choice.

Presented by Facundo Santiago, Azure AI Product Manager

🔗 Helpful links:

Evaluating your RAG Chat App

📺 Watch YouTube recording

How can you be sure that your RAG application's answers are accurate, clear, and well formatted? Evaluation! In this session, we'll show you how to use Azure AI Studio and the Promptflow SDK to generate synthetic data and run bulk evaluations on your RAG app. Learn about different GPT metrics like groundedness and fluency, and consider other ways you can measure the quality of your RAG app answers. 

Presented by Pamela Fox, Python Advocate

🔗 Helpful links:

Spanish sessions:

RAG: Generación Aumentada de Recuperación

📺 Watch YouTube recording

Una introducción a RAGHack, un hackathon global para desarrollar aplicaciones utilizando modelos de lenguaje grandes (LLM) y RAG. Se puede utilizar un modelo de lenguaje grande (LLM) como GPT-4 para realizar resúmenes, traducciones, extracciones de entidades y respuestas a preguntas. La generación aumentada de recuperación (RAG) es un enfoque que envía contexto al LLM para que pueda proporcionar respuestas fundamentadas. Las aplicaciones RAG se pueden desarrollar en Azure utilizando una amplia gama de lenguajes de programación y recuperadores (como AI Search, Cosmos DB, PostgreSQL y Azure SQL). Esta sesión brindará una descripción general de RAG y demostrará una aplicación RAG de muestra que puede comenzar a usar hoy mismo.

🔗 Helpful links:

RAG: Prácticas recomendadas de Azure AI Search

📺 Watch YouTube recording

Azure AI Search es un potente motor de búsqueda con muchas funciones diseñadas específicamente para aplicaciones RAG. Analizaremos cómo funcionan los vectores de embeddings y la búsqueda vectorial, y demostraremos una devolución óptima mediante la búsqueda híbrida con el clasificador semántico.

🔗 Helpful links:

AI Multi-Agentes: Patrones, Problemas y Soluciones

📺 Watch YouTube recording

En esta sesión, compartiremos los desafíos y patrones que hemos identificado a partir de nuestras experiencias al extender aplicaciones empresariales del mundo real y transformarlas en soluciones inteligentes mediante el uso de multi-agentes. Exploraremos en detalle las cuestiones técnicas involucradas en llevar a producción soluciones multi-agentes, y cómo estas pueden potenciar la funcionalidad de las aplicaciones existentes. 

🔗 Helpful links:

Portuguese sessions:

RAG (Geração Aumentada de Busca) no Azure

📺 Watch YouTube recording

Uma introdução ao RAGHack, um hackathon global para desenvolver aplicativos usando LLMs e RAG. Um modelo de linguagem grande (LLM) como GPT-4 pode ser usado para resumo, tradução, extração de entidade e resposta a perguntas. A Geração Aumentada de Busca (RAG) é uma abordagem que envia contexto ao LLM para que ele possa fornecer respostas fundamentadas. Os aplicativos RAG podem ser desenvolvidos no Azure usando uma ampla variedade de linguagens de programação e recuperadores (como AI Search, Cosmos DB, PostgreSQL e Azure SQL). Nesta sessão, daremos uma visão geral do RAG e demonstraremos uma solução RAG totalmente funcional que você pode começar a usar hoje mesmo.

Speaker: Marco Cardoso - Engenheiro de Data & AI na Microsoft

🔗 Helpful links:

Construindo RAG com Azure AI Studio e Python

📺 Watch YouTube recording

Aprenda a criar um copiloto personalizado baseado em RAG de ponta a ponta usando o Azure AI Studio. Vamos percorrer o "Contoso Chat", um cenário de copiloto de varejo com dados de produtos e clientes. Exploraremos a engenharia de prompt usando ativos do prompty, orquestração com flex-flows do promptflow e você aprenderá a criar e testar seu copiloto localmente (no VS Code) e, em seguida, implantá-lo e testá-lo em produção no Azure.

Speaker: Pablo Lopes - AI Developer Advocate na Microsoft

🔗 Helpful links:

Implantando RAG com .NET e Azure Developer CLI

📺 Watch YouTube recording

Aprenda a criar um aplicativo de RAG com .NET. Exploramos o engenharia de prompt usando Prompty e orquestração com Semantic Kernel. Descubra como usar o Azure Developer CLI para o provisionamento e implantação automatizados a Azure Container Apps. 

Speaker: Andre Dewes – Senior Customer Engineer na Microsoft

🔗 Helpful links:

Published Dec 20, 2024
Version 1.0

1 Comment

  • edchuy's avatar
    edchuy
    Iron Contributor

    Interesting to note that that during the event, Phi-3 was the most recent one available. Now, it's Phi-4. I assume the difference in doing things between the models will be that great, right?

"}},"componentScriptGroups({\"componentId\":\"custom.widget.Social_Sharing\"})":{"__typename":"ComponentScriptGroups","scriptGroups":{"__typename":"ComponentScriptGroupsDefinition","afterInteractive":{"__typename":"PageScriptGroupDefinition","group":"AFTER_INTERACTIVE","scriptIds":[]},"lazyOnLoad":{"__typename":"PageScriptGroupDefinition","group":"LAZY_ON_LOAD","scriptIds":[]}},"componentScripts":[]},"component({\"componentId\":\"custom.widget.MicrosoftFooter\"})":{"__typename":"Component","render({\"context\":{\"component\":{\"entities\":[],\"props\":{}},\"page\":{\"entities\":[\"board:AzureDevCommunityBlog\",\"message:4359662\"],\"name\":\"BlogMessagePage\",\"props\":{},\"url\":\"https://techcommunity.microsoft.com/blog/azuredevcommunityblog/raghack-2024-recordings-and-slides/4359662\"}}})":{"__typename":"ComponentRenderResult","html":""}},"componentScriptGroups({\"componentId\":\"custom.widget.MicrosoftFooter\"})":{"__typename":"ComponentScriptGroups","scriptGroups":{"__typename":"ComponentScriptGroupsDefinition","afterInteractive":{"__typename":"PageScriptGroupDefinition","group":"AFTER_INTERACTIVE","scriptIds":[]},"lazyOnLoad":{"__typename":"PageScriptGroupDefinition","group":"LAZY_ON_LOAD","scriptIds":[]}},"componentScripts":[]},"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"components/community/NavbarDropdownToggle\"]})":[{"__ref":"CachedAsset:text:en_US-components/community/NavbarDropdownToggle-1737115705000"}],"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/common/QueryHandler\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/common/QueryHandler-1737115705000"}],"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageCoverImage\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageCoverImage-1737115705000"}],"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/nodes/NodeTitle\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/nodes/NodeTitle-1737115705000"}],"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageTimeToRead\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageTimeToRead-1737115705000"}],"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageSubject\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageSubject-1737115705000"}],"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"components/users/UserLink\"]})":[{"__ref":"CachedAsset:text:en_US-components/users/UserLink-1737115705000"}],"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/users/UserRank\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/users/UserRank-1737115705000"}],"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageTime\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageTime-1737115705000"}],"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageBody\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageBody-1737115705000"}],"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageCustomFields\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageCustomFields-1737115705000"}],"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageRevision\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageRevision-1737115705000"}],"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageReplyButton\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageReplyButton-1737115705000"}],"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageAuthorBio\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageAuthorBio-1737115705000"}],"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/users/UserAvatar\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/users/UserAvatar-1737115705000"}],"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/ranks/UserRankLabel\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/ranks/UserRankLabel-1737115705000"}],"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"components/users/UserRegistrationDate\"]})":[{"__ref":"CachedAsset:text:en_US-components/users/UserRegistrationDate-1737115705000"}],"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/nodes/NodeAvatar\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/nodes/NodeAvatar-1737115705000"}],"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/nodes/NodeDescription\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/nodes/NodeDescription-1737115705000"}],"message({\"id\":\"message:4359735\"})":{"__ref":"BlogReplyMessage:message:4359735"},"cachedText({\"lastModified\":\"1737115705000\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/nodes/NodeIcon\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/nodes/NodeIcon-1737115705000"}]},"CachedAsset:pages-1741251531368":{"__typename":"CachedAsset","id":"pages-1741251531368","value":[{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"BlogViewAllPostsPage","type":"BLOG","urlPath":"/category/:categoryId/blog/:boardId/all-posts/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"CasePortalPage","type":"CASE_PORTAL","urlPath":"/caseportal","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"CreateGroupHubPage","type":"GROUP_HUB","urlPath":"/groups/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"CaseViewPage","type":"CASE_DETAILS","urlPath":"/case/:caseId/:caseNumber","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"InboxPage","type":"COMMUNITY","urlPath":"/inbox","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"HelpFAQPage","type":"COMMUNITY","urlPath":"/help","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"IdeaMessagePage","type":"IDEA_POST","urlPath":"/idea/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"IdeaViewAllIdeasPage","type":"IDEA","urlPath":"/category/:categoryId/ideas/:boardId/all-ideas/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"LoginPage","type":"USER","urlPath":"/signin","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"BlogPostPage","type":"BLOG","urlPath":"/category/:categoryId/blogs/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"UserBlogPermissions.Page","type":"COMMUNITY","urlPath":"/c/user-blog-permissions/page","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"ThemeEditorPage","type":"COMMUNITY","urlPath":"/designer/themes","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"TkbViewAllArticlesPage","type":"TKB","urlPath":"/category/:categoryId/kb/:boardId/all-articles/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1730142000000,"localOverride":null,"page":{"id":"AllEvents","type":"CUSTOM","urlPath":"/Events","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"OccasionEditPage","type":"EVENT","urlPath":"/event/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"OAuthAuthorizationAllowPage","type":"USER","urlPath":"/auth/authorize/allow","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"PageEditorPage","type":"COMMUNITY","urlPath":"/designer/pages","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"PostPage","type":"COMMUNITY","urlPath":"/category/:categoryId/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"ForumBoardPage","type":"FORUM","urlPath":"/category/:categoryId/discussions/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"TkbBoardPage","type":"TKB","urlPath":"/category/:categoryId/kb/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"EventPostPage","type":"EVENT","urlPath":"/category/:categoryId/events/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"UserBadgesPage","type":"COMMUNITY","urlPath":"/users/:login/:userId/badges","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"GroupHubMembershipAction","type":"GROUP_HUB","urlPath":"/membership/join/:nodeId/:membershipType","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"MaintenancePage","type":"COMMUNITY","urlPath":"/maintenance","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"IdeaReplyPage","type":"IDEA_REPLY","urlPath":"/idea/:boardId/:messageSubject/:messageId/comments/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"UserSettingsPage","type":"USER","urlPath":"/mysettings/:userSettingsTab","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"GroupHubsPage","type":"GROUP_HUB","urlPath":"/groups","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"ForumPostPage","type":"FORUM","urlPath":"/category/:categoryId/discussions/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"OccasionRsvpActionPage","type":"OCCASION","urlPath":"/event/:boardId/:messageSubject/:messageId/rsvp/:responseType","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"VerifyUserEmailPage","type":"USER","urlPath":"/verifyemail/:userId/:verifyEmailToken","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"AllOccasionsPage","type":"OCCASION","urlPath":"/category/:categoryId/events/:boardId/all-events/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"EventBoardPage","type":"EVENT","urlPath":"/category/:categoryId/events/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"TkbReplyPage","type":"TKB_REPLY","urlPath":"/kb/:boardId/:messageSubject/:messageId/comments/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"IdeaBoardPage","type":"IDEA","urlPath":"/category/:categoryId/ideas/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"CommunityGuideLinesPage","type":"COMMUNITY","urlPath":"/communityguidelines","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"CaseCreatePage","type":"SALESFORCE_CASE_CREATION","urlPath":"/caseportal/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"TkbEditPage","type":"TKB","urlPath":"/kb/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"ForgotPasswordPage","type":"USER","urlPath":"/forgotpassword","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"IdeaEditPage","type":"IDEA","urlPath":"/idea/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"TagPage","type":"COMMUNITY","urlPath":"/tag/:tagName","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"BlogBoardPage","type":"BLOG","urlPath":"/category/:categoryId/blog/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"OccasionMessagePage","type":"OCCASION_TOPIC","urlPath":"/event/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"ManageContentPage","type":"COMMUNITY","urlPath":"/managecontent","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"ClosedMembershipNodeNonMembersPage","type":"GROUP_HUB","urlPath":"/closedgroup/:groupHubId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"CommunityPage","type":"COMMUNITY","urlPath":"/","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"ForumMessagePage","type":"FORUM_TOPIC","urlPath":"/discussions/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"IdeaPostPage","type":"IDEA","urlPath":"/category/:categoryId/ideas/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1730142000000,"localOverride":null,"page":{"id":"CommunityHub.Page","type":"CUSTOM","urlPath":"/Directory","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"BlogMessagePage","type":"BLOG_ARTICLE","urlPath":"/blog/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"RegistrationPage","type":"USER","urlPath":"/register","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"EditGroupHubPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"ForumEditPage","type":"FORUM","urlPath":"/discussions/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"ResetPasswordPage","type":"USER","urlPath":"/resetpassword/:userId/:resetPasswordToken","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1730142000000,"localOverride":null,"page":{"id":"AllBlogs.Page","type":"CUSTOM","urlPath":"/blogs","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"TkbMessagePage","type":"TKB_ARTICLE","urlPath":"/kb/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"BlogEditPage","type":"BLOG","urlPath":"/blog/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"ManageUsersPage","type":"USER","urlPath":"/users/manage/:tab?/:manageUsersTab?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"ForumReplyPage","type":"FORUM_REPLY","urlPath":"/discussions/:boardId/:messageSubject/:messageId/replies/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"PrivacyPolicyPage","type":"COMMUNITY","urlPath":"/privacypolicy","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"NotificationPage","type":"COMMUNITY","urlPath":"/notifications","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"UserPage","type":"USER","urlPath":"/users/:login/:userId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"OccasionReplyPage","type":"OCCASION_REPLY","urlPath":"/event/:boardId/:messageSubject/:messageId/comments/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"ManageMembersPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId/manage/:tab?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"SearchResultsPage","type":"COMMUNITY","urlPath":"/search","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"BlogReplyPage","type":"BLOG_REPLY","urlPath":"/blog/:boardId/:messageSubject/:messageId/replies/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"GroupHubPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"TermsOfServicePage","type":"COMMUNITY","urlPath":"/termsofservice","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"CategoryPage","type":"CATEGORY","urlPath":"/category/:categoryId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"ForumViewAllTopicsPage","type":"FORUM","urlPath":"/category/:categoryId/discussions/:boardId/all-topics/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"TkbPostPage","type":"TKB","urlPath":"/category/:categoryId/kbs/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1741251531368,"localOverride":null,"page":{"id":"GroupHubPostPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"}],"localOverride":false},"CachedAsset:text:en_US-components/context/AppContext/AppContextProvider-0":{"__typename":"CachedAsset","id":"text:en_US-components/context/AppContext/AppContextProvider-0","value":{"noCommunity":"Cannot find community","noUser":"Cannot find current user","noNode":"Cannot find node with id {nodeId}","noMessage":"Cannot find message with id {messageId}"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/common/Loading/LoadingDot-0":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/common/Loading/LoadingDot-0","value":{"title":"Loading..."},"localOverride":false},"User:user:-1":{"__typename":"User","id":"user:-1","uid":-1,"login":"Deleted","email":"","avatar":null,"rank":null,"kudosWeight":1,"registrationData":{"__typename":"RegistrationData","status":"ANONYMOUS","registrationTime":null,"confirmEmailStatus":false,"registrationAccessLevel":"VIEW","ssoRegistrationFields":[]},"ssoId":null,"profileSettings":{"__typename":"ProfileSettings","dateDisplayStyle":{"__typename":"InheritableStringSettingWithPossibleValues","key":"layout.friendly_dates_enabled","value":"false","localValue":"true","possibleValues":["true","false"]},"dateDisplayFormat":{"__typename":"InheritableStringSetting","key":"layout.format_pattern_date","value":"MMM dd yyyy","localValue":"MM-dd-yyyy"},"language":{"__typename":"InheritableStringSettingWithPossibleValues","key":"profile.language","value":"en-US","localValue":"en","possibleValues":["en-US"]}},"deleted":false},"Theme:customTheme1":{"__typename":"Theme","id":"customTheme1"},"Category:category:Azure":{"__typename":"Category","id":"category:Azure","entityType":"CATEGORY","displayId":"Azure","nodeType":"category","depth":3,"title":"Azure","shortTitle":"Azure","parent":{"__ref":"Category:category:products-services"},"categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:top":{"__typename":"Category","id":"category:top","displayId":"top","nodeType":"category","depth":0,"title":"Top","entityType":"CATEGORY","shortTitle":"Top"},"Category:category:communities":{"__typename":"Category","id":"category:communities","displayId":"communities","nodeType":"category","depth":1,"parent":{"__ref":"Category:category:top"},"title":"Communities","entityType":"CATEGORY","shortTitle":"Communities"},"Category:category:products-services":{"__typename":"Category","id":"category:products-services","displayId":"products-services","nodeType":"category","depth":2,"parent":{"__ref":"Category:category:communities"},"title":"Products","entityType":"CATEGORY","shortTitle":"Products"},"Blog:board:AzureDevCommunityBlog":{"__typename":"Blog","id":"board:AzureDevCommunityBlog","entityType":"BLOG","displayId":"AzureDevCommunityBlog","nodeType":"board","depth":4,"conversationStyle":"BLOG","title":"Microsoft Developer Community Blog","description":"","avatar":null,"profileSettings":{"__typename":"ProfileSettings","language":null},"parent":{"__ref":"Category:category:Azure"},"ancestors":{"__typename":"CoreNodeConnection","edges":[{"__typename":"CoreNodeEdge","node":{"__ref":"Community:community:gxcuf89792"}},{"__typename":"CoreNodeEdge","node":{"__ref":"Category:category:communities"}},{"__typename":"CoreNodeEdge","node":{"__ref":"Category:category:products-services"}},{"__typename":"CoreNodeEdge","node":{"__ref":"Category:category:Azure"}}]},"userContext":{"__typename":"NodeUserContext","canAddAttachments":false,"canUpdateNode":false,"canPostMessages":false,"isSubscribed":false},"boardPolicies":{"__typename":"BoardPolicies","canPublishArticleOnCreate":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.forums.policy_can_publish_on_create_workflow_action.accessDenied","key":"error.lithium.policies.forums.policy_can_publish_on_create_workflow_action.accessDenied","args":[]}}},"shortTitle":"Microsoft Developer Community Blog","repliesProperties":{"__typename":"RepliesProperties","sortOrder":"REVERSE_PUBLISH_TIME","repliesFormat":"threaded"},"eventPath":"category:Azure/category:products-services/category:communities/community:gxcuf89792board:AzureDevCommunityBlog/","tagProperties":{"__typename":"TagNodeProperties","tagsEnabled":{"__typename":"PolicyResult","failureReason":null}},"requireTags":false,"tagType":"PRESET_ONLY"},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/cmstNC05WEo0blc\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/cmstNC05WEo0blc","height":512,"width":512,"mimeType":"image/png"},"Rank:rank:4":{"__typename":"Rank","id":"rank:4","position":6,"name":"Microsoft","color":"333333","icon":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/cmstNC05WEo0blc\"}"},"rankStyle":"OUTLINE"},"User:user:1604078":{"__typename":"User","id":"user:1604078","uid":1604078,"login":"Pamela_Fox","deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/dS0xNjA0MDc4LTQxODI4MWk5MjkyQjFBMEVGOUE5NkM5"},"rank":{"__ref":"Rank:rank:4"},"email":"","messagesCount":38,"biography":null,"topicsCount":33,"kudosReceivedCount":60,"kudosGivenCount":3,"kudosWeight":1,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2022-11-08T13:30:55.191-08:00","confirmEmailStatus":null},"followersCount":null,"solutionsCount":0},"BlogTopicMessage:message:4359662":{"__typename":"BlogTopicMessage","uid":4359662,"subject":"RAGHack 2024: Recordings and slides!","id":"message:4359662","revisionNum":1,"repliesCount":1,"author":{"__ref":"User:user:1604078"},"depth":0,"hasGivenKudo":false,"board":{"__ref":"Blog:board:AzureDevCommunityBlog"},"conversation":{"__ref":"Conversation:conversation:4359662"},"messagePolicies":{"__typename":"MessagePolicies","canPublishArticleOnEdit":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.forums.policy_can_publish_on_edit_workflow_action.accessDenied","key":"error.lithium.policies.forums.policy_can_publish_on_edit_workflow_action.accessDenied","args":[]}},"canModerateSpamMessage":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","key":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","args":[]}}},"contentWorkflow":{"__typename":"ContentWorkflow","state":"PUBLISH","scheduledPublishTime":null,"scheduledTimezone":null,"userContext":{"__typename":"MessageWorkflowContext","canSubmitForReview":null,"canEdit":false,"canRecall":null,"canSubmitForPublication":null,"canReturnToAuthor":null,"canPublish":null,"canReturnToReview":null,"canSchedule":false},"shortScheduledTimezone":null},"readOnly":false,"editFrozen":false,"moderationData":{"__ref":"ModerationData:moderation_data:4359662"},"teaser":"

RAGHack 2024: Recordings and Slides Now Available! 🚀

\n

This year’s RAGHack brought together developers, engineers, and advocates from around the globe with over 30 live streams in multiple languages! 🌍

\n

We explored how to build RAG solutions using Azure technologies like AI Search, Cosmos DB, Azure SQL, and more. Missed the live action?

\n

👉 Watch the streams and download the slides here: [Insert Link]

\n

🎯 Want more? Join us for RAG Deep Dive in January/February to explore Azure’s top RAG solutions.

","body":"

Earlier this year, we held RAGHack, a global hackathon which included more than 30 live streams across multiple spoken languages and programming languages. Thanks to talks from engineers, product managers, cloud solution architects, and advocates, we learnt how to develop RAG with a wide range of Azure technologies, like AI Search, Cosmos DB, PostgreSQL, Azure SQL, and Azure Communications Services.

\n

If you missed seeing the RAGHack streams live, you can catch up by watching the streams and downloading the slides, using the links below! 👇

\n

Want to catch our next live series about RAG? Register for RAG Deep Dive, a series in January/February that will go deep into our most popular RAG solution for Azure.

\n

English streams

\n

RAG 101

\n

📺 Watch YouTube recording

\n

An intro to RAGHack, a global hackathon to develop apps using LLMs and RAG. A large language model (LLM) like GPT-4 can be used for summarization, translation, entity extraction, and question-answering. Retrieval Augmented Generation (RAG) is an approach that sends context to the LLM so that it can provide grounded answers. RAG apps can be developed on Azure using a wide range of programming languages and retrievers (such as AI Search, Cosmos DB, PostgreSQL, and Azure SQL). Get an overview of RAG in this session before diving deep in our follow-up streams.

\n

🔗 Helpful links:

\n\n

RAG with .NET

\n

📺 Watch YouTube recording

\n

Learn how to develop apps using RAG with .NET and Semantic Kernel. We'll walk through our .NET RAG solution, showing the process of data ingestion with Azure Document Intelligence and AI Search, then walking through the RAG steps of query rewriting, hybrid search, and question answering. You'll learn how to easily bring your own data into the RAG solution, and how to customize the prompts and Blazor UI for your domain. 

\n

Presented by Jordan Matthiesen (PM in .NET), Luis Quintanilla (PM in .NET), Bruno Capuano (Advocate for .NET)

\n

🔗 Helpful links:

\n\n

RAG with Azure AI Studio

\n

📺 Watch YouTube recording

\n

Learn how to build a RAG-based custom copilot end-to-end using Azure AI Studio, code-first. We'll walk through \"Contoso Chat\", a retail copilot scenario with product and customer data. We'll explore prompt engineering using prompty assets, orchestration with promptflow flex-flows and automated provisioning and deployment with azd. You'll learn how to build & test your copilot locally (in VS Code), then deploy & test it in production on Azure.

\n

Presented by Leah Bar-On Simmons (Azure AI PM) and Nitya Narasimhan (Azure AI Advocate) 

\n

🔗 Helpful links:

\n\n

RAG with Python

\n

📺 Watch YouTube recording

\n

Learn how to develop apps using RAG with Python and the OpenAI SDK. We'll walk through our most popular RAG solution, showing the process of data ingestion with Azure Document Intelligence and AI Search, then walking through the RAG steps of query rewriting, hybrid search, and question answering. You'll learn how to easily bring your own data into the RAG solution, and how to customize the prompts and UI for your domain.

\n

Presented by Pamela Fox, Developer Advocate for Python

\n

🔗 Helpful links:

\n\n

RAG with Langchain4J

\n

📺 Watch YouTube recording

\n

Langchain4J is a great way to use large language models from Java, and is modeled on the most popular Python orchestrator, Langchain. Learn how to use Langchain4J to build a RAG solution, connecting to different LLMs, embedding models, and vector stores. We'll share multiple open-source solutions so that you can get started with Langchain4J today. 

\n

Presented by Julien Dubois, Principal Manager of Java Developer Relations at Microsoft

\n

🔗 Helpful links:

\n\n

RAG with LangchainJS

\n

📺 Watch YouTube recording

\n

Learn how to develop RAG apps with JavaScript and TypeScript, using both the OpenAI SDK and LangchainJS. We'll demonstrate multiple RAG starter apps with different architectures, including static web apps with serverless backends. You'll learn how to bring your own data into these RAG solutions and customize for your domain.

\n

Presented by Glaucia Lemos and Yohan Lasorsa, from the JavaScript Developer Advocacy team at Microsoft

\n

🔗 Helpful links:

\n\n

Scalable RAG with CosmosDB for NoSQL

\n

📺 Watch YouTube recording

\n

Join us to learn about building scalable RAG applications using Azure Cosmos DB for NoSQL! Learn foundational concepts, generate embeddings with Azure OpenAI, process, store, and search over document data in Azure Cosmos DB leveraging vector similarity search using DiskANN, a vector indexing method that enable fast and cost-efficient vector search at any scale!

\n

Presented by James Codella, Product Manager for Cosmos DB

\n

🔗 Helpful links:

\n\n

Responsible AI

\n

📺 Watch YouTube recording

\n

Join us as we tackle the challenge of embedding ethical principles and diversity into AI conversational platforms! We'll explore Microsoft's cool tools and practices for building responsible AI, with examples straight from our toolkit on the Responsible AI Tools and Practices page. See live demos showcasing importance of \"Responsible AI\", including examples of models and use cases that violate the principles. You'll walk away with practical insights and tools to create AI solutions that boost brand trust and open up new markets.

\n

Presented by Rory Preddy, Java Developer Advocate

\n

🔗 Helpful links:

\n\n

RAG on Cosmos DB MongoDB

\n

📺 Watch YouTube recording

\n

Learn how to build a RAG app using vCore-based Azure Cosmos DB for MongoDB and its new vector search capabilities. We'll walk through a Python web app that uses the LangChain package to orchestrate a RAG flow in order to answer questions about a restaurant's data.

\n

Presented by Khelan Modi, Product Manager on Azure Cosmos DB team, and John Aziz, Software Developer and Microsoft MVP

\n

🔗 Helpful links:

\n\n

RAG with Azure AI Search

\n

📺 Watch YouTube recording

\n

Azure AI Search is a powerful search engine, with many features designed specifically for RAG applications. We'll demonstrate optimal retrieval using hybrid search with the semantic ranker, show the new integrated vectorization feature for cloud-based data ingestion, and discuss vector storage optimization.

\n

Presented by Farzad Sunavala, Product Manager on Azure AI Search, and Pamela Fox, Developer Advocate for Python

\n

🔗 Helpful links:

\n\n

RAG on PostgreSQL

\n

📺 Watch YouTube recording

\n

Discover the many ways you can build RAG applications on top of Azure Database for PostgreSQL Flexible Servers. We'll start by using the pgvector extension for vector similarity search. Then we'll explore the new azure_ai extension which provides built-in functions for embeddings, summarization, sentiment analysis, and more. Finally, we'll demo the new azure_local_ai extension to efficiently run pre-trained models on our database server, which can be a great fit for RAG applications that require custom embedding models. 

\n

Presented by Joshua Johnson, Principal TPM on Azure PostgreSQL, and Pamela Fox, Developer Advocate for Python

\n

🔗 Helpful links:

\n\n

RAG on Azure SQL Server

\n

📺 Watch YouTube recording

\n

How do you build a RAG solution on data already stored in SQL Server or Azure SQL? In this session you'll learn about existing and future options that you can start to use right tomorrow, leveraging Azure SQL as a vector store and taking advantage of its established performances, security and enterprise readiness!

\n

Presented by Davide Mauri, Principal Product Manager on Azure SQL DB

\n

🔗 Helpful links:

\n\n

Intro to GraphRAG

\n

📺 Watch YouTube recording

\n

In this presentation, you'll gain an understanding of GraphRAG, a technique that enhances document analysis and question-and-answer performance by leveraging large language models (LLMs) to create knowledge graphs. We'll explore how GraphRAG builds upon Retrieval-Augmented Generation (RAG) by using knowledge graphs instead of vector similarity for retrieval. You'll learn how to set up the environment, prepare data, and implement GraphRAG using LangChain, with practical code examples. Additionally, we'll explore some advanced features and customization options available in LangChain to optimize and tailor GraphRAG to your specific needs.

\n

Presented by John Alexander, Content Developer and Apurva Mody, Principal Program Manager

\n

🔗 Helpful links:

\n\n

Add multi-channel communication in RAG apps

\n

📺 Watch YouTube recording

\n

In this session, we will explore how to enhance your Retrieval-Augmented Generation (RAG) applications by integrating various communication channels, including chat, voice, SMS, and WhatsApp, using Azure Communication Services. By connecting the intelligence of a RAG app with these channels, you can create more versatile and user-friendly AI solutions. We'll show you how to implement these integrations to improve user engagement by using their preferred mode of communication.

\n

Presented by Milan Kaur, Product Manager at Microsoft

\n

🔗 Helpful links:

\n\n

RAG with Java + Semantic Kernel

\n

📺 Watch YouTube recording

\n

Learn how to develop apps using RAG with Java and Semantic Kernel. We'll walk through our RAG solution, showing the process of data ingestion with Azure Document Intelligence and AI Search, then walking through the RAG steps of query rewriting, hybrid search, and question answering. You'll learn how to easily bring your own data into the RAG solution and deploy it to Azure.

\n

Presented by Bruno Borges (Product Manager, Java), Davide Antelmo (Cloud Solution Architect, Java), John Oliver (Software Engineer, Semantic Kernel)

\n

🔗 Helpful links:

\n\n

RAG with Java + Spring AI

\n

📺 Watch YouTube recording

\n

Artificial Intelligence is an amazing thing, but it gets even smarter when you can point it at your data. In this session, you'll learn how easy it can be to tap into the wealth of domain knowledge locked up in your organization's documents using RAG (Retrieval Augmented Generation) with Java and Spring AI. You have the power!

\n

Presented by Mark Heckler, Java Cloud Advocate

\n

🔗 Helpful links:

\n\n

RAG with vision models

\n

📺 Watch YouTube recording

\n

What do you do when the documents for your RAG app include images, like graphs or photos? You first need to generate embeddings using a multimodal model, like the one available from Azure Computer Vision, search those embeddings using a powerful vector search like Azure AI Search, and then send any retrieved text and images to a multimodal LLM like GPT-4o. Learn how to get started quickly with a RAG on multimodal documents in this session. 

\n

Presented by Pamela Fox, Python Advocate at Microsoft

\n

🔗 Helpful links:

\n\n

Internationalization for RAG apps

\n

📺 Watch YouTube recording

\n

Building a RAG app for a non-English audience? Fortunately, language models and embedding models is that they understand a wide range of languages. Unfortunately, they have a bias towards English, so you need to choose your approach carefully when deploying them in other languages. In this session, we'll dive into tokenization, optimal data chunking strategies, and other best practices for internationalization.

\n

Presented by Anthony Shaw, Python Cloud Advocate and Renee Noble, Regional Cloud advocate

\n

🔗 Helpful links:

\n\n

Use Phi-3 to create a VSCode chat agent extension

\n

📺 Watch YouTube recording

\n

Have you used a GitHub Copilot chat agent, like the powerful @workspace? You can build your own agent like that, to answer questions about your own domain or functionality. In this session, we'll show how you can quickly create your own customized GitHub Copilot Chat Agent Extension through the GitHub Copilot Chat Agent API combined with the Phi-3 model.

\n

Presented by Kinfey Lo, Cloud Advocate

\n

🔗 Helpful links:

\n\n

Agentic RAG with Langchain

\n

📺 Watch YouTube recording

\n

RAG (Retrieval Augmented Generation) is the most common approach used to get LLMs to answer questions grounded in a particular domain's data. Learn how to use Langchain, the most popular Python package for LLM orchestration, to build a RAG application with Python and Azure OpenAI. Discover how to use agentic flows in Langchain to build more complex RAG workflows.

\n

Presented by Marlene Mhangami, Developer Advocate for Python

\n

🔗 Helpful links:

\n\n

Build an OpenAI code interpreter for Python

\n

📺 Watch YouTube recording

\n

Discover how to build a Python code interpreter tool using Azure OpenAI for the code generation and Azure Container Apps Dynamic Sessions for sandboxed code execution. See how the popular Langchain package makes it easy to generate step-by-step code generation, and how the default Dynamic Sessions environments can call popular third-party libraries like pandas and numpy.

\n

Presented by Anthony Chu, Product Manager for Azure Container Apps

\n

🔗 Helpful links:

\n\n

Connections in Azure AI Studio

\n

📺 Watch YouTube recording

\n

Dive into the essentials of connecting AI and ML solutions using Azure AI Studio. This session will guide you through setting up AI Studio with best practices for security and access management, highlighting connections to key services such as Azure Cognitive Services, Azure Search, and Azure Storage Accounts. Whether you're implementing RAG chatbots or deploying models, discover how to protect your resources and ensure compliance across your enterprise. This session will highlight solutions from the Microsoft AI-In-a-Box framework.

\n

Presented by Chris Ayers, Customer Engineer, and Marco Aurelio Cardoso, Customer Engineer

\n

🔗 Helpful links:

\n\n

Explore AutoGen concepts with AutoGen Studio

\n

📺 Watch YouTube recording

\n

In this session we will explore some of AutoGen foundational concepts such as enhanced inference, code executors, and more advanced concepts such as Agents and Agent flows. The session will leverage code both in Jupyter Notebooks and the Autogen Studio code. Session objectives: Basic understanding of some of the AutoGen's foundational and intermediate concepts Basic understanding of the AutoGen Studio code Building applications with AutoGen 

\n

Presented by Alex Morales, Customer Engineering Manager at Microsoft

\n

🔗 Helpful links:

\n\n

RAG with Data Access Control

\n

📺 Watch YouTube recording

\n

With a RAG approach, the app first searches a knowledge base for relevant matches to a user's query, then sends the results to the LLM along with the original question. What if you have documents that should only be accessed by a subset of your users, like a group or a single user? Then you need data access controls to ensure that document visibility is respected during the RAG flow. In this session, we'll show an approach using Azure AI Search with data access controls to only search the documents that can be seen by the logged in user. We'll also demonstrate a feature for user-uploaded documents that uses data access controls along with Azure Data Lake Storage Gen2. 

\n

Presented by Matt Gotteiner, Product Manager for Azure AI Search, and Pamela Fox, Developer Advocate for Python

\n

🔗 Helpful links:

\n\n

RAFT: (RAG + Fine Tuning) in Azure AI Studio

\n

📺 Watch YouTube recording

\n

RAG is a very good domain adaptation technic but sometimes doesn't meet quality expectations. RAFT (Retrieval augmented fine-tuning) is a new hybrid approach to LLM domain adaptation that combines RAG and fine-tuning. In this session, you'll learn how to implement RAFT using Azure AI Studio and its fine tuning capabilities.

\n

Presented by Cedric Vidal, AI Advocate for Startups

\n

🔗 Helpful links:

\n\n

Pick the right model for the right job

\n

📺 Watch YouTube recording

\n

Building RAG and trying to decide what model to use? There are an increasing number of high-quality large language models available, many of which are now available from Azure AI, like OpenAi, Mistral, Cohere, Llama, Phi-3, and more. Which one do you use, and how do you easily switch between them? In this talk, we'll show you how to use the Azure AI inference SDK as well as orchestration libraries like Llamaindex to run the same code with different models. We'll talk about what models work best for different stages of RAG, plus how you can evaluate your choice.

\n

Presented by Facundo Santiago, Azure AI Product Manager

\n

🔗 Helpful links:

\n\n

Evaluating your RAG Chat App

\n

📺 Watch YouTube recording

\n

How can you be sure that your RAG application's answers are accurate, clear, and well formatted? Evaluation! In this session, we'll show you how to use Azure AI Studio and the Promptflow SDK to generate synthetic data and run bulk evaluations on your RAG app. Learn about different GPT metrics like groundedness and fluency, and consider other ways you can measure the quality of your RAG app answers. 

\n

Presented by Pamela Fox, Python Advocate

\n

🔗 Helpful links:

\n\n

Spanish sessions:

\n

RAG: Generación Aumentada de Recuperación

\n

📺 Watch YouTube recording

\n

Una introducción a RAGHack, un hackathon global para desarrollar aplicaciones utilizando modelos de lenguaje grandes (LLM) y RAG. Se puede utilizar un modelo de lenguaje grande (LLM) como GPT-4 para realizar resúmenes, traducciones, extracciones de entidades y respuestas a preguntas. La generación aumentada de recuperación (RAG) es un enfoque que envía contexto al LLM para que pueda proporcionar respuestas fundamentadas. Las aplicaciones RAG se pueden desarrollar en Azure utilizando una amplia gama de lenguajes de programación y recuperadores (como AI Search, Cosmos DB, PostgreSQL y Azure SQL). Esta sesión brindará una descripción general de RAG y demostrará una aplicación RAG de muestra que puede comenzar a usar hoy mismo.

\n

🔗 Helpful links:

\n\n

RAG: Prácticas recomendadas de Azure AI Search

\n

📺 Watch YouTube recording

\n

Azure AI Search es un potente motor de búsqueda con muchas funciones diseñadas específicamente para aplicaciones RAG. Analizaremos cómo funcionan los vectores de embeddings y la búsqueda vectorial, y demostraremos una devolución óptima mediante la búsqueda híbrida con el clasificador semántico.

\n

🔗 Helpful links:

\n\n

AI Multi-Agentes: Patrones, Problemas y Soluciones

\n

📺 Watch YouTube recording

\n

En esta sesión, compartiremos los desafíos y patrones que hemos identificado a partir de nuestras experiencias al extender aplicaciones empresariales del mundo real y transformarlas en soluciones inteligentes mediante el uso de multi-agentes. Exploraremos en detalle las cuestiones técnicas involucradas en llevar a producción soluciones multi-agentes, y cómo estas pueden potenciar la funcionalidad de las aplicaciones existentes. 

\n

🔗 Helpful links:

\n\n

Portuguese sessions:

\n

RAG (Geração Aumentada de Busca) no Azure

\n

📺 Watch YouTube recording

\n

Uma introdução ao RAGHack, um hackathon global para desenvolver aplicativos usando LLMs e RAG. Um modelo de linguagem grande (LLM) como GPT-4 pode ser usado para resumo, tradução, extração de entidade e resposta a perguntas. A Geração Aumentada de Busca (RAG) é uma abordagem que envia contexto ao LLM para que ele possa fornecer respostas fundamentadas. Os aplicativos RAG podem ser desenvolvidos no Azure usando uma ampla variedade de linguagens de programação e recuperadores (como AI Search, Cosmos DB, PostgreSQL e Azure SQL). Nesta sessão, daremos uma visão geral do RAG e demonstraremos uma solução RAG totalmente funcional que você pode começar a usar hoje mesmo.

\n

Speaker: Marco Cardoso - Engenheiro de Data & AI na Microsoft

\n

🔗 Helpful links:

\n\n

Construindo RAG com Azure AI Studio e Python

\n

📺 Watch YouTube recording

\n

Aprenda a criar um copiloto personalizado baseado em RAG de ponta a ponta usando o Azure AI Studio. Vamos percorrer o \"Contoso Chat\", um cenário de copiloto de varejo com dados de produtos e clientes. Exploraremos a engenharia de prompt usando ativos do prompty, orquestração com flex-flows do promptflow e você aprenderá a criar e testar seu copiloto localmente (no VS Code) e, em seguida, implantá-lo e testá-lo em produção no Azure.

\n

Speaker: Pablo Lopes - AI Developer Advocate na Microsoft

\n

🔗 Helpful links:

\n\n

Implantando RAG com .NET e Azure Developer CLI

\n

📺 Watch YouTube recording

\n

Aprenda a criar um aplicativo de RAG com .NET. Exploramos o engenharia de prompt usando Prompty e orquestração com Semantic Kernel. Descubra como usar o Azure Developer CLI para o provisionamento e implantação automatizados a Azure Container Apps. 

\n

Speaker: Andre Dewes – Senior Customer Engineer na Microsoft

\n

🔗 Helpful links:

\n","body@stringLength":"40492","rawBody":"

Earlier this year, we held RAGHack, a global hackathon which included more than 30 live streams across multiple spoken languages and programming languages. Thanks to talks from engineers, product managers, cloud solution architects, and advocates, we learnt how to develop RAG with a wide range of Azure technologies, like AI Search, Cosmos DB, PostgreSQL, Azure SQL, and Azure Communications Services.

\n

If you missed seeing the RAGHack streams live, you can catch up by watching the streams and downloading the slides, using the links below! 👇

\n

Want to catch our next live series about RAG? Register for RAG Deep Dive, a series in January/February that will go deep into our most popular RAG solution for Azure.

\n

English streams

\n

RAG 101

\n

📺 Watch YouTube recording

\n

An intro to RAGHack, a global hackathon to develop apps using LLMs and RAG. A large language model (LLM) like GPT-4 can be used for summarization, translation, entity extraction, and question-answering. Retrieval Augmented Generation (RAG) is an approach that sends context to the LLM so that it can provide grounded answers. RAG apps can be developed on Azure using a wide range of programming languages and retrievers (such as AI Search, Cosmos DB, PostgreSQL, and Azure SQL). Get an overview of RAG in this session before diving deep in our follow-up streams.

\n

🔗 Helpful links:

\n\n

RAG with .NET

\n

📺 Watch YouTube recording

\n

Learn how to develop apps using RAG with .NET and Semantic Kernel. We'll walk through our .NET RAG solution, showing the process of data ingestion with Azure Document Intelligence and AI Search, then walking through the RAG steps of query rewriting, hybrid search, and question answering. You'll learn how to easily bring your own data into the RAG solution, and how to customize the prompts and Blazor UI for your domain. 

\n

Presented by Jordan Matthiesen (PM in .NET), Luis Quintanilla (PM in .NET), Bruno Capuano (Advocate for .NET)

\n

🔗 Helpful links:

\n\n

RAG with Azure AI Studio

\n

📺 Watch YouTube recording

\n

Learn how to build a RAG-based custom copilot end-to-end using Azure AI Studio, code-first. We'll walk through \"Contoso Chat\", a retail copilot scenario with product and customer data. We'll explore prompt engineering using prompty assets, orchestration with promptflow flex-flows and automated provisioning and deployment with azd. You'll learn how to build & test your copilot locally (in VS Code), then deploy & test it in production on Azure.

\n

Presented by Leah Bar-On Simmons (Azure AI PM) and Nitya Narasimhan (Azure AI Advocate) 

\n

🔗 Helpful links:

\n\n

RAG with Python

\n

📺 Watch YouTube recording

\n

Learn how to develop apps using RAG with Python and the OpenAI SDK. We'll walk through our most popular RAG solution, showing the process of data ingestion with Azure Document Intelligence and AI Search, then walking through the RAG steps of query rewriting, hybrid search, and question answering. You'll learn how to easily bring your own data into the RAG solution, and how to customize the prompts and UI for your domain.

\n

Presented by Pamela Fox, Developer Advocate for Python

\n

🔗 Helpful links:

\n\n

RAG with Langchain4J

\n

📺 Watch YouTube recording

\n

Langchain4J is a great way to use large language models from Java, and is modeled on the most popular Python orchestrator, Langchain. Learn how to use Langchain4J to build a RAG solution, connecting to different LLMs, embedding models, and vector stores. We'll share multiple open-source solutions so that you can get started with Langchain4J today. 

\n

Presented by Julien Dubois, Principal Manager of Java Developer Relations at Microsoft

\n

🔗 Helpful links:

\n\n

RAG with LangchainJS

\n

📺 Watch YouTube recording

\n

Learn how to develop RAG apps with JavaScript and TypeScript, using both the OpenAI SDK and LangchainJS. We'll demonstrate multiple RAG starter apps with different architectures, including static web apps with serverless backends. You'll learn how to bring your own data into these RAG solutions and customize for your domain.

\n

Presented by Glaucia Lemos and Yohan Lasorsa, from the JavaScript Developer Advocacy team at Microsoft

\n

🔗 Helpful links:

\n\n

Scalable RAG with CosmosDB for NoSQL

\n

📺 Watch YouTube recording

\n

Join us to learn about building scalable RAG applications using Azure Cosmos DB for NoSQL! Learn foundational concepts, generate embeddings with Azure OpenAI, process, store, and search over document data in Azure Cosmos DB leveraging vector similarity search using DiskANN, a vector indexing method that enable fast and cost-efficient vector search at any scale!

\n

Presented by James Codella, Product Manager for Cosmos DB

\n

🔗 Helpful links:

\n\n

Responsible AI

\n

📺 Watch YouTube recording

\n

Join us as we tackle the challenge of embedding ethical principles and diversity into AI conversational platforms! We'll explore Microsoft's cool tools and practices for building responsible AI, with examples straight from our toolkit on the Responsible AI Tools and Practices page. See live demos showcasing importance of \"Responsible AI\", including examples of models and use cases that violate the principles. You'll walk away with practical insights and tools to create AI solutions that boost brand trust and open up new markets.

\n

Presented by Rory Preddy, Java Developer Advocate

\n

🔗 Helpful links:

\n\n

RAG on Cosmos DB MongoDB

\n

📺 Watch YouTube recording

\n

Learn how to build a RAG app using vCore-based Azure Cosmos DB for MongoDB and its new vector search capabilities. We'll walk through a Python web app that uses the LangChain package to orchestrate a RAG flow in order to answer questions about a restaurant's data.

\n

Presented by Khelan Modi, Product Manager on Azure Cosmos DB team, and John Aziz, Software Developer and Microsoft MVP

\n

🔗 Helpful links:

\n\n

RAG with Azure AI Search

\n

📺 Watch YouTube recording

\n

Azure AI Search is a powerful search engine, with many features designed specifically for RAG applications. We'll demonstrate optimal retrieval using hybrid search with the semantic ranker, show the new integrated vectorization feature for cloud-based data ingestion, and discuss vector storage optimization.

\n

Presented by Farzad Sunavala, Product Manager on Azure AI Search, and Pamela Fox, Developer Advocate for Python

\n

🔗 Helpful links:

\n\n

RAG on PostgreSQL

\n

📺 Watch YouTube recording

\n

Discover the many ways you can build RAG applications on top of Azure Database for PostgreSQL Flexible Servers. We'll start by using the pgvector extension for vector similarity search. Then we'll explore the new azure_ai extension which provides built-in functions for embeddings, summarization, sentiment analysis, and more. Finally, we'll demo the new azure_local_ai extension to efficiently run pre-trained models on our database server, which can be a great fit for RAG applications that require custom embedding models. 

\n

Presented by Joshua Johnson, Principal TPM on Azure PostgreSQL, and Pamela Fox, Developer Advocate for Python

\n

🔗 Helpful links:

\n\n

RAG on Azure SQL Server

\n

📺 Watch YouTube recording

\n

How do you build a RAG solution on data already stored in SQL Server or Azure SQL? In this session you'll learn about existing and future options that you can start to use right tomorrow, leveraging Azure SQL as a vector store and taking advantage of its established performances, security and enterprise readiness!

\n

Presented by Davide Mauri, Principal Product Manager on Azure SQL DB

\n

🔗 Helpful links:

\n\n

Intro to GraphRAG

\n

📺 Watch YouTube recording

\n

In this presentation, you'll gain an understanding of GraphRAG, a technique that enhances document analysis and question-and-answer performance by leveraging large language models (LLMs) to create knowledge graphs. We'll explore how GraphRAG builds upon Retrieval-Augmented Generation (RAG) by using knowledge graphs instead of vector similarity for retrieval. You'll learn how to set up the environment, prepare data, and implement GraphRAG using LangChain, with practical code examples. Additionally, we'll explore some advanced features and customization options available in LangChain to optimize and tailor GraphRAG to your specific needs.

\n

Presented by John Alexander, Content Developer and Apurva Mody, Principal Program Manager

\n

🔗 Helpful links:

\n\n

Add multi-channel communication in RAG apps

\n

📺 Watch YouTube recording

\n

In this session, we will explore how to enhance your Retrieval-Augmented Generation (RAG) applications by integrating various communication channels, including chat, voice, SMS, and WhatsApp, using Azure Communication Services. By connecting the intelligence of a RAG app with these channels, you can create more versatile and user-friendly AI solutions. We'll show you how to implement these integrations to improve user engagement by using their preferred mode of communication.

\n

Presented by Milan Kaur, Product Manager at Microsoft

\n

🔗 Helpful links:

\n\n

RAG with Java + Semantic Kernel

\n

📺 Watch YouTube recording

\n

Learn how to develop apps using RAG with Java and Semantic Kernel. We'll walk through our RAG solution, showing the process of data ingestion with Azure Document Intelligence and AI Search, then walking through the RAG steps of query rewriting, hybrid search, and question answering. You'll learn how to easily bring your own data into the RAG solution and deploy it to Azure.

\n

Presented by Bruno Borges (Product Manager, Java), Davide Antelmo (Cloud Solution Architect, Java), John Oliver (Software Engineer, Semantic Kernel)

\n

🔗 Helpful links:

\n\n

RAG with Java + Spring AI

\n

📺 Watch YouTube recording

\n

Artificial Intelligence is an amazing thing, but it gets even smarter when you can point it at your data. In this session, you'll learn how easy it can be to tap into the wealth of domain knowledge locked up in your organization's documents using RAG (Retrieval Augmented Generation) with Java and Spring AI. You have the power!

\n

Presented by Mark Heckler, Java Cloud Advocate

\n

🔗 Helpful links:

\n\n

RAG with vision models

\n

📺 Watch YouTube recording

\n

What do you do when the documents for your RAG app include images, like graphs or photos? You first need to generate embeddings using a multimodal model, like the one available from Azure Computer Vision, search those embeddings using a powerful vector search like Azure AI Search, and then send any retrieved text and images to a multimodal LLM like GPT-4o. Learn how to get started quickly with a RAG on multimodal documents in this session. 

\n

Presented by Pamela Fox, Python Advocate at Microsoft

\n

🔗 Helpful links:

\n\n

Internationalization for RAG apps

\n

📺 Watch YouTube recording

\n

Building a RAG app for a non-English audience? Fortunately, language models and embedding models is that they understand a wide range of languages. Unfortunately, they have a bias towards English, so you need to choose your approach carefully when deploying them in other languages. In this session, we'll dive into tokenization, optimal data chunking strategies, and other best practices for internationalization.

\n

Presented by Anthony Shaw, Python Cloud Advocate and Renee Noble, Regional Cloud advocate

\n

🔗 Helpful links:

\n\n

Use Phi-3 to create a VSCode chat agent extension

\n

📺 Watch YouTube recording

\n

Have you used a GitHub Copilot chat agent, like the powerful @workspace? You can build your own agent like that, to answer questions about your own domain or functionality. In this session, we'll show how you can quickly create your own customized GitHub Copilot Chat Agent Extension through the GitHub Copilot Chat Agent API combined with the Phi-3 model.

\n

Presented by Kinfey Lo, Cloud Advocate

\n

🔗 Helpful links:

\n\n

Agentic RAG with Langchain

\n

📺 Watch YouTube recording

\n

RAG (Retrieval Augmented Generation) is the most common approach used to get LLMs to answer questions grounded in a particular domain's data. Learn how to use Langchain, the most popular Python package for LLM orchestration, to build a RAG application with Python and Azure OpenAI. Discover how to use agentic flows in Langchain to build more complex RAG workflows.

\n

Presented by Marlene Mhangami, Developer Advocate for Python

\n

🔗 Helpful links:

\n\n

Build an OpenAI code interpreter for Python

\n

📺 Watch YouTube recording

\n

Discover how to build a Python code interpreter tool using Azure OpenAI for the code generation and Azure Container Apps Dynamic Sessions for sandboxed code execution. See how the popular Langchain package makes it easy to generate step-by-step code generation, and how the default Dynamic Sessions environments can call popular third-party libraries like pandas and numpy.

\n

Presented by Anthony Chu, Product Manager for Azure Container Apps

\n

🔗 Helpful links:

\n\n

Connections in Azure AI Studio

\n

📺 Watch YouTube recording

\n

Dive into the essentials of connecting AI and ML solutions using Azure AI Studio. This session will guide you through setting up AI Studio with best practices for security and access management, highlighting connections to key services such as Azure Cognitive Services, Azure Search, and Azure Storage Accounts. Whether you're implementing RAG chatbots or deploying models, discover how to protect your resources and ensure compliance across your enterprise. This session will highlight solutions from the Microsoft AI-In-a-Box framework.

\n

Presented by Chris Ayers, Customer Engineer, and Marco Aurelio Cardoso, Customer Engineer

\n

🔗 Helpful links:

\n\n

Explore AutoGen concepts with AutoGen Studio

\n

📺 Watch YouTube recording

\n

In this session we will explore some of AutoGen foundational concepts such as enhanced inference, code executors, and more advanced concepts such as Agents and Agent flows. The session will leverage code both in Jupyter Notebooks and the Autogen Studio code. Session objectives: Basic understanding of some of the AutoGen's foundational and intermediate concepts Basic understanding of the AutoGen Studio code Building applications with AutoGen 

\n

Presented by Alex Morales, Customer Engineering Manager at Microsoft

\n

🔗 Helpful links:

\n\n

RAG with Data Access Control

\n

📺 Watch YouTube recording

\n

With a RAG approach, the app first searches a knowledge base for relevant matches to a user's query, then sends the results to the LLM along with the original question. What if you have documents that should only be accessed by a subset of your users, like a group or a single user? Then you need data access controls to ensure that document visibility is respected during the RAG flow. In this session, we'll show an approach using Azure AI Search with data access controls to only search the documents that can be seen by the logged in user. We'll also demonstrate a feature for user-uploaded documents that uses data access controls along with Azure Data Lake Storage Gen2. 

\n

Presented by Matt Gotteiner, Product Manager for Azure AI Search, and Pamela Fox, Developer Advocate for Python

\n

🔗 Helpful links:

\n\n

RAFT: (RAG + Fine Tuning) in Azure AI Studio

\n

📺 Watch YouTube recording

\n

RAG is a very good domain adaptation technic but sometimes doesn't meet quality expectations. RAFT (Retrieval augmented fine-tuning) is a new hybrid approach to LLM domain adaptation that combines RAG and fine-tuning. In this session, you'll learn how to implement RAFT using Azure AI Studio and its fine tuning capabilities.

\n

Presented by Cedric Vidal, AI Advocate for Startups

\n

🔗 Helpful links:

\n\n

Pick the right model for the right job

\n

📺 Watch YouTube recording

\n

Building RAG and trying to decide what model to use? There are an increasing number of high-quality large language models available, many of which are now available from Azure AI, like OpenAi, Mistral, Cohere, Llama, Phi-3, and more. Which one do you use, and how do you easily switch between them? In this talk, we'll show you how to use the Azure AI inference SDK as well as orchestration libraries like Llamaindex to run the same code with different models. We'll talk about what models work best for different stages of RAG, plus how you can evaluate your choice.

\n

Presented by Facundo Santiago, Azure AI Product Manager

\n

🔗 Helpful links:

\n\n

Evaluating your RAG Chat App

\n

📺 Watch YouTube recording

\n

How can you be sure that your RAG application's answers are accurate, clear, and well formatted? Evaluation! In this session, we'll show you how to use Azure AI Studio and the Promptflow SDK to generate synthetic data and run bulk evaluations on your RAG app. Learn about different GPT metrics like groundedness and fluency, and consider other ways you can measure the quality of your RAG app answers. 

\n

Presented by Pamela Fox, Python Advocate

\n

🔗 Helpful links:

\n\n

Spanish sessions:

\n

RAG: Generación Aumentada de Recuperación

\n

📺 Watch YouTube recording

\n

Una introducción a RAGHack, un hackathon global para desarrollar aplicaciones utilizando modelos de lenguaje grandes (LLM) y RAG. Se puede utilizar un modelo de lenguaje grande (LLM) como GPT-4 para realizar resúmenes, traducciones, extracciones de entidades y respuestas a preguntas. La generación aumentada de recuperación (RAG) es un enfoque que envía contexto al LLM para que pueda proporcionar respuestas fundamentadas. Las aplicaciones RAG se pueden desarrollar en Azure utilizando una amplia gama de lenguajes de programación y recuperadores (como AI Search, Cosmos DB, PostgreSQL y Azure SQL). Esta sesión brindará una descripción general de RAG y demostrará una aplicación RAG de muestra que puede comenzar a usar hoy mismo.

\n

🔗 Helpful links:

\n\n

RAG: Prácticas recomendadas de Azure AI Search

\n

📺 Watch YouTube recording

\n

Azure AI Search es un potente motor de búsqueda con muchas funciones diseñadas específicamente para aplicaciones RAG. Analizaremos cómo funcionan los vectores de embeddings y la búsqueda vectorial, y demostraremos una devolución óptima mediante la búsqueda híbrida con el clasificador semántico.

\n

🔗 Helpful links:

\n\n

AI Multi-Agentes: Patrones, Problemas y Soluciones

\n

📺 Watch YouTube recording

\n

En esta sesión, compartiremos los desafíos y patrones que hemos identificado a partir de nuestras experiencias al extender aplicaciones empresariales del mundo real y transformarlas en soluciones inteligentes mediante el uso de multi-agentes. Exploraremos en detalle las cuestiones técnicas involucradas en llevar a producción soluciones multi-agentes, y cómo estas pueden potenciar la funcionalidad de las aplicaciones existentes. 

\n

🔗 Helpful links:

\n\n

Portuguese sessions:

\n

RAG (Geração Aumentada de Busca) no Azure

\n

📺 Watch YouTube recording

\n

Uma introdução ao RAGHack, um hackathon global para desenvolver aplicativos usando LLMs e RAG. Um modelo de linguagem grande (LLM) como GPT-4 pode ser usado para resumo, tradução, extração de entidade e resposta a perguntas. A Geração Aumentada de Busca (RAG) é uma abordagem que envia contexto ao LLM para que ele possa fornecer respostas fundamentadas. Os aplicativos RAG podem ser desenvolvidos no Azure usando uma ampla variedade de linguagens de programação e recuperadores (como AI Search, Cosmos DB, PostgreSQL e Azure SQL). Nesta sessão, daremos uma visão geral do RAG e demonstraremos uma solução RAG totalmente funcional que você pode começar a usar hoje mesmo.

\n

Speaker: Marco Cardoso - Engenheiro de Data & AI na Microsoft

\n

🔗 Helpful links:

\n\n

Construindo RAG com Azure AI Studio e Python

\n

📺 Watch YouTube recording

\n

Aprenda a criar um copiloto personalizado baseado em RAG de ponta a ponta usando o Azure AI Studio. Vamos percorrer o \"Contoso Chat\", um cenário de copiloto de varejo com dados de produtos e clientes. Exploraremos a engenharia de prompt usando ativos do prompty, orquestração com flex-flows do promptflow e você aprenderá a criar e testar seu copiloto localmente (no VS Code) e, em seguida, implantá-lo e testá-lo em produção no Azure.

\n

Speaker: Pablo Lopes - AI Developer Advocate na Microsoft

\n

🔗 Helpful links:

\n\n

Implantando RAG com .NET e Azure Developer CLI

\n

📺 Watch YouTube recording

\n

Aprenda a criar um aplicativo de RAG com .NET. Exploramos o engenharia de prompt usando Prompty e orquestração com Semantic Kernel. Descubra como usar o Azure Developer CLI para o provisionamento e implantação automatizados a Azure Container Apps. 

\n

Speaker: Andre Dewes – Senior Customer Engineer na Microsoft

\n

🔗 Helpful links:

\n","kudosSumWeight":2,"postTime":"2024-12-20T05:40:59.915-08:00","images":{"__typename":"AssociatedImageConnection","edges":[{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDE","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MzU5NjYyLUxCS1IxZQ?revision=1\"}"}}],"totalCount":1,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"attachments":{"__typename":"AttachmentConnection","pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null},"edges":[]},"tags":{"__typename":"TagConnection","pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null},"edges":[]},"timeToRead":13,"rawTeaser":"

RAGHack 2024: Recordings and Slides Now Available! 🚀

\n

This year’s RAGHack brought together developers, engineers, and advocates from around the globe with over 30 live streams in multiple languages! 🌍

\n

We explored how to build RAG solutions using Azure technologies like AI Search, Cosmos DB, Azure SQL, and more. Missed the live action?

\n

👉 Watch the streams and download the slides here: [Insert Link]

\n

🎯 Want more? Join us for RAG Deep Dive in January/February to explore Azure’s top RAG solutions.

","introduction":"","coverImage":{"__typename":"UploadedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MzU5NjYyLUxCS1IxZQ?revision=1","width":1745,"height":1115},"coverImageProperties":{"__typename":"CoverImageProperties","style":"STANDARD","titlePosition":"BOTTOM","altText":""},"currentRevision":{"__ref":"Revision:revision:4359662_1"},"latestVersion":{"__typename":"FriendlyVersion","major":"1","minor":"0"},"metrics":{"__typename":"MessageMetrics","views":975},"visibilityScope":"PUBLIC","canonicalUrl":null,"seoTitle":null,"seoDescription":null,"placeholder":false,"originalMessageForPlaceholder":null,"contributors":{"__typename":"UserConnection","edges":[]},"nonCoAuthorContributors":{"__typename":"UserConnection","edges":[]},"coAuthors":{"__typename":"UserConnection","edges":[]},"blogMessagePolicies":{"__typename":"BlogMessagePolicies","canDoAuthoringActionsOnBlog":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.blog.action_can_do_authoring_action.accessDenied","key":"error.lithium.policies.blog.action_can_do_authoring_action.accessDenied","args":[]}}},"archivalData":null,"replies":{"__typename":"MessageConnection","edges":[{"__typename":"MessageEdge","cursor":"MjUuMXwyLjF8aXwxMHwxMzI6MHxpbnQsNDM1OTczNSw0MzU5NzM1","node":{"__ref":"BlogReplyMessage:message:4359735"}}],"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"customFields":[],"revisions({\"constraints\":{\"isPublished\":{\"eq\":true}},\"first\":1})":{"__typename":"RevisionConnection","totalCount":1}},"Conversation:conversation:4359662":{"__typename":"Conversation","id":"conversation:4359662","solved":false,"topic":{"__ref":"BlogTopicMessage:message:4359662"},"lastPostingActivityTime":"2024-12-20T08:48:32.078-08:00","lastPostTime":"2024-12-20T08:48:32.078-08:00","unreadReplyCount":1,"isSubscribed":false},"ModerationData:moderation_data:4359662":{"__typename":"ModerationData","id":"moderation_data:4359662","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MzU5NjYyLUxCS1IxZQ?revision=1\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MzU5NjYyLUxCS1IxZQ?revision=1","title":"RAG AI Hack Banner (1).png","associationType":"COVER","width":1745,"height":1115,"altText":""},"Revision:revision:4359662_1":{"__typename":"Revision","id":"revision:4359662_1","lastEditTime":"2024-12-20T05:40:59.915-08:00"},"CachedAsset:theme:customTheme1-1741251530853":{"__typename":"CachedAsset","id":"theme:customTheme1-1741251530853","value":{"id":"customTheme1","animation":{"fast":"150ms","normal":"250ms","slow":"500ms","slowest":"750ms","function":"cubic-bezier(0.07, 0.91, 0.51, 1)","__typename":"AnimationThemeSettings"},"avatar":{"borderRadius":"50%","collections":["default"],"__typename":"AvatarThemeSettings"},"basics":{"browserIcon":{"imageAssetName":"favicon-1730836283320.png","imageLastModified":"1730836286415","__typename":"ThemeAsset"},"customerLogo":{"imageAssetName":"favicon-1730836271365.png","imageLastModified":"1730836274203","__typename":"ThemeAsset"},"maximumWidthOfPageContent":"1300px","oneColumnNarrowWidth":"800px","gridGutterWidthMd":"30px","gridGutterWidthXs":"10px","pageWidthStyle":"WIDTH_OF_BROWSER","__typename":"BasicsThemeSettings"},"buttons":{"borderRadiusSm":"3px","borderRadius":"3px","borderRadiusLg":"5px","paddingY":"5px","paddingYLg":"7px","paddingYHero":"var(--lia-bs-btn-padding-y-lg)","paddingX":"12px","paddingXLg":"16px","paddingXHero":"60px","fontStyle":"NORMAL","fontWeight":"700","textTransform":"NONE","disabledOpacity":0.5,"primaryTextColor":"var(--lia-bs-white)","primaryTextHoverColor":"var(--lia-bs-white)","primaryTextActiveColor":"var(--lia-bs-white)","primaryBgColor":"var(--lia-bs-primary)","primaryBgHoverColor":"hsl(var(--lia-bs-primary-h), var(--lia-bs-primary-s), calc(var(--lia-bs-primary-l) * 0.85))","primaryBgActiveColor":"hsl(var(--lia-bs-primary-h), var(--lia-bs-primary-s), calc(var(--lia-bs-primary-l) * 0.7))","primaryBorder":"1px solid transparent","primaryBorderHover":"1px solid transparent","primaryBorderActive":"1px solid transparent","primaryBorderFocus":"1px solid var(--lia-bs-white)","primaryBoxShadowFocus":"0 0 0 1px var(--lia-bs-primary), 0 0 0 4px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","secondaryTextColor":"var(--lia-bs-gray-900)","secondaryTextHoverColor":"hsl(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), calc(var(--lia-bs-gray-900-l) * 0.95))","secondaryTextActiveColor":"hsl(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), calc(var(--lia-bs-gray-900-l) * 0.9))","secondaryBgColor":"var(--lia-bs-gray-200)","secondaryBgHoverColor":"hsl(var(--lia-bs-gray-200-h), var(--lia-bs-gray-200-s), calc(var(--lia-bs-gray-200-l) * 0.96))","secondaryBgActiveColor":"hsl(var(--lia-bs-gray-200-h), var(--lia-bs-gray-200-s), calc(var(--lia-bs-gray-200-l) * 0.92))","secondaryBorder":"1px solid transparent","secondaryBorderHover":"1px solid transparent","secondaryBorderActive":"1px solid transparent","secondaryBorderFocus":"1px solid transparent","secondaryBoxShadowFocus":"0 0 0 1px var(--lia-bs-primary), 0 0 0 4px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","tertiaryTextColor":"var(--lia-bs-gray-900)","tertiaryTextHoverColor":"hsl(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), calc(var(--lia-bs-gray-900-l) * 0.95))","tertiaryTextActiveColor":"hsl(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), calc(var(--lia-bs-gray-900-l) * 0.9))","tertiaryBgColor":"transparent","tertiaryBgHoverColor":"transparent","tertiaryBgActiveColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.04)","tertiaryBorder":"1px solid transparent","tertiaryBorderHover":"1px solid hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.08)","tertiaryBorderActive":"1px solid transparent","tertiaryBorderFocus":"1px solid transparent","tertiaryBoxShadowFocus":"0 0 0 1px var(--lia-bs-primary), 0 0 0 4px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","destructiveTextColor":"var(--lia-bs-danger)","destructiveTextHoverColor":"hsl(var(--lia-bs-danger-h), var(--lia-bs-danger-s), calc(var(--lia-bs-danger-l) * 0.95))","destructiveTextActiveColor":"hsl(var(--lia-bs-danger-h), var(--lia-bs-danger-s), calc(var(--lia-bs-danger-l) * 0.9))","destructiveBgColor":"var(--lia-bs-gray-200)","destructiveBgHoverColor":"hsl(var(--lia-bs-gray-200-h), var(--lia-bs-gray-200-s), calc(var(--lia-bs-gray-200-l) * 0.96))","destructiveBgActiveColor":"hsl(var(--lia-bs-gray-200-h), var(--lia-bs-gray-200-s), calc(var(--lia-bs-gray-200-l) * 0.92))","destructiveBorder":"1px solid transparent","destructiveBorderHover":"1px solid transparent","destructiveBorderActive":"1px solid transparent","destructiveBorderFocus":"1px solid transparent","destructiveBoxShadowFocus":"0 0 0 1px var(--lia-bs-primary), 0 0 0 4px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","__typename":"ButtonsThemeSettings"},"border":{"color":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.08)","mainContent":"NONE","sideContent":"LIGHT","radiusSm":"3px","radius":"5px","radiusLg":"9px","radius50":"100vw","__typename":"BorderThemeSettings"},"boxShadow":{"xs":"0 0 0 1px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.08), 0 3px 0 -1px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.16)","sm":"0 2px 4px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.12)","md":"0 5px 15px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.3)","lg":"0 10px 30px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.3)","__typename":"BoxShadowThemeSettings"},"cards":{"bgColor":"var(--lia-panel-bg-color)","borderRadius":"var(--lia-panel-border-radius)","boxShadow":"var(--lia-box-shadow-xs)","__typename":"CardsThemeSettings"},"chip":{"maxWidth":"300px","height":"30px","__typename":"ChipThemeSettings"},"coreTypes":{"defaultMessageLinkColor":"var(--lia-bs-link-color)","defaultMessageLinkDecoration":"none","defaultMessageLinkFontStyle":"NORMAL","defaultMessageLinkFontWeight":"400","defaultMessageFontStyle":"NORMAL","defaultMessageFontWeight":"400","forumColor":"#4099E2","forumFontFamily":"var(--lia-bs-font-family-base)","forumFontWeight":"var(--lia-default-message-font-weight)","forumLineHeight":"var(--lia-bs-line-height-base)","forumFontStyle":"var(--lia-default-message-font-style)","forumMessageLinkColor":"var(--lia-default-message-link-color)","forumMessageLinkDecoration":"var(--lia-default-message-link-decoration)","forumMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","forumMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","forumSolvedColor":"#148563","blogColor":"#1CBAA0","blogFontFamily":"var(--lia-bs-font-family-base)","blogFontWeight":"var(--lia-default-message-font-weight)","blogLineHeight":"1.75","blogFontStyle":"var(--lia-default-message-font-style)","blogMessageLinkColor":"var(--lia-default-message-link-color)","blogMessageLinkDecoration":"var(--lia-default-message-link-decoration)","blogMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","blogMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","tkbColor":"#4C6B90","tkbFontFamily":"var(--lia-bs-font-family-base)","tkbFontWeight":"var(--lia-default-message-font-weight)","tkbLineHeight":"1.75","tkbFontStyle":"var(--lia-default-message-font-style)","tkbMessageLinkColor":"var(--lia-default-message-link-color)","tkbMessageLinkDecoration":"var(--lia-default-message-link-decoration)","tkbMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","tkbMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","qandaColor":"#4099E2","qandaFontFamily":"var(--lia-bs-font-family-base)","qandaFontWeight":"var(--lia-default-message-font-weight)","qandaLineHeight":"var(--lia-bs-line-height-base)","qandaFontStyle":"var(--lia-default-message-link-font-style)","qandaMessageLinkColor":"var(--lia-default-message-link-color)","qandaMessageLinkDecoration":"var(--lia-default-message-link-decoration)","qandaMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","qandaMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","qandaSolvedColor":"#3FA023","ideaColor":"#FF8000","ideaFontFamily":"var(--lia-bs-font-family-base)","ideaFontWeight":"var(--lia-default-message-font-weight)","ideaLineHeight":"var(--lia-bs-line-height-base)","ideaFontStyle":"var(--lia-default-message-font-style)","ideaMessageLinkColor":"var(--lia-default-message-link-color)","ideaMessageLinkDecoration":"var(--lia-default-message-link-decoration)","ideaMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","ideaMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","contestColor":"#FCC845","contestFontFamily":"var(--lia-bs-font-family-base)","contestFontWeight":"var(--lia-default-message-font-weight)","contestLineHeight":"var(--lia-bs-line-height-base)","contestFontStyle":"var(--lia-default-message-link-font-style)","contestMessageLinkColor":"var(--lia-default-message-link-color)","contestMessageLinkDecoration":"var(--lia-default-message-link-decoration)","contestMessageLinkFontStyle":"ITALIC","contestMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","occasionColor":"#D13A1F","occasionFontFamily":"var(--lia-bs-font-family-base)","occasionFontWeight":"var(--lia-default-message-font-weight)","occasionLineHeight":"var(--lia-bs-line-height-base)","occasionFontStyle":"var(--lia-default-message-font-style)","occasionMessageLinkColor":"var(--lia-default-message-link-color)","occasionMessageLinkDecoration":"var(--lia-default-message-link-decoration)","occasionMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","occasionMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","grouphubColor":"#333333","categoryColor":"#949494","communityColor":"#FFFFFF","productColor":"#949494","__typename":"CoreTypesThemeSettings"},"colors":{"black":"#000000","white":"#FFFFFF","gray100":"#F7F7F7","gray200":"#F7F7F7","gray300":"#E8E8E8","gray400":"#D9D9D9","gray500":"#CCCCCC","gray600":"#717171","gray700":"#707070","gray800":"#545454","gray900":"#333333","dark":"#545454","light":"#F7F7F7","primary":"#0069D4","secondary":"#333333","bodyText":"#333333","bodyBg":"#FFFFFF","info":"#409AE2","success":"#41C5AE","warning":"#FCC844","danger":"#BC341B","alertSystem":"#FF6600","textMuted":"#707070","highlight":"#FFFCAD","outline":"var(--lia-bs-primary)","custom":["#D3F5A4","#243A5E"],"__typename":"ColorsThemeSettings"},"divider":{"size":"3px","marginLeft":"4px","marginRight":"4px","borderRadius":"50%","bgColor":"var(--lia-bs-gray-600)","bgColorActive":"var(--lia-bs-gray-600)","__typename":"DividerThemeSettings"},"dropdown":{"fontSize":"var(--lia-bs-font-size-sm)","borderColor":"var(--lia-bs-border-color)","borderRadius":"var(--lia-bs-border-radius-sm)","dividerBg":"var(--lia-bs-gray-300)","itemPaddingY":"5px","itemPaddingX":"20px","headerColor":"var(--lia-bs-gray-700)","__typename":"DropdownThemeSettings"},"email":{"link":{"color":"#0069D4","hoverColor":"#0061c2","decoration":"none","hoverDecoration":"underline","__typename":"EmailLinkSettings"},"border":{"color":"#e4e4e4","__typename":"EmailBorderSettings"},"buttons":{"borderRadiusLg":"5px","paddingXLg":"16px","paddingYLg":"7px","fontWeight":"700","primaryTextColor":"#ffffff","primaryTextHoverColor":"#ffffff","primaryBgColor":"#0069D4","primaryBgHoverColor":"#005cb8","primaryBorder":"1px solid transparent","primaryBorderHover":"1px solid transparent","__typename":"EmailButtonsSettings"},"panel":{"borderRadius":"5px","borderColor":"#e4e4e4","__typename":"EmailPanelSettings"},"__typename":"EmailThemeSettings"},"emoji":{"skinToneDefault":"#ffcd43","skinToneLight":"#fae3c5","skinToneMediumLight":"#e2cfa5","skinToneMedium":"#daa478","skinToneMediumDark":"#a78058","skinToneDark":"#5e4d43","__typename":"EmojiThemeSettings"},"heading":{"color":"var(--lia-bs-body-color)","fontFamily":"Segoe UI","fontStyle":"NORMAL","fontWeight":"400","h1FontSize":"34px","h2FontSize":"32px","h3FontSize":"28px","h4FontSize":"24px","h5FontSize":"20px","h6FontSize":"16px","lineHeight":"1.3","subHeaderFontSize":"11px","subHeaderFontWeight":"500","h1LetterSpacing":"normal","h2LetterSpacing":"normal","h3LetterSpacing":"normal","h4LetterSpacing":"normal","h5LetterSpacing":"normal","h6LetterSpacing":"normal","subHeaderLetterSpacing":"2px","h1FontWeight":"var(--lia-bs-headings-font-weight)","h2FontWeight":"var(--lia-bs-headings-font-weight)","h3FontWeight":"var(--lia-bs-headings-font-weight)","h4FontWeight":"var(--lia-bs-headings-font-weight)","h5FontWeight":"var(--lia-bs-headings-font-weight)","h6FontWeight":"var(--lia-bs-headings-font-weight)","__typename":"HeadingThemeSettings"},"icons":{"size10":"10px","size12":"12px","size14":"14px","size16":"16px","size20":"20px","size24":"24px","size30":"30px","size40":"40px","size50":"50px","size60":"60px","size80":"80px","size120":"120px","size160":"160px","__typename":"IconsThemeSettings"},"imagePreview":{"bgColor":"var(--lia-bs-gray-900)","titleColor":"var(--lia-bs-white)","controlColor":"var(--lia-bs-white)","controlBgColor":"var(--lia-bs-gray-800)","__typename":"ImagePreviewThemeSettings"},"input":{"borderColor":"var(--lia-bs-gray-600)","disabledColor":"var(--lia-bs-gray-600)","focusBorderColor":"var(--lia-bs-primary)","labelMarginBottom":"10px","btnFontSize":"var(--lia-bs-font-size-sm)","focusBoxShadow":"0 0 0 3px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","checkLabelMarginBottom":"2px","checkboxBorderRadius":"3px","borderRadiusSm":"var(--lia-bs-border-radius-sm)","borderRadius":"var(--lia-bs-border-radius)","borderRadiusLg":"var(--lia-bs-border-radius-lg)","formTextMarginTop":"4px","textAreaBorderRadius":"var(--lia-bs-border-radius)","activeFillColor":"var(--lia-bs-primary)","__typename":"InputThemeSettings"},"loading":{"dotDarkColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.2)","dotLightColor":"hsla(var(--lia-bs-white-h), var(--lia-bs-white-s), var(--lia-bs-white-l), 0.5)","barDarkColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.06)","barLightColor":"hsla(var(--lia-bs-white-h), var(--lia-bs-white-s), var(--lia-bs-white-l), 0.4)","__typename":"LoadingThemeSettings"},"link":{"color":"var(--lia-bs-primary)","hoverColor":"hsl(var(--lia-bs-primary-h), var(--lia-bs-primary-s), calc(var(--lia-bs-primary-l) - 10%))","decoration":"none","hoverDecoration":"underline","__typename":"LinkThemeSettings"},"listGroup":{"itemPaddingY":"15px","itemPaddingX":"15px","borderColor":"var(--lia-bs-gray-300)","__typename":"ListGroupThemeSettings"},"modal":{"contentTextColor":"var(--lia-bs-body-color)","contentBg":"var(--lia-bs-white)","backgroundBg":"var(--lia-bs-black)","smSize":"440px","mdSize":"760px","lgSize":"1080px","backdropOpacity":0.3,"contentBoxShadowXs":"var(--lia-bs-box-shadow-sm)","contentBoxShadow":"var(--lia-bs-box-shadow)","headerFontWeight":"700","__typename":"ModalThemeSettings"},"navbar":{"position":"FIXED","background":{"attachment":null,"clip":null,"color":"var(--lia-bs-white)","imageAssetName":"","imageLastModified":"0","origin":null,"position":"CENTER_CENTER","repeat":"NO_REPEAT","size":"COVER","__typename":"BackgroundProps"},"backgroundOpacity":0.8,"paddingTop":"15px","paddingBottom":"15px","borderBottom":"1px solid var(--lia-bs-border-color)","boxShadow":"var(--lia-bs-box-shadow-sm)","brandMarginRight":"30px","brandMarginRightSm":"10px","brandLogoHeight":"30px","linkGap":"10px","linkJustifyContent":"flex-start","linkPaddingY":"5px","linkPaddingX":"10px","linkDropdownPaddingY":"9px","linkDropdownPaddingX":"var(--lia-nav-link-px)","linkColor":"var(--lia-bs-body-color)","linkHoverColor":"var(--lia-bs-primary)","linkFontSize":"var(--lia-bs-font-size-sm)","linkFontStyle":"NORMAL","linkFontWeight":"400","linkTextTransform":"NONE","linkLetterSpacing":"normal","linkBorderRadius":"var(--lia-bs-border-radius-sm)","linkBgColor":"transparent","linkBgHoverColor":"transparent","linkBorder":"none","linkBorderHover":"none","linkBoxShadow":"none","linkBoxShadowHover":"none","linkTextBorderBottom":"none","linkTextBorderBottomHover":"none","dropdownPaddingTop":"10px","dropdownPaddingBottom":"15px","dropdownPaddingX":"10px","dropdownMenuOffset":"2px","dropdownDividerMarginTop":"10px","dropdownDividerMarginBottom":"10px","dropdownBorderColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.08)","controllerBgHoverColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.1)","controllerIconColor":"var(--lia-bs-body-color)","controllerIconHoverColor":"var(--lia-bs-body-color)","controllerTextColor":"var(--lia-nav-controller-icon-color)","controllerTextHoverColor":"var(--lia-nav-controller-icon-hover-color)","controllerHighlightColor":"hsla(30, 100%, 50%)","controllerHighlightTextColor":"var(--lia-yiq-light)","controllerBorderRadius":"var(--lia-border-radius-50)","hamburgerColor":"var(--lia-nav-controller-icon-color)","hamburgerHoverColor":"var(--lia-nav-controller-icon-color)","hamburgerBgColor":"transparent","hamburgerBgHoverColor":"transparent","hamburgerBorder":"none","hamburgerBorderHover":"none","collapseMenuMarginLeft":"20px","collapseMenuDividerBg":"var(--lia-nav-link-color)","collapseMenuDividerOpacity":0.16,"__typename":"NavbarThemeSettings"},"pager":{"textColor":"var(--lia-bs-link-color)","textFontWeight":"var(--lia-font-weight-md)","textFontSize":"var(--lia-bs-font-size-sm)","__typename":"PagerThemeSettings"},"panel":{"bgColor":"var(--lia-bs-white)","borderRadius":"var(--lia-bs-border-radius)","borderColor":"var(--lia-bs-border-color)","boxShadow":"none","__typename":"PanelThemeSettings"},"popover":{"arrowHeight":"8px","arrowWidth":"16px","maxWidth":"300px","minWidth":"100px","headerBg":"var(--lia-bs-white)","borderColor":"var(--lia-bs-border-color)","borderRadius":"var(--lia-bs-border-radius)","boxShadow":"0 0.5rem 1rem hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.15)","__typename":"PopoverThemeSettings"},"prism":{"color":"#000000","bgColor":"#f5f2f0","fontFamily":"var(--font-family-monospace)","fontSize":"var(--lia-bs-font-size-base)","fontWeightBold":"var(--lia-bs-font-weight-bold)","fontStyleItalic":"italic","tabSize":2,"highlightColor":"#b3d4fc","commentColor":"#62707e","punctuationColor":"#6f6f6f","namespaceOpacity":"0.7","propColor":"#990055","selectorColor":"#517a00","operatorColor":"#906736","operatorBgColor":"hsla(0, 0%, 100%, 0.5)","keywordColor":"#0076a9","functionColor":"#d3284b","variableColor":"#c14700","__typename":"PrismThemeSettings"},"rte":{"bgColor":"var(--lia-bs-white)","borderRadius":"var(--lia-panel-border-radius)","boxShadow":" var(--lia-panel-box-shadow)","customColor1":"#bfedd2","customColor2":"#fbeeb8","customColor3":"#f8cac6","customColor4":"#eccafa","customColor5":"#c2e0f4","customColor6":"#2dc26b","customColor7":"#f1c40f","customColor8":"#e03e2d","customColor9":"#b96ad9","customColor10":"#3598db","customColor11":"#169179","customColor12":"#e67e23","customColor13":"#ba372a","customColor14":"#843fa1","customColor15":"#236fa1","customColor16":"#ecf0f1","customColor17":"#ced4d9","customColor18":"#95a5a6","customColor19":"#7e8c8d","customColor20":"#34495e","customColor21":"#000000","customColor22":"#ffffff","defaultMessageHeaderMarginTop":"40px","defaultMessageHeaderMarginBottom":"20px","defaultMessageItemMarginTop":"0","defaultMessageItemMarginBottom":"10px","diffAddedColor":"hsla(170, 53%, 51%, 0.4)","diffChangedColor":"hsla(43, 97%, 63%, 0.4)","diffNoneColor":"hsla(0, 0%, 80%, 0.4)","diffRemovedColor":"hsla(9, 74%, 47%, 0.4)","specialMessageHeaderMarginTop":"40px","specialMessageHeaderMarginBottom":"20px","specialMessageItemMarginTop":"0","specialMessageItemMarginBottom":"10px","__typename":"RteThemeSettings"},"tags":{"bgColor":"var(--lia-bs-gray-200)","bgHoverColor":"var(--lia-bs-gray-400)","borderRadius":"var(--lia-bs-border-radius-sm)","color":"var(--lia-bs-body-color)","hoverColor":"var(--lia-bs-body-color)","fontWeight":"var(--lia-font-weight-md)","fontSize":"var(--lia-font-size-xxs)","textTransform":"UPPERCASE","letterSpacing":"0.5px","__typename":"TagsThemeSettings"},"toasts":{"borderRadius":"var(--lia-bs-border-radius)","paddingX":"12px","__typename":"ToastsThemeSettings"},"typography":{"fontFamilyBase":"Segoe UI","fontStyleBase":"NORMAL","fontWeightBase":"400","fontWeightLight":"300","fontWeightNormal":"400","fontWeightMd":"500","fontWeightBold":"700","letterSpacingSm":"normal","letterSpacingXs":"normal","lineHeightBase":"1.5","fontSizeBase":"16px","fontSizeXxs":"11px","fontSizeXs":"12px","fontSizeSm":"14px","fontSizeLg":"20px","fontSizeXl":"24px","smallFontSize":"14px","customFonts":[{"source":"SERVER","name":"Segoe UI","styles":[{"style":"NORMAL","weight":"400","__typename":"FontStyleData"},{"style":"NORMAL","weight":"300","__typename":"FontStyleData"},{"style":"NORMAL","weight":"600","__typename":"FontStyleData"},{"style":"NORMAL","weight":"700","__typename":"FontStyleData"},{"style":"ITALIC","weight":"400","__typename":"FontStyleData"}],"assetNames":["SegoeUI-normal-400.woff2","SegoeUI-normal-300.woff2","SegoeUI-normal-600.woff2","SegoeUI-normal-700.woff2","SegoeUI-italic-400.woff2"],"__typename":"CustomFont"},{"source":"SERVER","name":"MWF Fluent Icons","styles":[{"style":"NORMAL","weight":"400","__typename":"FontStyleData"}],"assetNames":["MWFFluentIcons-normal-400.woff2"],"__typename":"CustomFont"}],"__typename":"TypographyThemeSettings"},"unstyledListItem":{"marginBottomSm":"5px","marginBottomMd":"10px","marginBottomLg":"15px","marginBottomXl":"20px","marginBottomXxl":"25px","__typename":"UnstyledListItemThemeSettings"},"yiq":{"light":"#ffffff","dark":"#000000","__typename":"YiqThemeSettings"},"colorLightness":{"primaryDark":0.36,"primaryLight":0.74,"primaryLighter":0.89,"primaryLightest":0.95,"infoDark":0.39,"infoLight":0.72,"infoLighter":0.85,"infoLightest":0.93,"successDark":0.24,"successLight":0.62,"successLighter":0.8,"successLightest":0.91,"warningDark":0.39,"warningLight":0.68,"warningLighter":0.84,"warningLightest":0.93,"dangerDark":0.41,"dangerLight":0.72,"dangerLighter":0.89,"dangerLightest":0.95,"__typename":"ColorLightnessThemeSettings"},"localOverride":false,"__typename":"Theme"},"localOverride":false},"CachedAsset:text:en_US-components/common/EmailVerification-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/common/EmailVerification-1737115705000","value":{"email.verification.title":"Email Verification Required","email.verification.message.update.email":"To participate in the community, you must first verify your email address. The verification email was sent to {email}. To change your email, visit My Settings.","email.verification.message.resend.email":"To participate in the community, you must first verify your email address. The verification email was sent to {email}. Resend email."},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/common/Loading/LoadingDot-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/common/Loading/LoadingDot-1737115705000","value":{"title":"Loading..."},"localOverride":false},"CachedAsset:quilt:o365.prod:pages/blogs/BlogMessagePage:board:AzureDevCommunityBlog-1741251529060":{"__typename":"CachedAsset","id":"quilt:o365.prod:pages/blogs/BlogMessagePage:board:AzureDevCommunityBlog-1741251529060","value":{"id":"BlogMessagePage","container":{"id":"Common","headerProps":{"backgroundImageProps":null,"backgroundColor":null,"addComponents":null,"removeComponents":["community.widget.bannerWidget"],"componentOrder":null,"__typename":"QuiltContainerSectionProps"},"headerComponentProps":{"community.widget.breadcrumbWidget":{"disableLastCrumbForDesktop":false}},"footerProps":null,"footerComponentProps":null,"items":[{"id":"blog-article","layout":"ONE_COLUMN","bgColor":null,"showTitle":null,"showDescription":null,"textPosition":null,"textColor":null,"sectionEditLevel":"LOCKED","bgImage":null,"disableSpacing":null,"edgeToEdgeDisplay":null,"fullHeight":null,"showBorder":null,"__typename":"OneColumnQuiltSection","columnMap":{"main":[{"id":"blogs.widget.blogArticleWidget","className":"lia-blog-container","props":null,"__typename":"QuiltComponent"}],"__typename":"OneSectionColumns"}},{"id":"section-1729184836777","layout":"MAIN_SIDE","bgColor":"transparent","showTitle":false,"showDescription":false,"textPosition":"CENTER","textColor":"var(--lia-bs-body-color)","sectionEditLevel":null,"bgImage":null,"disableSpacing":null,"edgeToEdgeDisplay":null,"fullHeight":null,"showBorder":null,"__typename":"MainSideQuiltSection","columnMap":{"main":[],"side":[{"id":"custom.widget.Social_Sharing","className":null,"props":{"widgetVisibility":"signedInOrAnonymous","useTitle":true,"useBackground":true,"title":"Share","lazyLoad":false},"__typename":"QuiltComponent"}],"__typename":"MainSideSectionColumns"}}],"__typename":"QuiltContainer"},"__typename":"Quilt","localOverride":false},"localOverride":false},"CachedAsset:text:en_US-pages/blogs/BlogMessagePage-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-pages/blogs/BlogMessagePage-1737115705000","value":{"title":"{contextMessageSubject} | {communityTitle}","errorMissing":"This blog post cannot be found","name":"Blog Message Page","section.blog-article.title":"Blog Post","archivedMessageTitle":"This Content Has Been Archived","section.section-1729184836777.title":"","section.section-1729184836777.description":"","section.CncIde.title":"Blog Post","section.tifEmD.description":"","section.tifEmD.title":""},"localOverride":false},"CachedAsset:quiltWrapper:o365.prod:Common:1741251475455":{"__typename":"CachedAsset","id":"quiltWrapper:o365.prod:Common:1741251475455","value":{"id":"Common","header":{"backgroundImageProps":{"assetName":null,"backgroundSize":"COVER","backgroundRepeat":"NO_REPEAT","backgroundPosition":"CENTER_CENTER","lastModified":null,"__typename":"BackgroundImageProps"},"backgroundColor":"transparent","items":[{"id":"community.widget.navbarWidget","props":{"showUserName":true,"showRegisterLink":true,"useIconLanguagePicker":true,"useLabelLanguagePicker":true,"className":"QuiltComponent_lia-component-edit-mode__0nCcm","links":{"sideLinks":[],"mainLinks":[{"children":[],"linkType":"INTERNAL","id":"gxcuf89792","params":{},"routeName":"CommunityPage"},{"children":[],"linkType":"EXTERNAL","id":"external-link","url":"/Directory","target":"SELF"},{"children":[{"linkType":"INTERNAL","id":"microsoft365","params":{"categoryId":"microsoft365"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"microsoft-teams","params":{"categoryId":"MicrosoftTeams"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"windows","params":{"categoryId":"Windows"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"microsoft-securityand-compliance","params":{"categoryId":"microsoft-security"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"outlook","params":{"categoryId":"Outlook"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"planner","params":{"categoryId":"Planner"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"windows-server","params":{"categoryId":"Windows-Server"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"azure","params":{"categoryId":"Azure"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"exchange","params":{"categoryId":"Exchange"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"microsoft-endpoint-manager","params":{"categoryId":"microsoft-endpoint-manager"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"s-q-l-server","params":{"categoryId":"SQL-Server"},"routeName":"CategoryPage"},{"linkType":"EXTERNAL","id":"external-link-2","url":"/Directory","target":"SELF"}],"linkType":"EXTERNAL","id":"communities","url":"/","target":"BLANK"},{"children":[{"linkType":"INTERNAL","id":"education-sector","params":{"categoryId":"EducationSector"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"a-i","params":{"categoryId":"AI"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"i-t-ops-talk","params":{"categoryId":"ITOpsTalk"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"partner-community","params":{"categoryId":"PartnerCommunity"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"microsoft-mechanics","params":{"categoryId":"MicrosoftMechanics"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"healthcare-and-life-sciences","params":{"categoryId":"HealthcareAndLifeSciences"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"public-sector","params":{"categoryId":"PublicSector"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"io-t","params":{"categoryId":"IoT"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"driving-adoption","params":{"categoryId":"DrivingAdoption"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"s-m-b","params":{"categoryId":"SMB"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"startupsat-microsoft","params":{"categoryId":"StartupsatMicrosoft"},"routeName":"CategoryPage"},{"linkType":"EXTERNAL","id":"external-link-1","url":"/Directory","target":"SELF"}],"linkType":"EXTERNAL","id":"communities-1","url":"/","target":"SELF"},{"children":[],"linkType":"EXTERNAL","id":"external","url":"/Blogs","target":"SELF"},{"children":[],"linkType":"EXTERNAL","id":"external-1","url":"/Events","target":"SELF"},{"children":[{"linkType":"INTERNAL","id":"microsoft-learn-1","params":{"categoryId":"MicrosoftLearn"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"microsoft-learn-blog","params":{"boardId":"MicrosoftLearnBlog","categoryId":"MicrosoftLearn"},"routeName":"BlogBoardPage"},{"linkType":"EXTERNAL","id":"external-10","url":"https://learningroomdirectory.microsoft.com/","target":"BLANK"},{"linkType":"EXTERNAL","id":"external-3","url":"https://docs.microsoft.com/learn/dynamics365/?WT.mc_id=techcom_header-webpage-m365","target":"BLANK"},{"linkType":"EXTERNAL","id":"external-4","url":"https://docs.microsoft.com/learn/m365/?wt.mc_id=techcom_header-webpage-m365","target":"BLANK"},{"linkType":"EXTERNAL","id":"external-5","url":"https://docs.microsoft.com/learn/topics/sci/?wt.mc_id=techcom_header-webpage-m365","target":"BLANK"},{"linkType":"EXTERNAL","id":"external-6","url":"https://docs.microsoft.com/learn/powerplatform/?wt.mc_id=techcom_header-webpage-powerplatform","target":"BLANK"},{"linkType":"EXTERNAL","id":"external-7","url":"https://docs.microsoft.com/learn/github/?wt.mc_id=techcom_header-webpage-github","target":"BLANK"},{"linkType":"EXTERNAL","id":"external-8","url":"https://docs.microsoft.com/learn/teams/?wt.mc_id=techcom_header-webpage-teams","target":"BLANK"},{"linkType":"EXTERNAL","id":"external-9","url":"https://docs.microsoft.com/learn/dotnet/?wt.mc_id=techcom_header-webpage-dotnet","target":"BLANK"},{"linkType":"EXTERNAL","id":"external-2","url":"https://docs.microsoft.com/learn/azure/?WT.mc_id=techcom_header-webpage-m365","target":"BLANK"}],"linkType":"INTERNAL","id":"microsoft-learn","params":{"categoryId":"MicrosoftLearn"},"routeName":"CategoryPage"},{"children":[],"linkType":"INTERNAL","id":"community-info-center","params":{"categoryId":"Community-Info-Center"},"routeName":"CategoryPage"}]},"style":{"boxShadow":"var(--lia-bs-box-shadow-sm)","controllerHighlightColor":"hsla(30, 100%, 50%)","linkFontWeight":"400","dropdownDividerMarginBottom":"10px","hamburgerBorderHover":"none","linkBoxShadowHover":"none","linkFontSize":"14px","backgroundOpacity":0.8,"controllerBorderRadius":"var(--lia-border-radius-50)","hamburgerBgColor":"transparent","hamburgerColor":"var(--lia-nav-controller-icon-color)","linkTextBorderBottom":"none","brandLogoHeight":"30px","linkBgHoverColor":"transparent","linkLetterSpacing":"normal","collapseMenuDividerOpacity":0.16,"dropdownPaddingBottom":"15px","paddingBottom":"15px","dropdownMenuOffset":"2px","hamburgerBgHoverColor":"transparent","borderBottom":"1px solid var(--lia-bs-border-color)","hamburgerBorder":"none","dropdownPaddingX":"10px","brandMarginRightSm":"10px","linkBoxShadow":"none","collapseMenuDividerBg":"var(--lia-nav-link-color)","linkColor":"var(--lia-bs-body-color)","linkJustifyContent":"flex-start","dropdownPaddingTop":"10px","controllerHighlightTextColor":"var(--lia-yiq-dark)","controllerTextColor":"var(--lia-nav-controller-icon-color)","background":{"imageAssetName":"","color":"var(--lia-bs-white)","size":"COVER","repeat":"NO_REPEAT","position":"CENTER_CENTER","imageLastModified":""},"linkBorderRadius":"var(--lia-bs-border-radius-sm)","linkHoverColor":"var(--lia-bs-body-color)","position":"FIXED","linkBorder":"none","linkTextBorderBottomHover":"2px solid var(--lia-bs-body-color)","brandMarginRight":"30px","hamburgerHoverColor":"var(--lia-nav-controller-icon-color)","linkBorderHover":"none","collapseMenuMarginLeft":"20px","linkFontStyle":"NORMAL","controllerTextHoverColor":"var(--lia-nav-controller-icon-hover-color)","linkPaddingX":"10px","linkPaddingY":"5px","paddingTop":"15px","linkTextTransform":"NONE","dropdownBorderColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.08)","controllerBgHoverColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.1)","linkBgColor":"transparent","linkDropdownPaddingX":"var(--lia-nav-link-px)","linkDropdownPaddingY":"9px","controllerIconColor":"var(--lia-bs-body-color)","dropdownDividerMarginTop":"10px","linkGap":"10px","controllerIconHoverColor":"var(--lia-bs-body-color)"},"showSearchIcon":false,"languagePickerStyle":"iconAndLabel"},"__typename":"QuiltComponent"},{"id":"community.widget.breadcrumbWidget","props":{"backgroundColor":"transparent","linkHighlightColor":"var(--lia-bs-primary)","visualEffects":{"showBottomBorder":true},"linkTextColor":"var(--lia-bs-gray-700)"},"__typename":"QuiltComponent"},{"id":"custom.widget.community_banner","props":{"widgetVisibility":"signedInOrAnonymous","useTitle":true,"usePageWidth":false,"useBackground":false,"title":"","lazyLoad":false},"__typename":"QuiltComponent"},{"id":"custom.widget.HeroBanner","props":{"widgetVisibility":"signedInOrAnonymous","usePageWidth":false,"useTitle":true,"cMax_items":3,"useBackground":false,"title":"","lazyLoad":false,"widgetChooser":"custom.widget.HeroBanner"},"__typename":"QuiltComponent"}],"__typename":"QuiltWrapperSection"},"footer":{"backgroundImageProps":{"assetName":null,"backgroundSize":"COVER","backgroundRepeat":"NO_REPEAT","backgroundPosition":"CENTER_CENTER","lastModified":null,"__typename":"BackgroundImageProps"},"backgroundColor":"transparent","items":[{"id":"custom.widget.MicrosoftFooter","props":{"widgetVisibility":"signedInOrAnonymous","useTitle":true,"useBackground":false,"title":"","lazyLoad":false},"__typename":"QuiltComponent"}],"__typename":"QuiltWrapperSection"},"__typename":"QuiltWrapper","localOverride":false},"localOverride":false},"CachedAsset:text:en_US-components/common/ActionFeedback-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/common/ActionFeedback-1737115705000","value":{"joinedGroupHub.title":"Welcome","joinedGroupHub.message":"You are now a member of this group and are subscribed to updates.","groupHubInviteNotFound.title":"Invitation Not Found","groupHubInviteNotFound.message":"Sorry, we could not find your invitation to the group. The owner may have canceled the invite.","groupHubNotFound.title":"Group Not Found","groupHubNotFound.message":"The grouphub you tried to join does not exist. It may have been deleted.","existingGroupHubMember.title":"Already Joined","existingGroupHubMember.message":"You are already a member of this group.","accountLocked.title":"Account Locked","accountLocked.message":"Your account has been locked due to multiple failed attempts. Try again in {lockoutTime} minutes.","editedGroupHub.title":"Changes Saved","editedGroupHub.message":"Your group has been updated.","leftGroupHub.title":"Goodbye","leftGroupHub.message":"You are no longer a member of this group and will not receive future updates.","deletedGroupHub.title":"Deleted","deletedGroupHub.message":"The group has been deleted.","groupHubCreated.title":"Group Created","groupHubCreated.message":"{groupHubName} is ready to use","accountClosed.title":"Account Closed","accountClosed.message":"The account has been closed and you will now be redirected to the homepage","resetTokenExpired.title":"Reset Password Link has Expired","resetTokenExpired.message":"Try resetting your password again","invalidUrl.title":"Invalid URL","invalidUrl.message":"The URL you're using is not recognized. Verify your URL and try again.","accountClosedForUser.title":"Account Closed","accountClosedForUser.message":"{userName}'s account is closed","inviteTokenInvalid.title":"Invitation Invalid","inviteTokenInvalid.message":"Your invitation to the community has been canceled or expired.","inviteTokenError.title":"Invitation Verification Failed","inviteTokenError.message":"The url you are utilizing is not recognized. Verify your URL and try again","pageNotFound.title":"Access Denied","pageNotFound.message":"You do not have access to this area of the community or it doesn't exist","eventAttending.title":"Responded as Attending","eventAttending.message":"You'll be notified when there's new activity and reminded as the event approaches","eventInterested.title":"Responded as Interested","eventInterested.message":"You'll be notified when there's new activity and reminded as the event approaches","eventNotFound.title":"Event Not Found","eventNotFound.message":"The event you tried to respond to does not exist.","redirectToRelatedPage.title":"Showing Related Content","redirectToRelatedPageForBaseUsers.title":"Showing Related Content","redirectToRelatedPageForBaseUsers.message":"The content you are trying to access is archived","redirectToRelatedPage.message":"The content you are trying to access is archived","relatedUrl.archivalLink.flyoutMessage":"The content you are trying to access is archived View Archived Content"},"localOverride":false},"CachedAsset:component:custom.widget.community_banner-en-1741251602833":{"__typename":"CachedAsset","id":"component:custom.widget.community_banner-en-1741251602833","value":{"component":{"id":"custom.widget.community_banner","template":{"id":"community_banner","markupLanguage":"HANDLEBARS","style":".community-banner {\n a.top-bar.btn {\n top: 0px;\n width: 100%;\n z-index: 999;\n text-align: center;\n left: 0px;\n background: #0068b8;\n color: white;\n padding: 10px 0px;\n display:block;\n box-shadow:none !important;\n border: none !important;\n border-radius: none !important;\n margin: 0px !important;\n font-size:14px;\n }\n}","texts":null,"defaults":{"config":{"applicablePages":[],"description":"community announcement text","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"components":[{"id":"custom.widget.community_banner","form":null,"config":null,"props":[],"__typename":"Component"}],"grouping":"CUSTOM","__typename":"ComponentTemplate"},"properties":{"config":{"applicablePages":[],"description":"community announcement text","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"form":null,"__typename":"Component","localOverride":false},"globalCss":{"css":".custom_widget_community_banner_community-banner_1a5zb_1 {\n a.custom_widget_community_banner_top-bar_1a5zb_2.custom_widget_community_banner_btn_1a5zb_2 {\n top: 0;\n width: 100%;\n z-index: 999;\n text-align: center;\n left: 0;\n background: #0068b8;\n color: white;\n padding: 0.625rem 0;\n display:block;\n box-shadow:none !important;\n border: none !important;\n border-radius: none !important;\n margin: 0 !important;\n font-size:0.875rem;\n }\n}","tokens":{"community-banner":"custom_widget_community_banner_community-banner_1a5zb_1","top-bar":"custom_widget_community_banner_top-bar_1a5zb_2","btn":"custom_widget_community_banner_btn_1a5zb_2"}},"form":null},"localOverride":false},"CachedAsset:component:custom.widget.HeroBanner-en-1741251602833":{"__typename":"CachedAsset","id":"component:custom.widget.HeroBanner-en-1741251602833","value":{"component":{"id":"custom.widget.HeroBanner","template":{"id":"HeroBanner","markupLanguage":"REACT","style":null,"texts":{"searchPlaceholderText":"Search this community","followActionText":"Follow","unfollowActionText":"Following","searchOnHoverText":"Please enter your search term(s) and then press return key to complete a search."},"defaults":{"config":{"applicablePages":[],"description":null,"fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[{"id":"max_items","dataType":"NUMBER","list":false,"defaultValue":"3","label":"Max Items","description":"The maximum number of items to display in the carousel","possibleValues":null,"control":"INPUT","__typename":"PropDefinition"}],"__typename":"ComponentProperties"},"components":[{"id":"custom.widget.HeroBanner","form":{"fields":[{"id":"widgetChooser","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"title","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"useTitle","validation":null,"noValidation":null,"dataType":"BOOLEAN","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"useBackground","validation":null,"noValidation":null,"dataType":"BOOLEAN","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"widgetVisibility","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"moreOptions","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"cMax_items","validation":null,"noValidation":null,"dataType":"NUMBER","list":false,"control":"INPUT","defaultValue":"3","label":"Max Items","description":"The maximum number of items to display in the carousel","possibleValues":null,"__typename":"FormField"}],"layout":{"rows":[{"id":"widgetChooserGroup","type":"fieldset","as":null,"items":[{"id":"widgetChooser","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"titleGroup","type":"fieldset","as":null,"items":[{"id":"title","className":null,"__typename":"FormFieldRef"},{"id":"useTitle","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"useBackground","type":"fieldset","as":null,"items":[{"id":"useBackground","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"widgetVisibility","type":"fieldset","as":null,"items":[{"id":"widgetVisibility","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"moreOptionsGroup","type":"fieldset","as":null,"items":[{"id":"moreOptions","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"componentPropsGroup","type":"fieldset","as":null,"items":[{"id":"cMax_items","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"}],"actionButtons":null,"className":"custom_widget_HeroBanner_form","formGroupFieldSeparator":"divider","__typename":"FormLayout"},"__typename":"Form"},"config":null,"props":[],"__typename":"Component"}],"grouping":"CUSTOM","__typename":"ComponentTemplate"},"properties":{"config":{"applicablePages":[],"description":null,"fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[{"id":"max_items","dataType":"NUMBER","list":false,"defaultValue":"3","label":"Max Items","description":"The maximum number of items to display in the carousel","possibleValues":null,"control":"INPUT","__typename":"PropDefinition"}],"__typename":"ComponentProperties"},"form":{"fields":[{"id":"widgetChooser","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"title","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"useTitle","validation":null,"noValidation":null,"dataType":"BOOLEAN","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"useBackground","validation":null,"noValidation":null,"dataType":"BOOLEAN","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"widgetVisibility","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"moreOptions","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"cMax_items","validation":null,"noValidation":null,"dataType":"NUMBER","list":false,"control":"INPUT","defaultValue":"3","label":"Max Items","description":"The maximum number of items to display in the carousel","possibleValues":null,"__typename":"FormField"}],"layout":{"rows":[{"id":"widgetChooserGroup","type":"fieldset","as":null,"items":[{"id":"widgetChooser","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"titleGroup","type":"fieldset","as":null,"items":[{"id":"title","className":null,"__typename":"FormFieldRef"},{"id":"useTitle","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"useBackground","type":"fieldset","as":null,"items":[{"id":"useBackground","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"widgetVisibility","type":"fieldset","as":null,"items":[{"id":"widgetVisibility","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"moreOptionsGroup","type":"fieldset","as":null,"items":[{"id":"moreOptions","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"componentPropsGroup","type":"fieldset","as":null,"items":[{"id":"cMax_items","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"}],"actionButtons":null,"className":"custom_widget_HeroBanner_form","formGroupFieldSeparator":"divider","__typename":"FormLayout"},"__typename":"Form"},"__typename":"Component","localOverride":false},"globalCss":null,"form":{"fields":[{"id":"widgetChooser","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"title","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"useTitle","validation":null,"noValidation":null,"dataType":"BOOLEAN","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"useBackground","validation":null,"noValidation":null,"dataType":"BOOLEAN","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"widgetVisibility","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"moreOptions","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"cMax_items","validation":null,"noValidation":null,"dataType":"NUMBER","list":false,"control":"INPUT","defaultValue":"3","label":"Max Items","description":"The maximum number of items to display in the carousel","possibleValues":null,"__typename":"FormField"}],"layout":{"rows":[{"id":"widgetChooserGroup","type":"fieldset","as":null,"items":[{"id":"widgetChooser","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"titleGroup","type":"fieldset","as":null,"items":[{"id":"title","className":null,"__typename":"FormFieldRef"},{"id":"useTitle","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"useBackground","type":"fieldset","as":null,"items":[{"id":"useBackground","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"widgetVisibility","type":"fieldset","as":null,"items":[{"id":"widgetVisibility","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"moreOptionsGroup","type":"fieldset","as":null,"items":[{"id":"moreOptions","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"componentPropsGroup","type":"fieldset","as":null,"items":[{"id":"cMax_items","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"}],"actionButtons":null,"className":"custom_widget_HeroBanner_form","formGroupFieldSeparator":"divider","__typename":"FormLayout"},"__typename":"Form"}},"localOverride":false},"CachedAsset:component:custom.widget.Social_Sharing-en-1741251602833":{"__typename":"CachedAsset","id":"component:custom.widget.Social_Sharing-en-1741251602833","value":{"component":{"id":"custom.widget.Social_Sharing","template":{"id":"Social_Sharing","markupLanguage":"HANDLEBARS","style":".social-share {\n .sharing-options {\n position: relative;\n margin: 0;\n padding: 0;\n line-height: 10px;\n display: flex;\n justify-content: left;\n gap: 5px;\n list-style-type: none;\n li {\n text-align: left;\n a {\n min-width: 30px;\n min-height: 30px;\n display: block;\n padding: 1px;\n .social-share-linkedin {\n img {\n background-color: rgb(0, 119, 181);\n }\n }\n .social-share-facebook {\n img {\n background-color: rgb(59, 89, 152);\n }\n }\n .social-share-x {\n img {\n background-color: rgb(0, 0, 0);\n }\n }\n .social-share-rss {\n img {\n background-color: rgb(0, 0, 0);\n }\n }\n .social-share-reddit {\n img {\n background-color: rgb(255, 69, 0);\n }\n }\n .social-share-email {\n img {\n background-color: rgb(132, 132, 132);\n }\n }\n }\n a {\n img {\n height: 2rem;\n }\n }\n }\n }\n}\n","texts":null,"defaults":{"config":{"applicablePages":[],"description":"Adds buttons to share to various social media websites","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"components":[{"id":"custom.widget.Social_Sharing","form":null,"config":null,"props":[],"__typename":"Component"}],"grouping":"CUSTOM","__typename":"ComponentTemplate"},"properties":{"config":{"applicablePages":[],"description":"Adds buttons to share to various social media websites","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"form":null,"__typename":"Component","localOverride":false},"globalCss":{"css":".custom_widget_Social_Sharing_social-share_c7xxz_1 {\n .custom_widget_Social_Sharing_sharing-options_c7xxz_2 {\n position: relative;\n margin: 0;\n padding: 0;\n line-height: 0.625rem;\n display: flex;\n justify-content: left;\n gap: 0.3125rem;\n list-style-type: none;\n li {\n text-align: left;\n a {\n min-width: 1.875rem;\n min-height: 1.875rem;\n display: block;\n padding: 0.0625rem;\n .custom_widget_Social_Sharing_social-share-linkedin_c7xxz_18 {\n img {\n background-color: rgb(0, 119, 181);\n }\n }\n .custom_widget_Social_Sharing_social-share-facebook_c7xxz_23 {\n img {\n background-color: rgb(59, 89, 152);\n }\n }\n .custom_widget_Social_Sharing_social-share-x_c7xxz_28 {\n img {\n background-color: rgb(0, 0, 0);\n }\n }\n .custom_widget_Social_Sharing_social-share-rss_c7xxz_33 {\n img {\n background-color: rgb(0, 0, 0);\n }\n }\n .custom_widget_Social_Sharing_social-share-reddit_c7xxz_38 {\n img {\n background-color: rgb(255, 69, 0);\n }\n }\n .custom_widget_Social_Sharing_social-share-email_c7xxz_43 {\n img {\n background-color: rgb(132, 132, 132);\n }\n }\n }\n a {\n img {\n height: 2rem;\n }\n }\n }\n }\n}\n","tokens":{"social-share":"custom_widget_Social_Sharing_social-share_c7xxz_1","sharing-options":"custom_widget_Social_Sharing_sharing-options_c7xxz_2","social-share-linkedin":"custom_widget_Social_Sharing_social-share-linkedin_c7xxz_18","social-share-facebook":"custom_widget_Social_Sharing_social-share-facebook_c7xxz_23","social-share-x":"custom_widget_Social_Sharing_social-share-x_c7xxz_28","social-share-rss":"custom_widget_Social_Sharing_social-share-rss_c7xxz_33","social-share-reddit":"custom_widget_Social_Sharing_social-share-reddit_c7xxz_38","social-share-email":"custom_widget_Social_Sharing_social-share-email_c7xxz_43"}},"form":null},"localOverride":false},"CachedAsset:component:custom.widget.MicrosoftFooter-en-1741251602833":{"__typename":"CachedAsset","id":"component:custom.widget.MicrosoftFooter-en-1741251602833","value":{"component":{"id":"custom.widget.MicrosoftFooter","template":{"id":"MicrosoftFooter","markupLanguage":"HANDLEBARS","style":".context-uhf {\n min-width: 280px;\n font-size: 15px;\n box-sizing: border-box;\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n & *,\n & *:before,\n & *:after {\n box-sizing: inherit;\n }\n a.c-uhff-link {\n color: #616161;\n word-break: break-word;\n text-decoration: none;\n }\n &a:link,\n &a:focus,\n &a:hover,\n &a:active,\n &a:visited {\n text-decoration: none;\n color: inherit;\n }\n & div {\n font-family: 'Segoe UI', SegoeUI, 'Helvetica Neue', Helvetica, Arial, sans-serif;\n }\n}\n.c-uhff {\n background: #f2f2f2;\n margin: -1.5625;\n width: auto;\n height: auto;\n}\n.c-uhff-nav {\n margin: 0 auto;\n max-width: calc(1600px + 10%);\n padding: 0 5%;\n box-sizing: inherit;\n &:before,\n &:after {\n content: ' ';\n display: table;\n clear: left;\n }\n @media only screen and (max-width: 1083px) {\n padding-left: 12px;\n }\n .c-heading-4 {\n color: #616161;\n word-break: break-word;\n font-size: 15px;\n line-height: 20px;\n padding: 36px 0 4px;\n font-weight: 600;\n }\n .c-uhff-nav-row {\n .c-uhff-nav-group {\n display: block;\n float: left;\n min-height: 1px;\n vertical-align: text-top;\n padding: 0 12px;\n width: 100%;\n zoom: 1;\n &:first-child {\n padding-left: 0;\n @media only screen and (max-width: 1083px) {\n padding-left: 12px;\n }\n }\n @media only screen and (min-width: 540px) and (max-width: 1082px) {\n width: 33.33333%;\n }\n @media only screen and (min-width: 1083px) {\n width: 16.6666666667%;\n }\n ul.c-list.f-bare {\n font-size: 11px;\n line-height: 16px;\n margin-top: 0;\n margin-bottom: 0;\n padding-left: 0;\n list-style-type: none;\n li {\n word-break: break-word;\n padding: 8px 0;\n margin: 0;\n }\n }\n }\n }\n}\n.c-uhff-base {\n background: #f2f2f2;\n margin: 0 auto;\n max-width: calc(1600px + 10%);\n padding: 30px 5% 16px;\n &:before,\n &:after {\n content: ' ';\n display: table;\n }\n &:after {\n clear: both;\n }\n a.c-uhff-ccpa {\n font-size: 11px;\n line-height: 16px;\n float: left;\n margin: 3px 0;\n }\n a.c-uhff-ccpa:hover {\n text-decoration: underline;\n }\n ul.c-list {\n font-size: 11px;\n line-height: 16px;\n float: right;\n margin: 3px 0;\n color: #616161;\n li {\n padding: 0 24px 4px 0;\n display: inline-block;\n }\n }\n .c-list.f-bare {\n padding-left: 0;\n list-style-type: none;\n }\n @media only screen and (max-width: 1083px) {\n display: flex;\n flex-wrap: wrap;\n padding: 30px 24px 16px;\n }\n}\n","texts":{"New tab":"What's New","New 1":"Surface Laptop Studio 2","New 2":"Surface Laptop Go 3","New 3":"Surface Pro 9","New 4":"Surface Laptop 5","New 5":"Surface Studio 2+","New 6":"Copilot in Windows","New 7":"Microsoft 365","New 8":"Windows 11 apps","Store tab":"Microsoft Store","Store 1":"Account Profile","Store 2":"Download Center","Store 3":"Microsoft Store Support","Store 4":"Returns","Store 5":"Order tracking","Store 6":"Certified Refurbished","Store 7":"Microsoft Store Promise","Store 8":"Flexible Payments","Education tab":"Education","Edu 1":"Microsoft in education","Edu 2":"Devices for education","Edu 3":"Microsoft Teams for Education","Edu 4":"Microsoft 365 Education","Edu 5":"How to buy for your school","Edu 6":"Educator Training and development","Edu 7":"Deals for students and parents","Edu 8":"Azure for students","Business tab":"Business","Bus 1":"Microsoft Cloud","Bus 2":"Microsoft Security","Bus 3":"Dynamics 365","Bus 4":"Microsoft 365","Bus 5":"Microsoft Power Platform","Bus 6":"Microsoft Teams","Bus 7":"Microsoft Industry","Bus 8":"Small Business","Developer tab":"Developer & IT","Dev 1":"Azure","Dev 2":"Developer Center","Dev 3":"Documentation","Dev 4":"Microsoft Learn","Dev 5":"Microsoft Tech Community","Dev 6":"Azure Marketplace","Dev 7":"AppSource","Dev 8":"Visual Studio","Company tab":"Company","Com 1":"Careers","Com 2":"About Microsoft","Com 3":"Company News","Com 4":"Privacy at Microsoft","Com 5":"Investors","Com 6":"Diversity and inclusion","Com 7":"Accessiblity","Com 8":"Sustainibility"},"defaults":{"config":{"applicablePages":[],"description":"The Microsoft Footer","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"components":[{"id":"custom.widget.MicrosoftFooter","form":null,"config":null,"props":[],"__typename":"Component"}],"grouping":"CUSTOM","__typename":"ComponentTemplate"},"properties":{"config":{"applicablePages":[],"description":"The Microsoft Footer","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"form":null,"__typename":"Component","localOverride":false},"globalCss":{"css":".custom_widget_MicrosoftFooter_context-uhf_f95yq_1 {\n min-width: 17.5rem;\n font-size: 0.9375rem;\n box-sizing: border-box;\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n & *,\n & *:before,\n & *:after {\n box-sizing: inherit;\n }\n a.custom_widget_MicrosoftFooter_c-uhff-link_f95yq_12 {\n color: #616161;\n word-break: break-word;\n text-decoration: none;\n }\n &a:link,\n &a:focus,\n &a:hover,\n &a:active,\n &a:visited {\n text-decoration: none;\n color: inherit;\n }\n & div {\n font-family: 'Segoe UI', SegoeUI, 'Helvetica Neue', Helvetica, Arial, sans-serif;\n }\n}\n.custom_widget_MicrosoftFooter_c-uhff_f95yq_12 {\n background: #f2f2f2;\n margin: -1.5625;\n width: auto;\n height: auto;\n}\n.custom_widget_MicrosoftFooter_c-uhff-nav_f95yq_35 {\n margin: 0 auto;\n max-width: calc(100rem + 10%);\n padding: 0 5%;\n box-sizing: inherit;\n &:before,\n &:after {\n content: ' ';\n display: table;\n clear: left;\n }\n @media only screen and (max-width: 1083px) {\n padding-left: 0.75rem;\n }\n .custom_widget_MicrosoftFooter_c-heading-4_f95yq_49 {\n color: #616161;\n word-break: break-word;\n font-size: 0.9375rem;\n line-height: 1.25rem;\n padding: 2.25rem 0 0.25rem;\n font-weight: 600;\n }\n .custom_widget_MicrosoftFooter_c-uhff-nav-row_f95yq_57 {\n .custom_widget_MicrosoftFooter_c-uhff-nav-group_f95yq_58 {\n display: block;\n float: left;\n min-height: 0.0625rem;\n vertical-align: text-top;\n padding: 0 0.75rem;\n width: 100%;\n zoom: 1;\n &:first-child {\n padding-left: 0;\n @media only screen and (max-width: 1083px) {\n padding-left: 0.75rem;\n }\n }\n @media only screen and (min-width: 540px) and (max-width: 1082px) {\n width: 33.33333%;\n }\n @media only screen and (min-width: 1083px) {\n width: 16.6666666667%;\n }\n ul.custom_widget_MicrosoftFooter_c-list_f95yq_78.custom_widget_MicrosoftFooter_f-bare_f95yq_78 {\n font-size: 0.6875rem;\n line-height: 1rem;\n margin-top: 0;\n margin-bottom: 0;\n padding-left: 0;\n list-style-type: none;\n li {\n word-break: break-word;\n padding: 0.5rem 0;\n margin: 0;\n }\n }\n }\n }\n}\n.custom_widget_MicrosoftFooter_c-uhff-base_f95yq_94 {\n background: #f2f2f2;\n margin: 0 auto;\n max-width: calc(100rem + 10%);\n padding: 1.875rem 5% 1rem;\n &:before,\n &:after {\n content: ' ';\n display: table;\n }\n &:after {\n clear: both;\n }\n a.custom_widget_MicrosoftFooter_c-uhff-ccpa_f95yq_107 {\n font-size: 0.6875rem;\n line-height: 1rem;\n float: left;\n margin: 0.1875rem 0;\n }\n a.custom_widget_MicrosoftFooter_c-uhff-ccpa_f95yq_107:hover {\n text-decoration: underline;\n }\n ul.custom_widget_MicrosoftFooter_c-list_f95yq_78 {\n font-size: 0.6875rem;\n line-height: 1rem;\n float: right;\n margin: 0.1875rem 0;\n color: #616161;\n li {\n padding: 0 1.5rem 0.25rem 0;\n display: inline-block;\n }\n }\n .custom_widget_MicrosoftFooter_c-list_f95yq_78.custom_widget_MicrosoftFooter_f-bare_f95yq_78 {\n padding-left: 0;\n list-style-type: none;\n }\n @media only screen and (max-width: 1083px) {\n display: flex;\n flex-wrap: wrap;\n padding: 1.875rem 1.5rem 1rem;\n }\n}\n","tokens":{"context-uhf":"custom_widget_MicrosoftFooter_context-uhf_f95yq_1","c-uhff-link":"custom_widget_MicrosoftFooter_c-uhff-link_f95yq_12","c-uhff":"custom_widget_MicrosoftFooter_c-uhff_f95yq_12","c-uhff-nav":"custom_widget_MicrosoftFooter_c-uhff-nav_f95yq_35","c-heading-4":"custom_widget_MicrosoftFooter_c-heading-4_f95yq_49","c-uhff-nav-row":"custom_widget_MicrosoftFooter_c-uhff-nav-row_f95yq_57","c-uhff-nav-group":"custom_widget_MicrosoftFooter_c-uhff-nav-group_f95yq_58","c-list":"custom_widget_MicrosoftFooter_c-list_f95yq_78","f-bare":"custom_widget_MicrosoftFooter_f-bare_f95yq_78","c-uhff-base":"custom_widget_MicrosoftFooter_c-uhff-base_f95yq_94","c-uhff-ccpa":"custom_widget_MicrosoftFooter_c-uhff-ccpa_f95yq_107"}},"form":null},"localOverride":false},"CachedAsset:text:en_US-components/community/Breadcrumb-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/community/Breadcrumb-1737115705000","value":{"navLabel":"Breadcrumbs","dropdown":"Additional parent page navigation"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageBanner-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageBanner-1737115705000","value":{"messageMarkedAsSpam":"This post has been marked as spam","messageMarkedAsSpam@board:TKB":"This article has been marked as spam","messageMarkedAsSpam@board:BLOG":"This post has been marked as spam","messageMarkedAsSpam@board:FORUM":"This discussion has been marked as spam","messageMarkedAsSpam@board:OCCASION":"This event has been marked as spam","messageMarkedAsSpam@board:IDEA":"This idea has been marked as spam","manageSpam":"Manage Spam","messageMarkedAsAbuse":"This post has been marked as abuse","messageMarkedAsAbuse@board:TKB":"This article has been marked as abuse","messageMarkedAsAbuse@board:BLOG":"This post has been marked as abuse","messageMarkedAsAbuse@board:FORUM":"This discussion has been marked as abuse","messageMarkedAsAbuse@board:OCCASION":"This event has been marked as abuse","messageMarkedAsAbuse@board:IDEA":"This idea has been marked as abuse","preModCommentAuthorText":"This comment will be published as soon as it is approved","preModCommentModeratorText":"This comment is awaiting moderation","messageMarkedAsOther":"This post has been rejected due to other reasons","messageMarkedAsOther@board:TKB":"This article has been rejected due to other reasons","messageMarkedAsOther@board:BLOG":"This post has been rejected due to other reasons","messageMarkedAsOther@board:FORUM":"This discussion has been rejected due to other reasons","messageMarkedAsOther@board:OCCASION":"This event has been rejected due to other reasons","messageMarkedAsOther@board:IDEA":"This idea has been rejected due to other reasons","messageArchived":"This post was archived on {date}","relatedUrl":"View Related Content","relatedContentText":"Showing related content","archivedContentLink":"View Archived Content"},"localOverride":false},"Category:category:Exchange":{"__typename":"Category","id":"category:Exchange","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:Planner":{"__typename":"Category","id":"category:Planner","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:Outlook":{"__typename":"Category","id":"category:Outlook","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:Community-Info-Center":{"__typename":"Category","id":"category:Community-Info-Center","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:EducationSector":{"__typename":"Category","id":"category:EducationSector","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:DrivingAdoption":{"__typename":"Category","id":"category:DrivingAdoption","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:Windows-Server":{"__typename":"Category","id":"category:Windows-Server","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:SQL-Server":{"__typename":"Category","id":"category:SQL-Server","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:MicrosoftTeams":{"__typename":"Category","id":"category:MicrosoftTeams","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:PublicSector":{"__typename":"Category","id":"category:PublicSector","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:microsoft365":{"__typename":"Category","id":"category:microsoft365","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:IoT":{"__typename":"Category","id":"category:IoT","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:HealthcareAndLifeSciences":{"__typename":"Category","id":"category:HealthcareAndLifeSciences","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:SMB":{"__typename":"Category","id":"category:SMB","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:ITOpsTalk":{"__typename":"Category","id":"category:ITOpsTalk","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:microsoft-endpoint-manager":{"__typename":"Category","id":"category:microsoft-endpoint-manager","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:MicrosoftLearn":{"__typename":"Category","id":"category:MicrosoftLearn","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Blog:board:MicrosoftLearnBlog":{"__typename":"Blog","id":"board:MicrosoftLearnBlog","blogPolicies":{"__typename":"BlogPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"boardPolicies":{"__typename":"BoardPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:AI":{"__typename":"Category","id":"category:AI","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:MicrosoftMechanics":{"__typename":"Category","id":"category:MicrosoftMechanics","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:StartupsatMicrosoft":{"__typename":"Category","id":"category:StartupsatMicrosoft","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:PartnerCommunity":{"__typename":"Category","id":"category:PartnerCommunity","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:Windows":{"__typename":"Category","id":"category:Windows","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:microsoft-security":{"__typename":"Category","id":"category:microsoft-security","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"QueryVariables:TopicReplyList:message:4359662:1":{"__typename":"QueryVariables","id":"TopicReplyList:message:4359662:1","value":{"id":"message:4359662","first":10,"sorts":{"postTime":{"direction":"DESC"}},"repliesFirst":3,"repliesFirstDepthThree":1,"repliesSorts":{"postTime":{"direction":"DESC"}},"useAvatar":true,"useAuthorLogin":true,"useAuthorRank":true,"useBody":true,"useKudosCount":true,"useTimeToRead":false,"useMedia":false,"useReadOnlyIcon":false,"useRepliesCount":true,"useSearchSnippet":false,"useAcceptedSolutionButton":false,"useSolvedBadge":false,"useAttachments":false,"attachmentsFirst":5,"useTags":true,"useNodeAncestors":false,"useUserHoverCard":false,"useNodeHoverCard":false,"useModerationStatus":true,"usePreviewSubjectModal":false,"useMessageStatus":true}},"ROOT_MUTATION":{"__typename":"Mutation"},"CachedAsset:text:en_US-components/community/Navbar-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/community/Navbar-1737115705000","value":{"community":"Community Home","inbox":"Inbox","manageContent":"Manage Content","tos":"Terms of Service","forgotPassword":"Forgot Password","themeEditor":"Theme Editor","edit":"Edit Navigation Bar","skipContent":"Skip to content","gxcuf89792":"Tech Community","external-1":"Events","s-m-b":"Small and Medium Businesses","windows-server":"Windows Server","education-sector":"Education Sector","driving-adoption":"Driving Adoption","microsoft-learn":"Microsoft Learn","s-q-l-server":"SQL Server","partner-community":"Microsoft Partner Community","microsoft365":"Microsoft 365","external-9":".NET","external-8":"Teams","external-7":"Github","products-services":"Products","external-6":"Power Platform","communities-1":"Topics","external-5":"Microsoft Security","planner":"Planner","external-4":"Microsoft 365","external-3":"Dynamics 365","azure":"Azure","healthcare-and-life-sciences":"Healthcare and Life Sciences","external-2":"Azure","microsoft-mechanics":"Microsoft Mechanics","microsoft-learn-1":"Community","external-10":"Learning Room Directory","microsoft-learn-blog":"Blog","windows":"Windows","i-t-ops-talk":"ITOps Talk","external-link-1":"View All","microsoft-securityand-compliance":"Microsoft Security","public-sector":"Public Sector","community-info-center":"Lounge","external-link-2":"View All","microsoft-teams":"Microsoft Teams","external":"Blogs","microsoft-endpoint-manager":"Microsoft Intune and Configuration Manager","startupsat-microsoft":"Startups at Microsoft","exchange":"Exchange","a-i":"AI and Machine Learning","io-t":"Internet of Things (IoT)","outlook":"Outlook","external-link":"Community Hubs","communities":"Products"},"localOverride":false},"CachedAsset:text:en_US-components/community/NavbarHamburgerDropdown-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/community/NavbarHamburgerDropdown-1737115705000","value":{"hamburgerLabel":"Side Menu"},"localOverride":false},"CachedAsset:text:en_US-components/community/BrandLogo-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/community/BrandLogo-1737115705000","value":{"logoAlt":"Khoros","themeLogoAlt":"Brand Logo"},"localOverride":false},"CachedAsset:text:en_US-components/community/NavbarTextLinks-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/community/NavbarTextLinks-1737115705000","value":{"more":"More"},"localOverride":false},"CachedAsset:text:en_US-components/authentication/AuthenticationLink-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/authentication/AuthenticationLink-1737115705000","value":{"title.login":"Sign In","title.registration":"Register","title.forgotPassword":"Forgot Password","title.multiAuthLogin":"Sign In"},"localOverride":false},"CachedAsset:text:en_US-components/nodes/NodeLink-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/nodes/NodeLink-1737115705000","value":{"place":"Place {name}"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageView/MessageViewStandard-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageView/MessageViewStandard-1737115705000","value":{"anonymous":"Anonymous","author":"{messageAuthorLogin}","authorBy":"{messageAuthorLogin}","board":"{messageBoardTitle}","replyToUser":" to {parentAuthor}","showMoreReplies":"Show More","replyText":"Reply","repliesText":"Replies","markedAsSolved":"Marked as Solved","movedMessagePlaceholder.BLOG":"{count, plural, =0 {This comment has been} other {These comments have been} }","movedMessagePlaceholder.TKB":"{count, plural, =0 {This comment has been} other {These comments have been} }","movedMessagePlaceholder.FORUM":"{count, plural, =0 {This reply has been} other {These replies have been} }","movedMessagePlaceholder.IDEA":"{count, plural, =0 {This comment has been} other {These comments have been} }","movedMessagePlaceholder.OCCASION":"{count, plural, =0 {This comment has been} other {These comments have been} }","movedMessagePlaceholderUrlText":"moved.","messageStatus":"Status: ","statusChanged":"Status changed: {previousStatus} to {currentStatus}","statusAdded":"Status added: {status}","statusRemoved":"Status removed: {status}","labelExpand":"expand replies","labelCollapse":"collapse replies","unhelpfulReason.reason1":"Content is outdated","unhelpfulReason.reason2":"Article is missing information","unhelpfulReason.reason3":"Content is for a different Product","unhelpfulReason.reason4":"Doesn't match what I was searching for"},"localOverride":false},"CachedAsset:text:en_US-components/messages/ThreadedReplyList-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/ThreadedReplyList-1737115705000","value":{"title":"{count, plural, one{# Reply} other{# Replies}}","title@board:BLOG":"{count, plural, one{# Comment} other{# Comments}}","title@board:TKB":"{count, plural, one{# Comment} other{# Comments}}","title@board:IDEA":"{count, plural, one{# Comment} other{# Comments}}","title@board:OCCASION":"{count, plural, one{# Comment} other{# Comments}}","noRepliesTitle":"No Replies","noRepliesTitle@board:BLOG":"No Comments","noRepliesTitle@board:TKB":"No Comments","noRepliesTitle@board:IDEA":"No Comments","noRepliesTitle@board:OCCASION":"No Comments","noRepliesDescription":"Be the first to reply","noRepliesDescription@board:BLOG":"Be the first to comment","noRepliesDescription@board:TKB":"Be the first to comment","noRepliesDescription@board:IDEA":"Be the first to comment","noRepliesDescription@board:OCCASION":"Be the first to comment","messageReadOnlyAlert:BLOG":"Comments have been turned off for this post","messageReadOnlyAlert:TKB":"Comments have been turned off for this article","messageReadOnlyAlert:IDEA":"Comments have been turned off for this idea","messageReadOnlyAlert:FORUM":"Replies have been turned off for this discussion","messageReadOnlyAlert:OCCASION":"Comments have been turned off for this event"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageReplyCallToAction-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageReplyCallToAction-1737115705000","value":{"leaveReply":"Leave a reply...","leaveReply@board:BLOG@message:root":"Leave a comment...","leaveReply@board:TKB@message:root":"Leave a comment...","leaveReply@board:IDEA@message:root":"Leave a comment...","leaveReply@board:OCCASION@message:root":"Leave a comment...","repliesTurnedOff.FORUM":"Replies are turned off for this topic","repliesTurnedOff.BLOG":"Comments are turned off for this topic","repliesTurnedOff.TKB":"Comments are turned off for this topic","repliesTurnedOff.IDEA":"Comments are turned off for this topic","repliesTurnedOff.OCCASION":"Comments are turned off for this topic","infoText":"Stop poking me!"},"localOverride":false},"Rank:rank:35":{"__typename":"Rank","id":"rank:35","position":16,"name":"Iron Contributor","color":"333333","icon":null,"rankStyle":"TEXT"},"User:user:443104":{"__typename":"User","id":"user:443104","uid":443104,"login":"edchuy","biography":null,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2019-11-04T15:21:53.220-08:00"},"deleted":false,"email":"","avatar":{"__typename":"UserAvatar","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/m_assets/avatars/default/avatar-3.svg?time=0"},"rank":{"__ref":"Rank:rank:35"},"entityType":"USER","eventPath":"community:gxcuf89792/user:443104"},"ModerationData:moderation_data:4359735":{"__typename":"ModerationData","id":"moderation_data:4359735","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":"member"},"BlogReplyMessage:message:4359735":{"__typename":"BlogReplyMessage","author":{"__ref":"User:user:443104"},"id":"message:4359735","revisionNum":1,"uid":4359735,"depth":1,"hasGivenKudo":false,"subscribed":false,"board":{"__ref":"Blog:board:AzureDevCommunityBlog"},"parent":{"__ref":"BlogTopicMessage:message:4359662"},"conversation":{"__ref":"Conversation:conversation:4359662"},"subject":"Re: RAGHack 2024: Recordings and slides!","moderationData":{"__ref":"ModerationData:moderation_data:4359735"},"body":"

Interesting to note that that during the event, Phi-3 was the most recent one available. Now, it's Phi-4. I assume the difference in doing things between the models will be that great, right?

","body@stripHtml({\"removeProcessingText\":false,\"removeSpoilerMarkup\":false,\"removeTocMarkup\":false,\"truncateLength\":200})@stringLength":"193","kudosSumWeight":1,"repliesCount":0,"postTime":"2024-12-20T08:48:32.078-08:00","lastPublishTime":"2024-12-20T08:48:32.078-08:00","metrics":{"__typename":"MessageMetrics","views":78},"visibilityScope":"PUBLIC","placeholder":false,"originalMessageForPlaceholder":null,"entityType":"BLOG_REPLY","eventPath":"category:Azure/category:products-services/category:communities/community:gxcuf89792board:AzureDevCommunityBlog/message:4359662/message:4359735","replies":{"__typename":"MessageConnection","pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null},"edges":[]},"customFields":[],"attachments":{"__typename":"AttachmentConnection","edges":[],"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}}},"CachedAsset:text:en_US-components/community/NavbarDropdownToggle-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/community/NavbarDropdownToggle-1737115705000","value":{"ariaLabelClosed":"Press the down arrow to open the menu"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/common/QueryHandler-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/common/QueryHandler-1737115705000","value":{"title":"Query Handler"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageCoverImage-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageCoverImage-1737115705000","value":{"coverImageTitle":"Cover Image"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/nodes/NodeTitle-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/nodes/NodeTitle-1737115705000","value":{"nodeTitle":"{nodeTitle, select, community {Community} other {{nodeTitle}}} "},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageTimeToRead-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageTimeToRead-1737115705000","value":{"minReadText":"{min} MIN READ"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageSubject-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageSubject-1737115705000","value":{"noSubject":"(no subject)"},"localOverride":false},"CachedAsset:text:en_US-components/users/UserLink-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/users/UserLink-1737115705000","value":{"authorName":"View Profile: {author}","anonymous":"Anonymous"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/users/UserRank-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/users/UserRank-1737115705000","value":{"rankName":"{rankName}","userRank":"Author rank {rankName}"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageTime-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageTime-1737115705000","value":{"postTime":"Published: {time}","lastPublishTime":"Last Update: {time}","conversation.lastPostingActivityTime":"Last posting activity time: {time}","conversation.lastPostTime":"Last post time: {time}","moderationData.rejectTime":"Rejected time: {time}"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageBody-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageBody-1737115705000","value":{"showMessageBody":"Show More","mentionsErrorTitle":"{mentionsType, select, board {Board} user {User} message {Message} other {}} No Longer Available","mentionsErrorMessage":"The {mentionsType} you are trying to view has been removed from the community.","videoProcessing":"Video is being processed. Please try again in a few minutes.","bannerTitle":"Video provider requires cookies to play the video. Accept to continue or {url} it directly on the provider's site.","buttonTitle":"Accept","urlText":"watch"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageCustomFields-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageCustomFields-1737115705000","value":{"CustomField.default.label":"Value of {name}"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageRevision-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageRevision-1737115705000","value":{"lastUpdatedDatePublished":"{publishCount, plural, one{Published} other{Updated}} {date}","lastUpdatedDateDraft":"Created {date}","version":"Version {major}.{minor}"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageReplyButton-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageReplyButton-1737115705000","value":{"repliesCount":"{count}","title":"Reply","title@board:BLOG@message:root":"Comment","title@board:TKB@message:root":"Comment","title@board:IDEA@message:root":"Comment","title@board:OCCASION@message:root":"Comment"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageAuthorBio-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageAuthorBio-1737115705000","value":{"sendMessage":"Send Message","actionMessage":"Follow this blog board to get notified when there's new activity","coAuthor":"CO-PUBLISHER","contributor":"CONTRIBUTOR","userProfile":"View Profile","iconlink":"Go to {name} {type}"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/users/UserAvatar-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/users/UserAvatar-1737115705000","value":{"altText":"{login}'s avatar","altTextGeneric":"User's avatar"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/ranks/UserRankLabel-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/ranks/UserRankLabel-1737115705000","value":{"altTitle":"Icon for {rankName} rank"},"localOverride":false},"CachedAsset:text:en_US-components/users/UserRegistrationDate-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-components/users/UserRegistrationDate-1737115705000","value":{"noPrefix":"{date}","withPrefix":"Joined {date}"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/nodes/NodeAvatar-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/nodes/NodeAvatar-1737115705000","value":{"altTitle":"Node avatar for {nodeTitle}"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/nodes/NodeDescription-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/nodes/NodeDescription-1737115705000","value":{"description":"{description}"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/nodes/NodeIcon-1737115705000":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/nodes/NodeIcon-1737115705000","value":{"contentType":"Content Type {style, select, FORUM {Forum} BLOG {Blog} TKB {Knowledge Base} IDEA {Ideas} OCCASION {Events} other {}} icon"},"localOverride":false}}}},"page":"/blogs/BlogMessagePage/BlogMessagePage","query":{"boardId":"azuredevcommunityblog","messageSubject":"raghack-2024-recordings-and-slides","messageId":"4359662"},"buildId":"rBSXYkarBGCCgv-Fy0Q8w","runtimeConfig":{"buildInformationVisible":false,"logLevelApp":"info","logLevelMetrics":"info","openTelemetryClientEnabled":false,"openTelemetryConfigName":"o365","openTelemetryServiceVersion":"25.1.0","openTelemetryUniverse":"prod","openTelemetryCollector":"http://localhost:4318","openTelemetryRouteChangeAllowedTime":"5000","apolloDevToolsEnabled":false,"inboxMuteWipFeatureEnabled":false},"isFallback":false,"isExperimentalCompile":false,"dynamicIds":["./components/community/Navbar/NavbarWidget.tsx","./components/community/Breadcrumb/BreadcrumbWidget.tsx","./components/customComponent/CustomComponent/CustomComponent.tsx","./components/blogs/BlogArticleWidget/BlogArticleWidget.tsx","./components/external/components/ExternalComponent.tsx","./components/messages/MessageView/MessageViewStandard/MessageViewStandard.tsx","./components/messages/ThreadedReplyList/ThreadedReplyList.tsx","../shared/client/components/common/List/UnstyledList/UnstyledList.tsx","./components/messages/MessageView/MessageView.tsx"],"appGip":true,"scriptLoader":[{"id":"analytics","src":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/pagescripts/1729284608000/analytics.js?page.id=BlogMessagePage&entity.id=board%3Aazuredevcommunityblog&entity.id=message%3A4359662","strategy":"afterInteractive"}]}