Chat and Ask on your own data. Accelerator to quickly upload your own enterprise data and use OpenAI services to chat to that uploaded data and ask questions
This sample demonstrates a few approaches for creating ChatGPT-like experiences over your own data. It uses Azure OpenAI Service to access the ChatGPT model (gpt-35-turbo and gpt3), and vector store (Pinecone, Redis and others) or Azure cognitive search for data indexing and retrieval.
The repo provides a way to upload your own data so it's ready to try end to end.
PFSQLASK_URL
and PFSQLASK_KEY
configuration values are added to deployed endpoint to enable the feature. Also make sure SynapseName
, SynapsePool
, SynapseUser
and SynapsePassword
configuration values are added to entaoai
PromptFlow connection. Moved deleting the Session Capability for ChatGpt to Admin Page.ApiType
Configuration in Web App) or using Prompt Flow Managed endpoint.ApiType
Configuration in Web App) or using Prompt Flow Managed endpoint.OpenAiEndPoint
configuration value instead of OpenAiService
. It is to support the best practices as they are outlined in Enterprise Logging via Azure API Management. Your OpenAiEndPoint
if using APIM will be API Gateway URL and the OpenAiKey
will be the Product/Unlimited key. If not using APIM, you don't need to change the key, but ensure OpenAiEndPoint
is fully qualified URL of your AOAI deployment. OpenAiService
is no longer used. Changes did impact the working on Chat on Stream feature, so it's disabled for now and will be enabled once tested and fixed.WeatherEndPoint
, WeatherHost
, StockEndPoint
, StockHost
and RapidApiKey
configuration to Azure Function App.OpenAiChat
, OpenAiChat16k
, OpenAiEmbedding
, OpenAiEndPoint
, OpenAiKey
, OpenAiApiKey
, OpenAiService
, OpenAiVersion
, PineconeEnv
, PineconeIndex
, PineconeKey
, RedisAddress
, RedisPassword
, RedisPort
property in Azure App Service (Webapp) to enable the feature for existing deployment.CHATGPT_URL
property in Azure App Service (Webapp) to enable the feature outside of deploying the new Azure Function.FMPKEY
variable to webapp configuration.PIBCHAT_URL
property is added to Azure WebApp with the URL for your deployed Azure FunctionsFmpKey
in Azure Functions. Because of circular dependency you need to manually add SecDocPersistUrl
and SecExtractionUrl
manually in Azure Functions.OpenAiChat16k
property in Azure Function app.BLOB_EVALUATOR_CONTAINER_NAME
(ensure the same container name is created in storage account) and RUNEVALUATION_URL
(URL of the Durable function deployment) configuration in Azure Web App for existing deployment and if you want to use the Evaluator feature. In the Azure function deployment add AzureWebJobsFeatureFlags
(value EnableWorkerIndexing) and OpenAiEvaluatorContainer
settings.CosmosEndpoint
, CosmosKey
, CosmosDatabase
and CosmosContainer
settings in both Azure Functions App and Web App.SEARCHSERVICE
, SEARCHKEY
and KBINDEXNAME
(default value of aoaikb) needs to be added to Azure App Service to enable "Question List" button feature.KbIndexName
needs to be added to Azure Function app. Added the Notebook to test out the feature as part of the workshop. TODO : Add the feature to add the question to KB from the chat interface (and make it session based). A feature further to "regenerate" answer from LLM (instead of cached answer) will be added soon.OpenAiSummaryContainer
configuration to Function app and BLOB_SUMMARY_CONTAINER_NAME
configuration to Azure App Service (Ensure that the value you enter is the same as the container name in Azure storage and that you have created the container). You also need to add PROCESSSUMMARY_URL
configuration to Azure App Service (Ensure that the value you enter is the same as the Azure Function URL).FormRecognizerKey
and FormRecognizerEndPoint
are configured.OpenAiApiKey
in Azure Functions settings. For Azure OpenAI you will need OpenAiKey
, OpenAiService
and OpenAiEndPoint
Endpoint settings. You can also select that option for Chat/Question/SQL Nlp/Speech Analytics and other features (from developer settings page).Application and Function App Configuration
We are open to contributions, whether it is in the form of new feature, update existing functionality or better documentation. Please create a pull request and we will review and merge it.
Adapted from the repo at OpenAI-CogSearch, Call Center Analytics, Auto Evaluator and Edgar Crawler