This repository is a modular Retrieval-Augmented Generation (RAG) demo built with C#, Semantic Kernel, Azure OpenAI, and Azure Functions. It demonstrates a modern, agent-based approach to conversational AI, project ingestion, and hybrid search using Azure AI Search.
- Backend/ β Contains all backend projects for the solution:
- AIServices/ β Core AI logic, agent orchestration, and service interfaces (see AIServices README)
- RagChatBotAPI/ β Azure Function API for chat, powered by Semantic Kernel and agents (see RagChatBotAPI README)
- DocumentIngestion/ β Azure Function for bulk project ingestion and embedding generation (see DocumentIngestion README)
- Shared/ β DTOs and interfaces shared across projects (see Shared README)
- docs/ β Example project data for ingestion
- Retrieval-Augmented Generation (RAG): Combines LLMs with project/document search for grounded, context-aware answers
- Semantic Kernel: Orchestrates LLM calls and agent workflows
- Agent Architecture: Modular agents for classification, response, and coordination
- Azure OpenAI: Used for both embeddings and completions
- Azure AI Search (pluggable): Ready for hybrid search scenarios
- Each project contains its own detailed README with setup, configuration, and usage instructions.
- Start with the AIServices README for an overview of the agent and service architecture.
- Use the RagChatBotAPI README to run the chat API.
- Use the DocumentIngestion README to ingest project data for search.
- C# (.NET 8)
- Azure Functions (Isolated Worker)
- Semantic Kernel
- Azure OpenAI
- Azure AI Search (pluggable)
MIT