This accelerator demonstrates a few approaches for creating ChatGPT-like experiences over your own data using the Retrieval Augmented Generation pattern. It uses Azure OpenAI Service to access the ChatGPT model (gpt-35-turbo), and Azure Cognitive Search for data indexing and retrieval.
The Information Assistant (IA) Accelerator and Microsoft are committed to the advancement of AI driven by ethical principles that put people first.
Read our Transparency Note
Find out more with Microsoft's Responsible AI resources
- Chat and Q&A interfaces
- File Upload and automated chunking and indexing for PDF, HTML, and DOCX
- Monitoring the status of files uploaded and processed by the accelerator
- Interacting with your data in supported native languages*
- Explores various options to help users evaluate the trustworthiness of responses with citations, tracking of source content, etc.
- Shows possible approaches for data preparation, prompt construction, and orchestration of interaction between model (ChatGPT) and retriever (Cognitive Search)
- Settings directly in the UX to tweak the behavior and experiment with options
*See Configuring your own language ENV file for supported languages
For a detailed review see our Features page.
The IA Accelerator relies on multiple Azure services and has certain prerequisites that need to be met before deployment. It's essential to procure these prerequisites prior to proceeding with the deployment instructions in this guide.
To get started with the IA Accelerator you will need the following:
- An azure subscription with access enabled for the Azure OpenAI service. You can request access here *
- Administrative rights on the Azure Subscription
- Visual studio code
You can sign up for an Azure subscription here.
Once you have your prerequisite items, please move on to the Deployment Configuration step.
NOTICE: This codebase relies on the Azure OpenAI Service which must be procured first separately, subject to any applicable license agreement. Access to this code does not grant you a license or right to use Azure OpenAI Service.
The deployment process for the IA Accelerator, uses a concept of Developing inside a Container to containerize all the necessary pre-requisite component without requiring them to be installed on the local machine. The environment you will work in will be created using a development container, or dev container hosted on a virtual machine using GitHub Codespaces.
Begin by setting up your own Codespace using our Developing in a Codespaces documentation.
If you want to configure your local deskop for development container, follow our Configuring your System for Development Containers guide. More information can be found at Developing inside a Container.
Once you have the completed the setting up Codespaces, please move on to the Sizing Estimation step.
The IA Accelerator needs to be sized appropriately based on your use case. Please review our Sizing Estimator to help find the configuration that fits your needs.
Once you have completed the Sizing Estimator, please move on to the Deployment steps.
There are several steps to deploying the IA Accelerator. The following checklist will guide you through configuring the IA Accelerator in your environments. Please follow the steps in the order they are provided as values from one step may be used in subsequent steps.
- Configure Local Development Environment
- Configure Azure resources
Now that you have successfully deployed the IA Accelerator, you are ready to use the accelerator to process some data.
To use the IA Accelerator, you need to follow these steps:
- Prepare your data and upload it to Azure.
- Your data must be in a specified format to be valid for processing. See our supported document types in the Feature documentation.
- Upload your data via the data upload user interface.
- Once uploaded the system will automatically process and make the document(s) available to you and other users of the deployment.
- Begin having conversations with your data by selecting the appropriate interaction method.
For more detailed information review the Features section of the documentation.
- Revolutionize your Enterprise Data with ChatGPT: Next-gen Apps w/ Azure OpenAI and Cognitive Search
- Azure Cognitive Search
- Azure OpenAI Service
This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft’s Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party’s policies.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
For security concerns, please see Security Guidelines