copilot插件全解

COPILOT是一个基于AI的编程辅助工具,它可以帮助程序员自动编写代码,提高开发效率。COPILOT的插件主要是为了将其功能集成到不同的编程环境中,方便程序员使用。

目前,COPILOT支持多种编程环境,包括Visual Studio Code、Visual Studio、Neovim和JetBrains IDE等。针对这些编程环境,COPILOT提供了相应的插件,如GitHub Copilot插件、VS Code Copilot插件等。这些插件的安装方法可能因编程环境和版本而异,但通常可以通过插件市场或官方文档进行安装。

需要注意的是,COPILOT插件的使用需要申请,并且需要支付一定的费用。此外,使用COPILOT插件时需要遵守相应的使用协议和规定,以确保合法性和安全性。

总的来说,COPILOT插件是一个非常实用的工具,它可以帮助程序员更高效地编写代码,减少重复劳动,提高开发效率。

插件的架构

插件由三部分组成:

  • 在您自己的服务器上运行并执行任务的 API。

  • 以 YAML 或 JSON 文件形式提供的 API 规范,使用 OpenAPI 架构描述 API。例如。openapi.yaml

  • 插件清单,作为名为 的 JSON 文件,Microsoft Copilot 使用它来了解何时以及如何使用插件。ai-plugin.json

API、API 规范和插件清单都托管在您自己的服务器上:

Your web server, which hosts the API, the API spec, and the manifest

应用程序接口

插件中处理用户操作的部分是您的 API。您的 API 公开了端点,使用户能够使用您的插件实现他们需要完成的任务 - 例如,定义端点的房地产插件。/get-listings

您可以使用首选的服务器端编程语言以任何方式实现此 API。确保将 API 托管在可通过 HTTPS 访问 Internet 的服务器上。

API 规范

