微软Copilot插件开发系列(一)

这篇具有很好参考价值的文章主要介绍了微软Copilot插件开发系列(一)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

懂AI PC的人要先拥抱新世界了。继联想、荣耀之后,微软的首款AI PC马上也要来了。去年9月,Colpilot正式进入Windows 11,成为电脑系统的AI助手。

插件api 微软,AIGC,Copilot,microsoft,copilot,chatgpt

可以在各种场景下完成各种任务,例如发邮件、控制电脑亮度等

插件api 微软,AIGC,Copilot,microsoft,copilot,chatgpt
但是,Copilot 无法获取第三方服务的实时信息,例如最新的新闻、天气、股票等。这时,我们就可以使用 OpenAI schema 开发Copilot 插件,来扩展Copilot 的功能,让它能够与我们自己的 API 交互。本文作为该系列的第一篇,将带你初步了解下copilot的基本概念和开发示例。

什么是Copilot 插件?

通俗说就是使用 OpenAI schema 来为Copilot 添加自定义功能的方式,以此来将我们自己的应用连接到Copilot。插件可以让 Copilot获取外部信息或执行某个任务。例如,一个获取最新的新闻和天气信息的插件,或者让用户在一个待办事项列表中添加或删除项目。

那么构成插件由哪些要素呢?

运行在我们自己服务器上的 API服务,用来执行具体的任务。
遵循OpenAPI schema 的对API做了详细说明的 YAML 或 JSON 文件,例如 openapi.yaml
名为ai-plugin.json 的 JSON 文件,用来告诉Copilot 何时以及如何使用我们的插件插件api 微软,AIGC,Copilot,microsoft,copilot,chatgpt

插件三要素

那么具体起来应该怎么操作呢?下面举一个具体的栗子

一个 Copilot 插件的示例

假设我们想要开发一个插件,可以根据用户的搜索条件,例如城市、卧室数、浴室数、设施等,来找到房地产列表。我们用 http://contoso.com 作为我们API 服务。

那么第一步我么就来定义Openapi 格式的YAML文件

下面定义一个 /get-listings 的路径,以搜索条件作为参数,返回一个 JSON 格式的房地产列表。


openapi: 3.0.0
info:
  title: Contoso Real Estate API
  version: 1.0.0
paths:
  /get-listings:
    get:
      summary: 根据搜索条件获取房地产列表
      parameters:
        - name: city
          in: query
          description: 要搜索的城市
          required: true
          schema:
            type: string
        - name: bedrooms
          in: query
          description: 卧室数量
          required: false
          schema:
            type: integer
        - name: bathrooms
          in: query
          description: 浴室数量
          required: false
          schema:
            type: integer
        - name: amenities
          in: query
          description: 需要包含的设施
          required: false
          schema:
            type: array
            items:
              type: string
      responses:
        '200':
          description: 房地产列表
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                      description: 房地产的唯一标识符
                    address:
                      type: string
                      description: 房地产的地址
                    price:
                      type: number
                      description: 房地产的价格
                    image_url:
                      type: string
                      description: 房地产图片的 URL
                    description:
                      type: string
                      description: 房地产的描述

第二步来定义ai-plugin.json,用来告诉Copilot 何时以及如何使用我们的插件,如下所示:

{
  "schema_version": "v1",[^1^][1]
  "name_for_model": "contosorealestate",[^2^][2]
  "description_for_model": "根据搜索条件在市场上找到待售的房地产的插件",
  "name_for_human": "Contoso 房地产",[^3^][3]
  "description_for_human": "在市场上找到最新和详细的待售房地产",
  "api": {[^4^][4]
    "type": "openapi",[^5^][5]
    "url": "https://contoso.com/openapi.yaml",[^6^][6]
    "is_user_authenticated": false[^8^][8]
  },
  "auth": {[^9^][9]
    "type": "none"[^10^][10]
  },
  "logo_url": "https://contoso.com/logo.png",[^11^][11]
  "contact_email": "contact@contoso.com",[^13^][13]
  "legal_info_url": "https://contoso.com/legal/",[^12^][12]
  "privacy_url": "https://contoso.com/privacy-policy"[^7^][7]
}

以上都准备妥当之后,下一步是啥呢?那就要走软件开发标准流程-测试了。

