This is a Generative AI-powered chatbot application built with Azure OpenAI, FastAPI, Streamlit, and Azure Cognitive Search. It allows users to ask questions related to Azure OpenAI based on the official Microsoft documentation.
- ✅ Natural language question answering
- ✅ Powered by GPT-4o via Azure OpenAI
- ✅ Uses Azure AI Search to retrieve relevant sections from Azure OpenAI docs
- ✅ Built-in short-term session history (Streamlit)
- ✅ Modular backend using FastAPI
- ✅ Clean and styled UI with Streamlit
chatbot/
├── backend/ # FastAPI backend
│ ├── main.py
│ ├── routers/
│ └── services/
├── frontend/ # Streamlit frontend
│ ├── app.py
│ └── components/
├── shared/ # Shared utilities
│ ├── config.py
│ └── utils.py
├── .env # Your secrets (excluded from Git)
├── .env.sample # Sample environment config
├── requirements.txt # Python dependencies
└── README.md
git clone https://github.com/your-username/chatbot.git
cd chatbotpython -m venv venv
source venv/bin/activate # macOS/Linux
# OR
venv\Scripts\activate # Windowspip install -r requirements.txtCreate a .env file using the provided .env.sample:
cp .env.sample .envAdd your Azure OpenAI, Search, and Blob credentials in the .env file.
uvicorn backend.main:app --reload --port 8000streamlit run frontend/app.pyThis chatbot is designed to:
- Help users navigate Azure OpenAI documentation
- Provide instant answers to queries like:
- “What is the model availability per region”
- “What is the latest REST API for the Azure OpenAI?”