您必须使用 YAML 或遵循 OpenAPI 架构的 JSON 文件(例如 .Microsoft Copilot 需要您的 API 规范才能知道您的 API 公开了哪些端点、如何向它们发送请求以及如何读取响应。openapi.yaml

插件不会直接向用户显示其 API 调用的结果。安装插件的 Microsoft Copilot 体验使用 API 规范读取 API 响应,然后根据 API 返回的数据生成用户响应:

Flow diagram showing when a user asks a question, Microsoft Copilot calls the API, receives a response from it, and then presents the returned data to users

插件清单

插件清单是一个名为 的 JSON 文件,其中包含有关插件的元数据。Microsoft Copilot 使用此清单来了解何时以及如何使用您的插件。ai-plugin.json

根据插件描述和用户提出的问题,Microsoft Copilot 可以决定调用您的插件来响应用户。

清单文件不包含代码,而是包含插件的自然语言描述。支持 Microsoft Copilot 的大型语言模型会读取您的插件描述,并可以决定您的插件是否可用于帮助用户解决他们的问题。

下面是一个房地产插件的示例清单文件,可在 :contoso.com

{
  "schema_version": "v1",
  "name_for_model": "contosorealestate",
  "description_for_model": "Plugin for finding properties for sale on the market in a particular city, and with a given number of bedrooms, bathrooms, and amenities",
  "name_for_human": "Contoso Real Estate",
  "description_for_human": "Find up to date and detailed real estate properties for sale on the market",
  "api": {
    "type": "openapi",
    "url": "https://contoso.com/openapi.yaml",
    "is_user_authenticated": false
  },
  "auth": {
    "type": "none"
  },
  "logo_url": "https://contoso.com/logo.png",
  "contact_email": "contact@contoso.com",
  "legal_info_url": "https://contoso.com/legal/"
}

插件使用流程

概括地说,以下是插件在 Microsoft Copilot 中的使用方式。以下步骤给出了一个基于虚构插件的示例,该插件可以根据搜索条件(例如城市)查找房地产列表。若要了解如何自行构建此房地产插件示例,请参阅开始构建 Microsoft Copilot 插件。

#步骤例子
1用户在 Microsoft Copilot 体验的聊天 UI 中提问。“在纽约寻找 4 居室待售房产”
2Microsoft Copilot 根据插件描述和 API 规范评估问题,并决定是否使用插件来帮助回答问题。该插件的描述是“用于查找特定城市市场上待售物业的插件,并具有给定数量的卧室、浴室和便利设施”。该插件的 API 公开了一个名为 的端点,该端点被描述为“获取与指定条件匹配的属性列表”。get-listings
3Microsoft Copilot 通过使用插件的 OpenAPI 规范来调用插件 API,以生成正确的 API 请求。Microsoft Copilot 向 发送 API 请求。https://contoso.com/get-listings?city=New+York&bedrooms=4
4插件 API 接收请求并返回响应。API 返回的数据,例如 .[{"title": "Luminous apartment in the heart of the city", "city": "New York", "bedrooms": 4, "description": "..."}]
5Microsoft Copilot 使用插件的 OpenAPI 规范从响应中提取信息。
6Microsoft Copilot 通过使用其训练数据、自然语言生成能力和 API 响应中的信息来制定对用户的最终响应。“以下是纽约一些待售的公寓,有 4 间卧室:......”

Diagram showing the steps from the table above

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/293502.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

stable diffusion 基础教程-图生图

界面 图生图大概有以下几个功能: 图生图涂鸦绘制局部绘制局部绘制(涂鸦蒙版)其常用的也就上面四个,接下来逐步讲解。 以图反推提示词 图生图可以根据反推提示词来获取相应图片的提示词,目前3种主流方式,如下: CLIP反推提示词:推导出的文本倾向于自然语言的描述方式,…

支持下载和阅读的漫画管理工具Teemii

什么是 Teemii ? Teemii 是一款专为狂热漫画读者设计的精简 Web 应用程序。它为阅读和管理漫画集提供了一个简单而高效的平台。主要功能包括跨平台访问、浏览器内阅读、强大的元数据聚合器以及馆藏自动更新。Teemii 是专为那些寻求更加个性化和自主的方法来管理漫画…

论文管理器

论文管理器 这个论文管理器仍然存在许多漏洞。目前,通过按照一些例行程序操作,它可以正常工作。我将在有时间的时候改进代码,提供详细说明,并添加新功能。当该管理器的代码进行优化后,我会上传到github上。 一个建立…

C练习——定期存取并行

题目:假设银行一年整存零取的月息为1.875%,现在某人手头有一笔钱,他打算在今后5年 中,每年年底取出1000元作为孩子来年的教育金,到第5年孩子毕业时刚好取完这笔钱,请编 程计算第1年年初时他应存入银行多少钱…

接口自动化--断言

目标&#xff1a; 1、学习常见的自动化断言方法 2、把自动化断言分装和应用于接口测试 具体内容&#xff1a; 1、学习常见的自动化断言方法 第一类&#xff1a;比较大小和是否相等 而assert可以使用直接使用“”、“!”、“<”、“>”、“>”、"<"…

【数据结构】平衡二叉树

导语 对于二叉搜索树 而言&#xff0c;它的 增、 删 、 改 、 查 的时间复杂度为 O() ~ O(n) 。原因是最坏情况下&#xff0c;二叉搜索树会退化成 线性表 。换言之&#xff0c;树的高度决定了它插入、删除和查找的时间复杂度。 为了对上述缺点进一步优化&#xff0c;设计了一…

【送书活动六期】自我摸索:高质量分文章是如何优化出来的?

自从CSDN有了文章质量分后&#xff0c;大家都力争写出高分文章&#xff0c;尤其是23年年度博客之星的评选&#xff0c;入围标准之一就是文章质量分大于80&#xff0c;更驱使大家追逐高质量分的文章了&#xff0c;这里仅以个人经验&参考他人经验&#xff0c;总结一下。 目录…

.NET 8.0 本机 AOT

在软件开发领域&#xff0c;优化性能和简化效率仍然至关重要。.NET 平台二十年来不断创新&#xff0c;为开发人员提供了构建弹性且高效的软件解决方案的基础架构。 与本机 AOT&#xff08;提前&#xff09;编译相结合&#xff0c;取得了显着的进步。本文深入研究.NET Native AO…

2.HDFS 架构

目录 概述架构HDFS副本HDFS数据写入流程NN 工作原理DN 工作原理 结束 概述 官方文档快递 环境&#xff1a;hadoop 版本 3.3.6 相关文章速递 架构 HDFS HDFS 架构总结如下&#xff1a; a master/slave architecture 一主多从架构a file is split into one or more blocks a…

无法到达所选择的在线目标(博途PLC连接不上)

第1步&#xff1a;首先需要检查的就是PLC的物理连接了&#xff0c;可以利用PING工具测试下电脑和PLC是否在同一个网段&#xff0c; 第2步就是检查下防火墙设置 1、防火墙设置 2、关闭防火墙 未完....

MySQL InnoDB引擎

1、逻辑存储结构 2、架构 a. 内存结构 Change Buffer的意义是什么? 与聚集索引不同&#xff0c;二级索引通常是非唯一的&#xff0c;并且以相对随机的顺序插入二级索引。同样&#xff0c;删除和更新可能会影响索引树中不相邻的二级索引页&#xff0c;如果每一次都操作磁盘&am…

面试官:线程池的7种创建方式,你都清楚吗?

文章目录 前言1. 固定数量的线程池a. 线程池返回结果b. ⾃定义线程池名称或优先级 2. 带缓存的线程池3. 执⾏定时任务a. 延迟执行(一次)b. 固定频率执行c. scheduleAtFixedRate VS scheduleWithFixedDelay 4. 定时任务单线程5. 单线程线程池6. 根据当前CPU⽣成线程池 前言 线程…

不同阶数的巴特沃斯低通滤波器的空间域表示——数字图像处理

原理 巴特沃斯低通滤波器&#xff08;Butterworth Low-Pass Filter&#xff09;在频率域中的定义是明确的&#xff0c;但它在空间域中的表示不是直观的。这是因为巴特沃斯滤波器的形式是基于频率的&#xff0c;并且其空间域表示涉及到一个复杂的逆傅里叶变换&#xff0c;该变换…

一文搞懂Python Web开发 Django

简介 Django是一个主流的Python Web框架&#xff0c;用于快速开发 Web 应用程序。功能强大&#xff0c;Python Web应用开发的第一选择。 特点 ORM&#xff08;对象关系映射&#xff09;&#xff1a; Django 提供了一个强大的 ORM&#xff0c;允许开发者通过 Python 代码来定义…

C#设计模式之观察者模式

前言 观察者&#xff08;Observer)模式也称发布-订阅&#xff08;Publish-Subscribe&#xff09;模式&#xff0c;定义了对象间一种一对多的依赖关系&#xff0c;当一个对象的状态发生改变时&#xff0c;所有依赖于它的对象都得到通知并被自动更新。 观察者模式的图解如下所示…

使用 Kafka 和 CDC 将数据从 MongoDB Atlas 流式传输到 SingleStore Kai

SingleStore 提供了变更数据捕获 (CDC) 解决方案&#xff0c;可将数据从 MongoDB 流式传输到 SingleStore Kai。在本文中&#xff0c;我们将了解如何将 Apache Kafka 代理连接到 MongoDB Atlas&#xff0c;然后使用 CDC 解决方案将数据从 MongoDB Atlas 流式传输到 SingleStore…

JAVA基础学习笔记-day13-数据结构与集合源1

JAVA基础学习笔记-day13-数据结构与集合源1 1. 数据结构剖析1.1 研究对象一&#xff1a;数据间逻辑关系1.2 研究对象二&#xff1a;数据的存储结构&#xff08;或物理结构&#xff09;1.3 研究对象三&#xff1a;运算结构1.4 小结 2. 一维数组2.1 数组的特点 3. 链表3.1 链表的…

Linux之IP地址、主机名、域名解析

一、IP地址 可以通过ifconfig命令查看本机的ip地址&#xff0c;如果无法使用ifconfig命令&#xff0c;可以安装 安装&#xff1a;yum -y install net-tools ens33&#xff1a;主网卡&#xff0c;里面的inet就是ip地址 lo&#xff1a;本地回环网卡&#xff0c;127.0.0.1&…

Pytorch从零开始实战15

Pytorch从零开始实战——ResNeXt-50算法实战 本系列来源于365天深度学习训练营 原作者K同学 文章目录 Pytorch从零开始实战——ResNeXt-50算法实战环境准备数据集模型选择开始训练可视化总结 环境准备 本文基于Jupyter notebook&#xff0c;使用Python3.8&#xff0c;Pytor…

【计算机毕业设计】SSM医药信息管理系统

项目介绍 该系统共七个功能模块&#xff1a;查询模块、录入模块、删除模块、修改模块、浏览模块、打印模块和用户管理模块。 系统只有一个超级管理员&#xff0c;可以创建系统用户并进行权限管理&#xff0c;其他用户没有用户管理权限&#xff0c;只有其他权限。 不同的用户…