微软面向企业的Private ChatGPT 参考应用 Chat Copilot
这两天你可能看过这篇文章:微软面向企业的Private ChatGPT 开源!超详细安装流程反馈![1], 这篇文章顶多就是一个Azure OpenAI 服务的简单Demo, 就连插件机制都没有,这也是促使我写这篇文章的因素之一。 微软在Build 大会上宣布了Copilot Stack,Copilot Stack被描述为一个人工智能开发框架,帮助开发人员构建自己的Copilot。“这个堆栈包括对插件的支持,这些插件通过允许它们查询实时信息、合并公司或其他业务数据、执行新型计算并代表用户安全地采取行动来增强人工智能系统的功能。

其中充当AI Orchestration角色的正是微软今年在LLM 领域实践的总结而开源的项目Semantic Kernel[2], 其中有一个示例程序Copilot chat ,已经按照Copilot stack的设计进行了重构,微软最近的一篇文章 “使用Chat Copilot测试你的ChatGPT插件”[3],Semantic Kernel团队构建了参考应用程序,以帮助开发人员了解平台的不同概念(包括利用插件,规划器和AI记忆)如何组合在一起以创建单一的对话体验。

Microsoft一直在更新其Chat Copilot参考应用程序以测试插件,并将其移至自己的GitHub存储库[4], Microsoft还改进了该应用程序的功能,使开发人员更容易了解Chat Copilot的功能,其中列出了三个具体功能:
- 通过单击Chat copilot中的信息气泡,开发人员可以看到用于生成响应的整个提示(及其令牌使用情况)。
- 在“计划”选项卡中,开发人员可以查看和调查使用插件生成的所有计划。
- 在“角色”选项卡中,开发人员可以使用影响代理响应方式的变量。
基于其用于构建 ChatGPT 插件然后对其进行测试的单独文档,Microsoft 还发布了有关部署 Chat Copilot 以便它可以与组织中的其他人一起使用的指南, 下面介绍一下在本地环境中部署运行Chat Copilot:
在本地环境下运行条件
- 申请使用Azure OpenAI
- 持有Microsoft 账户
- Microsoft的账户用于认证。
- 可以执行Node.js的安装和npm install。
- 可以执行安装.NET
在本地环境安装,详细参考 Chat Copilot Sample Application[5], 需要在Azure 上获取到服务的几个参数:
- 用Azure OpenAI创建实例,部署模型,获取访问Azure OpenAI服务的两个参数
API_KEY: TheAPI keyfor Azure OpenAI .AZURE_OPENAI_ENDPOINT: The Azure OpenAI resource
Endpointaddress.
- 在Azure AAD上注册一个应用, 用户的身份认证要用到这个,AAD的应用 都必须使用HTTPS 才能设置,http 只能使用localhost 。
AZURE_APPLICATION_ID: TheApplication (client) IDassociated with the registered application.
在Windows、Linux、Mac环境下都scripts 目录下准备好了安装脚本。
第一步执行Install.ps 或者 Install.sh 安装依赖环境, 这个脚本会安装 Chocolatey, dotnet-7.0-sdk, nodejs, 和 yarn。
第二部执行配置 Chat Copilot:
.\Configure.ps1 -AIService {AI_SERVICE} -APIKey {API_KEY} -Endpoint {AZURE_OPENAI_ENDPOINT} -ClientId {AZURE_APPLICATION_ID}
然后执行Start.ps或者Start.sh ,启动后端API 和前端的 React 应用。
访问应用程序
访问http://localhost:3000/ 后会显示认证界面,使用Microsoft 账户登录后就可以拥有企业私有的ChatGPT,可以支持ChatGPT插件。

