// the find
microsoft/sample-app-aoai-chatGPT
Sample code for a simple web chat experience through Azure OpenAI, including Azure OpenAI On Your Data.
A Microsoft-maintained reference implementation for a RAG chat app using Azure OpenAI and Azure AI Search. It's a Flask backend with a React frontend, wired to 'Azure OpenAI on Your Data' — essentially a thin wrapper around that feature with optional CosmosDB chat history. Aimed at enterprises that want a starting point for internal document Q&A, not a general-purpose chat framework.
Solid multi-datasource abstraction: switching between Azure AI Search, CosmosDB Mongo vCore, Elasticsearch, Pinecone, and MongoDB is config-only, no code changes. Entra ID / managed identity path is well-documented and production-appropriate — you can avoid hardcoding API keys entirely. The Bicep infra is real and complete, not a placeholder. CI/CD workflows, Docker support, and AZD integration mean you can go from clone to deployed Azure environment in one command.
It's deeply tied to the 'Azure OpenAI on Your Data' API feature, which means Microsoft controls the RAG logic — you can't tune chunking, reranking, or retrieval without forking the backend and reimplementing that layer yourself. The frontend is a compiled static bundle checked into the repo (`static/assets/index-8a2d939c.js`), which is a maintenance trap: anyone who forks this and doesn't rebuild the frontend ships stale JS. Settings sprawl is real — over 60 environment variables documented across datasources with no validation layer, so misconfiguration is silent until runtime. The 'preview' label on several datasources (Elasticsearch, Pinecone, Azure SQL) means API contracts can break without notice.