使用LLM与您的企业数据聊天
该示例演示了一些通过您自己的数据创建类似Chatgpt的体验的方法。它使用Azure OpenAi服务访问ChatGPT模型(GPT-35-Turbo和GPT3),以及矢量存储(Pinecone,Redis等)或Azure认知搜索数据索引和检索。
该存储库提供了上传您自己的数据的方法,因此可以尝试结束。
更新
- 3/30/2024-重组以保持聊天,聊天流,QNA,上传和管理功能。所有其他人都将被转移到自己的仓库中。
- 3/10/2024-将及时流动版移至Entaoaipf
- 3/9/2024-高级抹布技术的初始版本和多模式抹布模式
- 2/28/2024-删除了SEC分析功能,并在SEC中移至了自己的存储库
- 1/28/2024-删除PitchBook功能,因为它们被移至PIB的仓库中
- 1/19/2024-更新了Python软件包和OpenAI> 1.0。对所有Python API进行了更改,以破坏Openai和Langchain引入的变化。
- 10/12/2023-自动提示的初始版本。现在,支持Pinecone索引,但是对认知搜索和REDIS的支持将很快更新。
- 9/29/2023-添加了评估提示流。一旦以Azure ML创建的及时流,可以将您的现有运行附加到以下评估过程中进行评估:
- 地面 - 问答基础评估流将通过利用最先进的大语言模型(LLM)来衡量响应的质量和安全性来评估问答环节增强生成系统。与传统的数学测量相比,利用GPT-3.5作为语言模型来协助测量旨在与人类评估达成很高的一致性。 gpt_groundedness(在上下文中):衡量模型的预测答案是如何基于上下文的。即使LLM的响应是真实的,即使在上下文中进行验证,这种响应也被认为是没有基础的。
- ADA相似性 - 问答ADA_SIMILITY评估流将通过利用最先进的大语言模型(LLM)来衡量响应的质量和安全性来评估问答环节增强生成系统。与传统的数学测量相比,利用GPT-3.5作为语言模型来协助测量旨在与人类评估达成很高的一致性。 ADA相似性评估流程使您可以通过LLM辅助ADA相似性METRI ADA_SIMILITY评估和评估模型:测量模型预测和地面真相的ADA嵌入的余弦相似性。 ADA_SIMILARITY是[0,1]范围内的值。
- 一致性 - 问答连贯评估流将通过利用最先进的大语言模型(LLM)来衡量响应的质量和安全性来评估问答环节增强生成系统。与传统的数学测量相比,利用GPT-3.5作为语言模型来协助测量旨在与人类评估达成很高的一致性。相干评估流程使您可以通过LLM辅助相干度量评估和评估模型。 GPT_Coherence:测量模型预测的答案中所有句子的质量以及它们如何自然地融合在一起。连贯性的评分为1到5,其中1分是最差的,而5则是最好的。
- 相似性 - 问答相似性评估流将通过利用最先进的大语言模型(LLM)来衡量响应的质量和安全性来评估问答环节增强生成系统。与传统的数学测量相比,利用GPT-3.5作为语言模型来协助测量旨在与人类评估达成很高的一致性。相似性评估流程使您可以通过LLM辅助相似性度量评估和评估模型。 gpt_simerity:衡量用户提供的地面真相答案与模型预测答案之间的相似性。相似性的评分为1-5,其中1个最差,而5则是最好的。
- F1分数 - 问答得分评分流程将根据预测的答案和地面真相中的单词计数,使用F1得分来评估问答环节增强生成系统。 F1得分评估流程使您可以使用地面真相的归一化版本和预测的答案之间使用常规代币数量来确定F1得分度量。 F1得分:根据预测的答案和地面真理中的令牌计算F1得分。 F1得分是[0,1]范围内的值。接地度量的评分为1-5,其中1个最差,而5则是最好的。
- 9/22/2023-为SQLASK添加了提示。确保将
PFSQLASK_URL
和PFSQLASK_KEY
配置值添加到部署的端点以启用该功能。还要确保将SynapseName
, SynapsePool
, SynapseUser
和SynapsePassword
配置值添加到entaoai
提示连接中。移动删除会话功能以供chatgpt到管理页面。 - 9/20/2023-添加的配置,以允许最终用户根据我们共享的最佳实践更改认知搜索矢量商店索引(混合,相似性/矢量和混合重新升级)的搜索类型。 QNA,聊天和提示流进行修改。 QNA和CHAT正在实现Langchain的自定义矢量商店实现,并使用助手功能及时流动。修复了QNA/CHAT/提示流的问题,未生成后续问题。
- 9/18/2023-重构SQL NLP不使用Langchain数据库代理/链,而是使用自定义提示。
- 9/15/2023-将Azure搜索软件包修改为11.4.0b9,然后将Langchain改为最新版本。添加了在QNA和聊天的提示流上进行评估的功能。 BERT PDF和评估数据可用于在迅速流中执行批处理和评估。示例笔记本显示了流程和E2E过程。 BERT聊天文件夹允许您以笔记本的形式测试E2E提示流,批处理运行和评估。
- 9/3/2023-使用提示流添加了用于聊天的API。允许最终用户在Azure函数中选择为API(Web App中的
ApiType
配置)或使用提示流管理的端点。 - 9/2/2023-添加了使用提示流以回答的API。允许最终用户在Azure函数中选择为API(Web App中的
ApiType
配置)或使用提示流管理的端点。 - 8/31/2023-使用提示流的LLMOPS添加了示例。存储库将添加灵活性,以使用快速流部部署模型作为当前Azure功能的替代方案。
- 8/20/2023-添加了对Markdown文件(作为zip文件)的支持,并从Azure Openaiembedding中删除了Chunk_size = 1
- 8/11/2023-通过流聊天功能修复了问题。
- 8/10/2023-打破变化- 重构所有代码以使用
OpenAiEndPoint
配置值而不是OpenAiService
。它是为了支持最佳实践,因为它们在企业登录中通过Azure API管理概述。如果使用APIM为API网关URL,则您的OpenAiEndPoint
, OpenAiKey
将是产品/无限密钥。如果不使用APIM,则不需要更改钥匙,而是确保OpenAiEndPoint
是AOAI部署的完全合格的URL。不再使用OpenAiService
。更改确实会影响流功能上的聊天工作的工作,因此它目前已禁用,并且一旦测试和修复,将启用。 - 8/9/2023-在Chatgpt接口中添加了函数为复选框。样本证明了调用功能的能力。目前支持天气API,股票API和BING搜索。函数调用在预览中,仅来自“ 2023-07-01-PREVIEW”的“ API版本”,因此请确保您更新现有部署以使用该版本。有关通话功能的详细信息。对于现有部署,将Azure功能应用程序添加到
WeatherEndPoint
, WeatherHost
,Weatherhost, StockEndPoint
, StockHost
和RapidApiKey
配置。 - 8/5/2023-添加了带有“流”选项的聊天接口。此功能使您可以将对话流式传输到客户端。 You will need to add
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. - 7/30/2023-删除未使用的代码 - 摘要和聊天
- 7/28/2023-开始删除Davinci模型使用情况。现在,除了研讨会外,从所有功能中删除了使用。基于反馈重新分配摘要功能,以允许用户指定提示和预定义的主题以总结它。
- 7/26/2023-从开发人员工具中删除OpenAI Playground,作为ChatGpt部分中可用的高级功能。
- 7/25/2023-为聊天功能添加选项卡,以直接从模型中支持Chatgpt功能,而不是“聊天”。您需要在Azure App Service(WebApp)中添加
CHATGPT_URL
属性,以启用部署新Azure功能的功能。 - 7/23/2023-添加了PIB UI的其余功能,并将生成PowerPoint甲板作为输出的初始版本。对于新功能,请确保您将
FMPKEY
变量添加到WebApp配置中。 - 7/20/2023-与PIB数据交谈的添加功能(SEC备案和收入呼叫成绩单)。因为部署了新的Azure函数,请确保使用
PIBCHAT_URL
属性添加到Azure WebApp中,并使用您已部署的Azure函数将URL添加到Azure WebApp - 7/18/2023-重构PIB代码以解决一些性能问题和错误修复。
- 7/17/2023-删除了“ Davinci”型号退休的GPT3聊天界面。
- 7/16/2023- PIB UI的初始版本(当前支持5个步骤 - 公司资料,呼叫笔录,新闻稿,SEC申请和评级/建议)。您将需要访问付费订阅(FMP或根据企业的访问权限进行修改)。要与FMP一起使用,您需要在Azure功能中添加
FmpKey
。由于循环依赖性,您需要在Azure函数中手动添加SecDocPersistUrl
和SecExtractionUrl
。 - 7/14/2023-添加对GPT3.5 16K型号的支持,并能够用> 500重叠的4000个令牌块构成文档。对于块> 4000,QNA和聊天功能都将默认为16K令牌。将身份提供商添加到应用程序和QNA和聊天接口的身份验证中。对于GPT3.5 16K型号,您需要在Azure函数应用中添加
OpenAiChat16k
属性。 - 7/13/2023-允许最终用户选择Chunksize和ChunkoverLap配置。覆盖提示模板的初始版本。
- 7/11/2023-笔记本形式的功能性PIB副副词。
- 7/8/2023-添加了该功能以重命名ChatGpt的会话。还为评估器工具添加了UI。此功能着重于对您的文档进行基于LLM的评估。它可以自动生成测试数据集(带有问答),并使用不同的参数对该文档进行分级并生成评估结果。它建立在Azure耐用功能上,并使用功能链接模式实现。您将需要在Azure Web应用程序中添加
BLOB_EVALUATOR_CONTAINER_NAME
(确保在存储帐户中创建相同的容器名称)和RUNEVALUATION_URL
(持久功能部署的URL)配置,以进行现有部署,如果您想使用评估器功能。在Azure函数部署中,添加AzureWebJobsFeatureFlags
(value enableWorkerIndexing)和OpenAiEvaluatorContainer
设置。 - 7/5/2023-添加了该功能以删除会话。该功能需要预览中的功能,您需要在订阅上的CosmosDB帐户上启用该功能。如果您尚未启用/部署COSMOSDB继续执行ChatGpt实现,则添加了简单的尝试/捕获块。
- 7/4/2023- gpt3.5/chatgpt接口的“ sessions”的初始版本。会话和消息从COSMOSDB存储/检索。确保已提供COSMOSDB服务或创建新的服务(用于现有部署)。您需要在Azure函数应用程序和Web应用程序中添加
CosmosEndpoint
, CosmosKey
, CosmosDatabase
和CosmosContainer
设置。 - 6/25/2023-笔记本上展示了以系统的方式评估答案质量的评估(自动生成问题和评估链),支持LLM QA设置(块大小,重叠,嵌入技术)。有关更多信息,请参阅评估器笔记本。
- 6/18/2023-添加管理页面支持知识库管理。
- 6/17/2023-添加了“问题列表”按钮,以提出问题功能,以显示知识库中所有问题的列表。在三个属性
SEARCHSERVICE
之后,需要将SEARCHKEY
和KBINDEXNAME
(AOAIKB的默认值)添加到Azure应用程序服务中,以启用“问题列表”按钮功能。 - 6/16/2023-将功能添加到使用Azure认知搜索作为矢量商店来存储缓存的知识库。 KB中未使用的问题将发送到LLM模型,以通过OAI找到答案,否则将其从缓存的数据存储中响应。新属性
KbIndexName
需要添加到Azure函数应用程序中。在研讨会的一部分中添加了笔记本以测试该功能。 TODO:添加功能以将问题添加到聊天界面中的KB(并基于会话)。 LLM的“再生”答案的进一步功能(而不是缓存答案)将很快添加。 - 6/7/2023-在开发人员工具中添加OpenAI游乐场和构建Copilot的初始版本(现在使用笔记本,但最终将作为Copilot功能移动)。为实时语音分析用例添加脚本,录制和示例。更快添加更多。
- 5/27/2023-以笔记本的形式添加讲习班内容,可以利用这些笔记本,以学习/执行方案。您可以在研讨会文件夹中找到笔记本。有关研讨会内容的详细信息,请参见此处。
- 5/26/2023-添加摘要功能以使用东西,mapReduce或完善摘要来汇总文档。要使用此功能(在现有部署上)确保将
OpenAiSummaryContainer
配置添加到功能应用程序和BLOB_SUMMARY_CONTAINER_NAME
配置到Azure App Service(确保输入的值与Azure存储中的容器名称相同,并且您已经创建了容器)。您还需要将PROCESSSUMMARY_URL
配置添加到Azure应用程序服务(确保输入的值与Azure函数URL相同)。 - 5/24/2023-将功能添加到上传CSV文件和CSV代理以回答/聊天问题。 Smart Agent还支持回答有关CSV数据的问题。
- 5/22/2023-“智能代理”的初始版本,可灵活地与解决方案中上传的所有文档进行交谈。它还使您可以与SQL数据库方案进行交谈。随着更多功能的添加,代理商将继续基于此功能(例如,与CSV/Excel或表格数据交谈)
- 5/21/2023-添加开发人员工具部分 - 实验代码转换和提示大师。
- 5/17/2023-将EDGAR源更改为认知搜索向量存储而不是Redis。
- 5/15/2023-添加使用“认知搜索”作为存储索引的矢量存储的选项。 Azure认知搜索提供了纯粹的矢量搜索和混合检索 - 以及由单个集成解决方案中Bing提供支持的复杂重新排列系统。报名。支持上传Word文档。
- 5/10/2023-添加有关如何构成文档的选项。如果要使用表单识别器,请确保创建表单识别器资源,并配置适当的应用程序设置
FormRecognizerKey
和FormRecognizerEndPoint
。 - 5/07/2023-可以选择Azure Openai或Openai的选项。对于OpenAI,请确保您在Azure功能设置中具有
OpenAiApiKey
。对于Azure OpenAi,您将需要OpenAiKey
, OpenAiService
和OpenAiEndPoint
端点设置。您还可以选择该选项进行聊天/问题/SQL NLP/语音分析和其他功能(从开发人员设置页面)。 - 5/03/2023-上传和介绍的管理页面所需的密码从索引管理开始
- 4/30/2023-添加了任务代理功能的初始版本。自主代理是设计为长期运行的代理商。您给他们一个或多个长期目标,他们独立执行这些目标。这些应用程序结合了工具用法和长期内存。最初的功能通过执行工具实现婴儿AGI
- 4/29/2023 -AWS S3过程集成使用S3,AWS Lambda功能和Azure Data Factory(尚不可用的自动部署,脚本可在/部署/AWS文件夹中可用)
- 4/28/2023-修复了质量检查和聊天的错误,引用和后续问题。及时限制了一些限制以限制文档的响应。
- 4/25/2023-功率虚拟代理的初始版本
- 4/21/2023-将SQL查询和SQL数据选项卡添加到SQL NLP,并修复引用和聊天的后续问题
- 4/17/2023-实时语音分析和对聊天和询问功能的文本和文本的语音。 (您可以将文本配置为开发人员设置的语音功能。您将需要Azure Speek Services)
- 4/13/2023-添加新功能以支持在多个文档上使用Vector QA代理提出问题
- 4/8/2023-询问您的SQL-使用SQL数据库代理或使用SQL数据库链
- 3/29/2023-自动部署脚本
- 3/23/2023-添加认知搜索作为存储文档的选项
- 3/19/2023-添加GPT3聊天实现
- 3/18/2023 -API生成文档和样本QA的摘要
- 3/17/2023
- 支持上传多个文档
- 错误修复 - redis vectorstore实现
- 3/16/2023-初始发布,询问您的数据并与数据聊天
测试网站
聊天并询问您的数据
特征
功能列表
建筑学

Azure架构

质量质量检查与您的数据有关

QA LLM评估

入门
开始
配置
应用和功能应用程序配置
资源
- 用chatgpt革新您的企业数据:w/ azure openai和认知搜索的下一代应用程序
- Azure认知搜索
- Azure Openai服务
- REDIS搜索
- 松果
- 认知搜索向量商店
贡献
无论是以新功能的形式,更新现有功能还是更好的文档,我们都对贡献开放。请创建一个拉请请求,我们将审查并合并它。
笔记
改编自Openai-Cogsearch的存储库,Call Center Analytics,Auto评估器和Edgar Crawler