测试我们开发的插件

第一个要解决的问题是让插件联网,Copilot要能够访问到你的插件才能测试吧。上面案例中API服务我们直接用了别人家的,如果是自己的API服务,那就要将它开放给互联网了。其实也很简单vs code有一个forward port功能,这里不在赘述了。

插件api 微软,AIGC,Copilot,microsoft,copilot,chatgpt

API YAML文件和插件清单怎么让Copilot知道呢?这个就像上传文件那么简单。看到下面这个扳手按钮了吗?

插件api 微软,AIGC,Copilot,microsoft,copilot,chatgpt

上传插件说明书

首先告诉它API的访问地址是啥插件api 微软,AIGC,Copilot,microsoft,copilot,chatgpt

然后点击Find manifest file按钮来上传两个插件说明书,一个是YAML文件另一个是ai-plugin.json文件插件api 微软,AIGC,Copilot,microsoft,copilot,chatgpt

如果检验通过,可以在对话列表中选中这个插件聊天了插件api 微软,AIGC,Copilot,microsoft,copilot,chatgpt

比方说,如果我们问:

  • 我想在纽约找一个有两个卧室和两个浴室的房子。
  • 在伦敦有什么带游泳池的房子吗?
  • 我可以在巴黎花 50 万欧元买到什么样的房子?

Copilot 会根据我们的插件清单中的描述,判断插件是否可以用来回答用户的问题。如果是,Copilot 会根据API说明文件中的请求使用说明,构造并发送请求,并根据返回的结果,生成如下类似回复:这是我为你找到的一些在纽约有两个卧室和两个浴室的房子的列表:

  1. ID: 123456
  • 地址:123 Main Street
  • 价格:$500,000
  • 图片:链接
  • 描述:这是一个位于市中心的现代公寓,有两个宽敞的卧室和两个带浴缸的浴室,还有一个阳台和一个停车位。
  • ID: 234567
  • 地址:456 Park Avenue
  • 价格:$800,000
  • 图片:链接
  • 描述:这是一个位于高档社区的豪华别墅,有两个豪华的卧室和两个带按摩浴缸的浴室,还有一个私人花园和一个游泳池。

测试一个插件是不是很简单?是很简单,其实难的还是如何搭建自己的API服务。

读到这里,想必有些人对原理感兴趣,我不把原理放到前面,是怕有些人看到原理,看到框架就觉得这是个很复杂的事情,就会绕道走。可是原理也很简单的。

Copilot插件运行原理

假如你在Copilot聊天界面里提问,说:“找纽约有4个卧室的房子。”

Copilot看到用户的问题后,会决定是否使用一个插件来帮助回答问题。它先去看下这个插件的描述是:“用于在特定城市找到市场上待售的房产,可以指定卧室、浴室数量以及设施。” 插件的API说明文档里有一个叫做"get-listings"的路径,用来“获取符合指定条件的房产列表”。

Copilot觉得可以调用插件的API,通过插件的OpenAPI说明生成正确的请求。然后发送一个请求到网址https://contoso.com/get-listings?city=New+York&bedrooms=4。

API服务收到请求后,会返回一个响应。这个响应包含一些房源信息,比如[{"title": "城市中心的明亮公寓", "城市": "纽约", "卧室": 4, "描述": "..."}]。

Copilot根据插件的OpenAPI规范从响应中提取信息。

Copilot会结合API的响应信息来回答用户的问题。告诉用户找到了符合条件的房子,然后提供相关信息,如房子的标题、城市、卧室数量等。

看到这里,想必你一定觉得开发Copilot插件不是很难。这就跟正常的软件开发流程一样,有产品定义文档,有开发测试,最后是发布。哦对了,怎么发布插件到应用市场上,这个咱们下期在介绍了。文章来源地址https://www.toymoban.com/news/detail-854823.html

