Azure-Samples/chat-with-your-data-solution-accelerator
A Solution Accelerator for the RAG pattern running in Azure, using Azure AI Search for retrieval and Azure OpenAI large language models to power ChatGPT-style and Q&A experiences. This includes most common requirements and best practices.
What it solves
Organizations often struggle to search through vast amounts of unstructured knowledge—such as contracts, policies, and product manuals—to find specific answers. This project provides a conversational assistant that indexes these documents and allows users to ask questions in natural language, receiving grounded answers with inline citations to the source material.
How it works
The system uses a RAG (Retrieval-Augmented Generation) pipeline deployed on Azure Container Apps. It consists of a React frontend, a FastAPI backend, and an Azure Functions ingestion worker.
- Ingestion: Documents or web pages are parsed, chunked, embedded, and stored in a retrieval index (either Azure AI Search with Cosmos DB or PostgreSQL with pgvector).
- Retrieval: When a user asks a question, the backend retrieves the most relevant passages from the index.
- Generation: A language model is grounded on this context to generate a response, which is then streamed to the user with citations.
Who it’s for
This solution is designed for organizations needing to automate knowledge retrieval for roles such as legal professionals (contract review), HR professionals (policy assistance), and customer success managers (customer intelligence).
Highlights
- Flexible Storage: Supports either Azure AI Search with Cosmos DB or PostgreSQL with pgvector as the retrieval engine.
- Interchangeable Orchestrators: Allows selection between Agent Framework or LangGraph at deploy time.
- Admin Experience: Includes a UI to ingest data and configure prompts without writing code.
- Security: Uses a single user-assigned managed identity and Azure RBAC for authorization, eliminating the need for application secrets.
- Accessibility: Features voice input via speech-to-text and a reasoning panel to show the model's intermediate steps.
Related
- Project
- Project
- Project
- Project
- Project