sample-app-aoai-chatGPT  by microsoft

Web app for simple chat via Azure OpenAI, including "On Your Data" RAG

created 2 years ago
1,875 stars

Top 23.6% on sourcepulse

GitHubView on GitHub
Project Summary

This repository provides sample code for a web-based chat application that integrates with Azure OpenAI, offering a simple interface for users to interact with large language models. It is designed for developers and power users looking to build custom chat experiences, particularly those leveraging "Azure OpenAI On Your Data" for knowledge retrieval.

How It Works

The application acts as a frontend interface to Azure OpenAI models. It supports querying custom data sources by integrating with various Azure services like Azure AI Search, Azure Cosmos DB, Elasticsearch, Pinecone, and Azure SQL Server. Users can configure the application to connect to their chosen data source, enabling the model to retrieve and synthesize information from their specific datasets.

Quick Start & Requirements

  • Install/Run: Deploy via Azure Developer CLI (azd) or Azure CLI (az webapp up). Local development is supported by creating a .env file and running start.cmd or start.sh.
  • Prerequisites: An Azure OpenAI resource with a deployed chat model (e.g., gpt-35-turbo-16k, gpt-4). For "On Your Data" features, a configured data source (Azure AI Search, Cosmos DB, etc.) is required.
  • Setup: Configuration involves creating a .env file and potentially generating a JSON for Azure App Service settings. Deployment and configuration can take several minutes.
  • Links: README_azd.md for Azure Developer CLI deployment.

Highlighted Details

  • Supports "Azure OpenAI On Your Data" with multiple data sources including Azure AI Search, Azure Cosmos DB (Mongo vCore, Vector), Elasticsearch, Pinecone, and Azure SQL Server.
  • Includes options for enabling chat history via Azure Cosmos DB and function calling via Azure Functions.
  • Offers extensive UI customization through environment variables for titles, logos, and favicons.
  • Provides detailed guidance on authentication, including Microsoft Entra ID integration.

Maintenance & Community

This is a Microsoft-maintained project. Contributions are welcome, subject to a Contributor License Agreement (CLA). The project follows the Microsoft Open Source Code of Conduct.

Licensing & Compatibility

The repository is licensed under the MIT License. This license permits commercial use and linking with closed-source applications.

Limitations & Caveats

Some features are in preview (e.g., Elasticsearch, Pinecone, MongoDB integrations). The application uses preview Azure OpenAI API versions, requiring users to stay updated with API changes. Authentication is required for chat functionality by default, though it can be disabled for development.

Health Check
Last commit

5 days ago

Responsiveness

Inactive

Pull Requests (30d)
13
Issues (30d)
3
Star History
58 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.