相关链接:
- [1]微软面向企业的Private ChatGPT 开源!超详细安装流程反馈!: https://mp.weixin.qq.com/s/hgEGJuoM0xLpCdXWL-5acw
- [2]Semantic Kernel: https://github.com/microsoft/semantic-kernel
- [3]使用Chat Copilot测试你的ChatGPT插件: https://learn.microsoft.com/en-us/semantic-kernel/chat-copilot/testing-plugins-with-chat-copilot
- [4]GitHub存储库: https://github.com/microsoft/chat-copilot
- [5]Chat Copilot Sample Application:https://github.com/microsoft/chat-copilot/blob/main/README.md
微软面向企业的Private ChatGPT 参考应用 Chat Copilot的更多相关文章
- 面向企业客户的制造业CRM系统的不成熟思考
CRM就是客户关系管理(Customer Relationship Management),一直一知半解,最近有涉及这方面的需求,所以稍作研究,并思考一些相关问题. CRM是什么? CRM具体如何定义 ...
- 微软面向高并发应用而推出的新程序库——TPL Dataflow
TPL Dataflow库的几个扩展函数 TPL Dataflow是微软面向高并发应用而推出的新程序库.借助于异步消息传递与管道,它可以提供比线程池更好的控制.本身TPL库在DataflowBlock ...
- DataPipeline成功入选微软加速器 企业创新力获业界专家认可
近日,微软加速器•北京公布最终入选的第13期创新企业名单.作为国内领先的“iPaaS+AI”一站式数据融合服务提供商DataPipeline,历经多轮角逐,在上千家企业激烈竞争中,成功入选. 高手过招 ...
- 笔精墨妙,妙手丹青,微软开源可视化版本的ChatGPT:Visual ChatGPT,人工智能AI聊天发图片,Python3.10实现
说时迟那时快,微软第一时间发布开源库Visual ChatGPT,把 ChatGPT 的人工智能AI能力和Stable Diffusion以及ControlNet进行了整合.常常被互联网人挂在嘴边的& ...
- BizTalk 开发系列(四十一) BizTalk 2010 BAM 安装手记
使用64位系统可以支持更大的内存,现在服务器基本上都使用64位系统.微软从Windows Server 2008 R2开始服务器版的操作系统也只支持64位了,不过对于像BizTalk这种“繁杂的东西” ...
- 微软企业库的Cache
微软企业库的Cache 通常,应用程序可以将那些频繁访问的数据,以及那些需要大量处理时间来创建的数据存储在内存中,从而提高性能.基于微软的企业库,我们的快速创建一个缓存的实现. 新建PrismSamp ...
- Prism6下的MEF:基于微软企业库的Cache
通常,应用程序可以将那些频繁访问的数据,以及那些需要大量处理时间来创建的数据存储在内存中,从而提高性能.基于微软的企业库,我们的快速创建一个缓存的实现. 新建PrismSample.Infrastru ...
- 亚马逊云推出基于机器学习的企业搜索服务Kendra,剑指微软
近日,在AWS re:Invent全球大会上,亚马逊发布了五项新的基于机器学习的人工智能 (AI) 服务. 这五项服务包括机器学习驱动的企业搜索.代码审核与分析.欺诈检测.医疗转录和 AI 预测的人工 ...
- [EntLib]微软企业库5.0 学习之路——第一步、基本入门
话说在大学的时候帮老师做项目的时候就已经接触过企业库了但是当初一直没明白为什么要用这个,只觉得好麻烦啊,竟然有那么多的乱七八糟的配置(原来我不知道有配置工具可以进行配置,请原谅我的小白). 直到去年在 ...
- 使用微软企业库5.0提供的unity配置解藕系统demo(源码)
最近公司集50多号开发人员的人力围绕一个系统做开发,框架是免不了要统一的,公司提供的架构,利于分工合作,便于维护,扩展,升级,其中使用了到微软的企业库来解藕系统,只是因为框架封装,于是在网上学习了一个 ...
随机推荐
- React笔记-组件通信(六)
React笔记-组件通信(六) props概念 props是组件之间通讯的纽带 props也是组件中内置的一个属性 通过父级组件传入 在类组件里 可以直接通过this.props获取 注意: prop ...
- Python安装部署 - virtualenv虚拟环境配置(Windows)
Python安装部署 - virtualenv虚拟环境 目录 Python安装部署 - virtualenv虚拟环境 前言 安装virtualenv 搭建虚拟环境 搭建虚拟环境指定路径 PyCharm ...
- java设计模式【抽象工厂模式】
java设计模式[抽象工厂模式] 抽象工厂模式 抽象工厂模式是对简单工厂模式的一个变种,它允许通过一个统一的接口来创建不同的产品实例,而无需指定具体的子类.在这个模式中,我们只关心产品的抽象接口,而将 ...
- [NISACTF 2022]bingdundun~
[NISACTF 2022]bingdundun~ 考点 文件上传.Phar://伪协议 一.题目 打开题目,发现是一道文件上传的题目,因为提示了可以压缩包,所以尝试直接上传zip文件,然后利用PHP ...
- Qt+QtWebApp开发笔记(四):http服务器使用Session和Cookie实现用户密码登录和注销功能
前言 前面实现了基础的跳转,那么动态交互中登录是常用功能. 本篇实现一个动态交互的简单登录和注销功能,在Qt中使用Session和Cookie技术. Demo 下载地址 链接:ht ...
- Kubernetes 研究笔记
Kubernetes 研究笔记 在接下来的这篇笔记中,我将会介绍 Kubernetes 这一强大的容器编排工具,并学习其基本使用方法.该笔记将会被存储在https://github.com/owlma ...
- JVM 诊断神器-Arthas实战
什么是Arthas(阿尔萨斯) 阿里开源的Java诊断工具,它可以在运行时对Java应用程序进行动态诊断和调试 当你遇到以下类似问题而束手无策时,Arthas可以帮助你解决 这个类从哪个 jar 包加 ...
- Java并发(十二)----线程应用之多线程解决烧水泡茶问题
1.背景 统筹方法,是一种安排工作进程的数学方法.它的实用范围极广泛,在企业管理和基本建设中,以及关系复杂的科研项目的组织与管理中,都可以应用. 怎样应用呢?主要是把工序安排好. 比如,想泡壶茶喝.当 ...
- 浅析switch和if(开发中这两者的优缺点;分析出优缺点在使用就能更确定自己需要使用哪个函数了)
分析 Switch 相较于 if 的优点 1.switch 执行效率 高于 if 的执行效率 分析: switch是在编译阶段将子函数的地址和判断条件绑定了,只要直接将a的直接映射到子函数地址去执 ...
- SpringBoot项目从0到1配置logback日志打印
大家好!我是sum墨,一个一线的底层码农,平时喜欢研究和思考一些技术相关的问题并整理成文,限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教. 以下是正文! 一.写文背景 我们在写后端项目的时候 ...