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

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

钉钉审批流程解读

组织机构 部门 部门可以创建下级部门部门可以设置部门主管,可以是多人部门可以默认构建,沟通群可以设置部门信息,比如电话、简介可以设置部门的可见性,比如隐藏本部门,本部门将不会在组织机构、搜索,个人…

怎么让视频进行加速处理并保存

要加速处理视频并保存,可以使用专业的视频编辑软件或者一些在线工具。以下是一种常见的方法,使用FFmpeg这个开源工具。请确保你已经安装了FFmpeg。 打开命令行界面: 打开终端或命令提示符窗口。 使用以下命令进行视频加速处理: f…

如何从格式化的 Windows 和 Mac 电脑硬盘恢复文件

格式化硬盘可为您提供全新的体验。它可以是硬盘驱动器定期维护的一部分,是清除不再使用的文件的一种方法,在某些情况下,它是处理逻辑损坏的万福玛利亚。但是,许多用户发现自己格式化了错误的分区或驱动器,或者后来意识…

c语言-指针进阶

文章目录 前言一、字符指针二、数组指针2.1 数组指针基础2.2 数组指针作函数参数 总结 前言 在c语言基础已经介绍过关于指针的概念和基本使用,本篇文章进一步介绍c语言中关于指针的应用。 一、字符指针 字符指针是指向字符的指针。 结果分析: "ab…

Java中常见的设计模式及其实际应用

在软件开发中,设计模式是重要的指导原则,它们提供了解决特定问题的可重用方案。Java作为一种强大的编程语言,广泛应用了许多设计模式。让我们深入探讨几种常见的设计模式,并展示它们在实际Java应用中的用例。 1. 单例模式 (Singl…

elementui loading自定义图标和字体样式

需求:页面是用了很多个loading,需要其中有一个字体大些(具体到图标也一样的方法,换下类名就行) 遇见的问题:改不好的话会影响其他的loading样式(一起改变了) 效果展示 改之前 改之…

使用conda管理Python虚拟环境

标题:使用conda管理Python虚拟环境 摘要:本文将介绍如何使用conda工具创建、查看和删除Python虚拟环境。通过使用conda,我们可以轻松地在不同的项目中使用不同的Python版本和依赖库,避免不同项目之间的冲突。 一、简介 Python是…

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

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

IDEA好用插件

CodeGlance Pro 右侧代码小地图 Git Commit Template git提交信息模板 IDE Eval Reset 无限试用IDEA Maven Helper 图形化展示Maven项 One Dark theme 好看的主题 SequenceDiagram 展示方法调用链 Squaretest 生成单元测试 Translation 翻译 Lombok lombok插件…

【开题报告】基于JavaWeb的年货销售系统的设计与实现

1.选题背景 年货销售是中国传统文化的一部分,也是中国人过年必备的习俗之一。随着互联网的发展,越来越多的人选择在网上购买年货,以节省时间和精力。为了满足人们对年货的购买需求,设计一个基于JavaWeb的年货销售系统具有重要意义…

leecode | 829连续整数求和

给一个整数n 求连续整数的和等于n 的个数 这道题 是一个数论的思想 解决思路: 数必须是连续的,可以转化成一个通用的公式,以101为例做一般性推导,: 101 = 101 = 50 + 51 &#xff1d…

AQS原来是这么设计的,泰裤辣!

缘起 每门编程语言基本都离不开并发问题,Java亦如此。谈到Java的并发就离不开Doug lea老爷子贡献的juc包,而AQS又是juc里面的佼佼者 因此今天就一起来聊聊AQS 概念 AQS是什么,这里借用官方的话 Provides a framework for implementing blo…

web3: 智能合约

目录 智能合约的历史什么是智能合约如何运作?智能合约的应用代币标准ERC-20什么是 ERC-20?功能ERC-20 代币接口ERC-721什么是 ERC-721?功能ERC-721 代币接口:ERC-165ERC-777什么是 ERC-777&

第11课 实现桌面与摄像头叠加

在上一节,我们实现了桌面捕获功能,并成功把桌面图像和麦克风声音发送给对方。在实际应用中,有时候会需要把桌面与摄像头图像叠加在一起发送,这节课我们就来看下如何实现这一功能。 1.备份与修改 备份demo10并修改demo10为demo11…

前端跨域问题的解决思路

目录 前言 跨域问题的解决思路 一般跨域的解决方案 前言 做了一个简单页面,做了一些数据埋点,想通过企业微信机器人来推送数据,遇到了一些问题,顺便记录下。 跨域问题的解决思路 由于是项目比较简单,直接使用了aj…

Sentinel整合OpenFeign

1、配置文件 feign:sentinel:enabled: true 2、 编写一个工厂类 import com.cart.cartservice.client.ItemClient; import com.cart.cartservice.entity.Item; import lombok.extern.slf4j.Slf4j; import org.springframework.cloud.openfeign.FallbackFactory; import org.sp…

《Effective C++》《Resource Management》

文章目录 13、term13:Use objects to manage resources14、term14:Think carefully about copying behavior in resource-managing classes15、term15:Provide access to raw resources in resource-managing classes法一: 使用智能指针的get进行显示转换法二&#…

Redis 连接 命令

目录 1.Redis Echo 命令 - 打印字符串简介语法可用版本: > 1.0.0返回值: 返回字符串本身。 示例 2.Redis Select 命令 - 切换到指定的数据库简介语法可用版本: > 1.0.0返回值: 总是返回 OK 。 示例 3.Redis Ping 命令 - 查看服务是否运行简介语法可用版本: > 1.0.0返回…

2024-2030年中国磁化率仪行业应用前景与投资价值评估分析报告

2024-2030年中国磁化率仪行业应用前景与投资价值评估分析报告 &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 《报告编号》: BG471760 《出…

Apache 网页优化

目录 1.网页压缩与缓存 1.1 网页压缩 1. gzip 介绍 2. Http的压缩过程 3. Apache的压缩模块 4. mod_deflate模块 1.2 网页缓存 1. 配置 mod_expires 模块启用 2. 隐藏版本信息 2.1 配置Apache隐藏版本信息 2.2 Apache 防盗链 1. 配置防盗链 2.检查是否安装mod_re…