到了这里,关于微软Copilot插件开发系列(一)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Copilot 插件的使用介绍:让你的开发效率翻倍

    摘要:Copilot 是一款强大的代码自动完成插件,能够帮助开发者提高开发效率,减少重复性劳动。本文将详细介绍 Copilot 插件的使用方法,让你轻松上手,开启编程新篇章。 一、Copilot 插件简介 Copilot 是由 GitHub 开发的一款代码自动完成插件,使用了OpenAI的GPT模型。它可以帮助

    2024年03月21日
    浏览(51)
  • LCHub:一句话让 AI 替你开发 App,微软推出 Power Platform Copilot 低代码服务

    LCHub 3 月 18 日消息,这几天,GPT-4 接入微软 Office 全家桶的消息传遍了互联网,AI 究竟是会取代打工人还是辅助打工人,目前仍是个未知数。 GPT 能力除了集成在 Microsoft 365 与 Dynamics 365 服务外,微软也在 3 月 16 日宣布了 Power Platform Copilot,让 AI 替程序员开发 App 的功能问世了

    2024年02月15日
    浏览(49)
  • ChatGPT 新增朗读功能;微软 Win11 鼠标悬停自动打开 Copilot 丨 RTE 开发者日报 Vol.158

    开发者朋友们大家好: 这里是 「RTE 开发者日报」 ,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE (Real Time Engagement) 领域内「有话题的 新闻 」、「有态度的 观点 」、「有意思的 数据 」、「有思考的 文章 」、「有看点的 会议 」,但内容仅代表编

    2024年03月16日
    浏览(50)
  • 聊一聊微软Copilot的两个重磅更新!微软Copilot企业版已开放中国市场!

    大家好,我是木易,一个持续关注AI领域的互联网技术产品经理,国内Top2本科,美国Top10 CS研究生,MBA。我坚信AI是普通人变强的“ 外挂 ”,所以创建了“AI信息Gap”这个公众号,专注于分享AI全维度知识,包括但不限于 AI科普 , AI工具测评 , AI效率提升 , AI行业洞察 。关

    2024年04月17日
    浏览(31)
  • 微软推出付费版Copilot

    关注卢松松,会经常给你分享一些我的经验和观点。 微软已经超越苹果,成了全球市值最高的公司,其他公司都因为AI大裁员,而微软正好相反,当然这个原因很简单:就是微软强制把AI全面接入到系统里来了。而Copilot首当其冲! 微软推出了付费版Copilot,一个新生产力诞生

    2024年01月17日
    浏览(34)
  • 微软Copilot全新升级:Copilot Pro为个人和企业释放前所未有的AI能力

    微软今天宣布了一系列关于其AI助手Copilot的重大更新和扩展。这包括推出面向个人用户的新高级订阅服务 Copilot Pro ,提供跨设备的高级AI功能,包括对Microsoft 365个人和家庭订阅者的支持,以及更快速的最新模型访问,如GPT-4 Turbo。此外,微软还宣布Copilot for Microsoft 365现在向所

    2024年01月19日
    浏览(58)
  • 微软丢出王炸:微软发布重磅更新Windows Copilot

    在今天凌晨结束的微软 Build 2023 大会上,微软发布了重磅更新Windows Copilot. 微软此前把 GPT-4 接入Office 套件而推出的 Copilot,将全面集成到 Windows 系统。    Windows Copilot 注册直通: https:/forms.office.com/pages/responsepage.aspx?id=v4i5cVGGr0GRay180BHbR54CdsokulNm8L3Fedhou1UNIM5T09YTI04WINPWIFBMIJQSFYXQT

    2024年02月09日
    浏览(37)
  • Microsoft Copilot (Bing Chat)

    Copilot: Your everyday AI companion (你每天的AI伙伴) Bing AI - 搜索 Microsoft Copilot: 你的日常 AI 助手 Copilot|Designer: Create images from words with AI https://www.bing.com/images/create 2024 年 1 月 23 日更新: 在微软,我们一直在更新和测试功能,以便在尝试新的功能方法时为用户提供最佳体验。为了

    2024年04月11日
    浏览(26)
  • 微软推出新的 Copilot Pro 计划

      每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领域的领跑者。点击订阅,与

    2024年01月17日
    浏览(44)
  • 微软正式发布Copilot for Security

    微软公司近日宣布,其备受期待的安全自动化解决方案——Copilot for Security现已全面上市,面向全球用户开放。这一创新工具的推出标志着微软在提升企业安全防护能力方面迈出了重要一步,同时也为安全专业人士提供了强大的支持。 Copilot for Security是微软响应当前网络安全

    2024年04月23日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包