GPTs的创建与使用,自定义GPTs中的Actions示例用法 定义和执行特定任务的功能模块 通过API与外部系统或服务的交互

Name 等

Logo:自动生成
Name 介绍
Description 介绍
Instructions 要求或命令等 比如用中文回复,角色。
Knowledge 上传你的知识库,如果你有某一垂直行业的数据,基于数据来回答。比如我有某个芯片的指令集。
Capabilities 都要
Actions:就这个难以理解一点,下面详说含义用法。
Addtional Settings 目前只有是否允许使用对话数据提高模型。
在这里插入图片描述
在这里插入图片描述

Actions 示例1:json格式

在这里插入图片描述

在ChatGPT中,Actions 是用于定义和执行特定任务的功能模块。这些任务通常涉及到与外部系统或服务的交互。你提供的示例是一个开放API(应用程序编程接口)的规格说明,用于获取特定地点的当前天气数据。让我来解释一下这个示例中各部分的含义:

  1. openapi: 指定OpenAPI规格的版本,这里是3.1.0版本。

  2. info: 提供API的基本信息。

    • title: API的名称,这里是“Get weather data”。
    • description: API的简要描述,说明它用于检索特定位置的当前天气数据。
    • version: API的版本,这里是v1.0.0。
  3. servers: 定义API的服务器列表。

    • 这里只有一个服务器URL:“https://weather.example.com”。
  4. paths: 描述API的各种路径及其操作。

    • /location: 这是一个路径,用于获取特定位置的天气数据。
      • get: 表示这是一个GET请求。
        • description: 该操作的描述,这里是“获取特定位置的温度”。
        • operationId: 操作的唯一标识符,这里是“GetCurrentWeather”。
        • parameters: 定义传递给API的参数。
          • name: 参数的名称,这里是“location”。
          • in: 参数的位置,这里是在查询字符串中。
          • description: 参数的描述,这里是“要检索天气的城市和州”。
          • required: 是否必需,这里是true。
          • schema: 参数的数据类型,这里是字符串。
  5. components: 定义API使用的通用组件,这里的“schemas”是空的,表示没有定义额外的数据结构。

在ChatGPT的上下文中,若要使用这样的API,你需要根据这个规格描述构建相应的请求。例如,如果要获取某个城市的天气数据,你会向"https://weather.example.com/location"发送一个带有位置参数的GET请求。然而,由于ChatGPT当前的运行环境不支持直接与外部API交互,这类操作通常无法直接执行。

//用中文解释一下chatGPT中Actions的用法 
{"openapi": "3.1.0","info": {"title": "Get weather data","description": "Retrieves current weather data for a location.","version": "v1.0.0"},"servers": [{"url": "https://weather.example.com"}],"paths": {"/location": {"get": {"description": "Get temperature for a specific location","operationId": "GetCurrentWeather","parameters": [{"name": "location","in": "query","description": "The city and state to retrieve the weather for","required": true,"schema": {"type": "string"}}],"deprecated": false}}},"components": {"schemas": {}}
}

Actions 示例2:YAML格式

# Taken from https://github.com/OAI/OpenAPI-Specification/blob/main/examples/v3.0/petstore.yamlopenapi: "3.0.0"
info:version: 1.0.0title: Swagger Petstorelicense:name: MIT
servers:- url: https://petstore.swagger.io/v1
paths:/pets:get:summary: List all petsoperationId: listPetstags:- petsparameters:- name: limitin: querydescription: How many items to return at one time (max 100)required: falseschema:type: integermaximum: 100format: int32responses:'200':description: A paged array of petsheaders:x-next:description: A link to the next page of responsesschema:type: stringcontent:application/json:    schema:$ref: "#/components/schemas/Pets"default:description: unexpected errorcontent:application/json:schema:$ref: "#/components/schemas/Error"post:summary: Create a petoperationId: createPetstags:- petsresponses:'201':description: Null responsedefault:description: unexpected errorcontent:application/json:schema:$ref: "#/components/schemas/Error"/pets/{petId}:get:summary: Info for a specific petoperationId: showPetByIdtags:- petsparameters:- name: petIdin: pathrequired: truedescription: The id of the pet to retrieveschema:type: stringresponses:'200':description: Expected response to a valid requestcontent:application/json:schema:$ref: "#/components/schemas/Pet"default:description: unexpected errorcontent:application/json:schema:$ref: "#/components/schemas/Error"
components:schemas:Pet:type: objectrequired:- id- nameproperties:id:type: integerformat: int64name:type: stringtag:type: stringPets:type: arraymaxItems: 100items:$ref: "#/components/schemas/Pet"Error:type: objectrequired:- code- messageproperties:code:type: integerformat: int32message:type: string

这个YAML文件是一个OpenAPI 3.0规范的示例,用于定义一个名为“Swagger Petstore”的API。这个API提供了操作宠物商店数据的接口。以下是文件的主要部分及其功能:

  1. openapi: 指定OpenAPI规格的版本,这里是3.0.0版本。

  2. info: 提供API的基本信息。

    • version: API的版本,这里是1.0.0。
    • title: API的名称,这里是“Swagger Petstore”。
    • license: 指定API的许可证,这里使用的是MIT许可证。
  3. servers: 定义API的服务器列表。

    • 这里的URL是"https://petstore.swagger.io/v1",代表API的主机地址。
  4. paths: 描述API的各种路径及其操作。

    • /pets: 这是一个路径,用于处理与宠物相关的请求。
      • get: 获取宠物列表的操作。
        • summary: 操作的简要描述,这里是“列出所有宠物”。
        • parameters: 请求参数,这里是一个名为“limit”的查询参数,用于指定返回的项目数(最多100个)。
        • responses: 定义了可能的响应。
      • post: 创建新宠物的操作。
    • /pets/{petId}: 获取特定宠物的详细信息的路径。
      • get: 操作的描述,这里是“获取特定宠物的信息”。
  5. components: 定义API使用的通用组件。

    • schemas: 定义了多个模式,包括“Pet”、“Pets”和“Error”,用于描述数据结构。

在这个API中,例如,如果想要获取宠物列表,可以向"/pets"路径发送一个GET请求,可能会带有“limit”参数来限制返回的数量。如果想要获取特定宠物的详细信息,可以向"/pets/{petId}“发送一个GET请求,其中”{petId}"是宠物的唯一标识符。

由于ChatGPT的运行环境不支持直接与外部API交互,这些操作无法直接在当前环境中执行。但是,这个文件提供了一个完整的API规范,可以用于生成API文档或在服务器上实现相应的功能。

Actions 示例3:json格式空白模板

{"openapi": "3.1.0","info": {"title": "Untitled","description": "Your OpenAPI specification","version": "v1.0.0"},"servers": [{"url": ""}],"paths": {},"components": {"schemas": {}}
}

外部系统示例(提供简单的API来响应天气查询)

以下示例展示了如何设计一个外部系统来处理来自ChatGPT的请求,并返回JSON格式的天气数据。这个示例中,假设外部系统是一个基于HTTP的Web服务,它提供了一个简单的API来响应天气查询。

API设计

  • 路径: /getWeather
  • 方法: GET
  • 请求参数:
    • location: 要查询天气的地点(例如城市名称)

请求示例

假设外部系统的基础URL是 https://example-weather-api.com。则一个向该API发送请求的URL可能是:

https://example-weather-api.com/getWeather?location=Beijing

处理请求

当外部系统收到一个请求时,它会解析查询参数中的location,然后根据这个地点获取当前的天气数据。

响应格式

响应将以JSON格式返回,包含地点、温度、天气状况等信息。

响应示例

{"location": "Beijing","temperature": "15°C","condition": "Sunny","humidity": "40%","wind": "10 km/h","forecast": [{ "day": "Monday", "temperature": "16°C", "condition": "Partly Cloudy" },{ "day": "Tuesday", "temperature": "14°C", "condition": "Rain" },{ "day": "Wednesday", "temperature": "13°C", "condition": "Thunderstorms" }]
}

实现注意事项

  1. 安全性: 确保处理请求时考虑到安全性,例如通过验证输入,防止注入攻击等。

  2. 性能: 根据预期的负载选择合适的服务器规格和扩展策略。

  3. 数据源: 此API可能依赖于第三方天气服务提供数据,因此需要考虑数据源的可靠性和更新频率。

  4. 错误处理: 应妥善处理可能出现的错误情况,并返回相应的错误信息。

请注意,这个示例是理论上的设计,具体实现会根据技术栈、应用场景和业务需求有所不同。

用php写一个外部系统示例(提供简单的API来响应天气查询)

创建一个简单的PHP脚本来模拟上述描述的外部系统是完全可行的。这个脚本将接收一个查询参数(location),然后返回硬编码的天气数据。在实际应用中,你可能会从数据库或第三方API中获取这些数据,但为了简单起见,我们在这里使用静态数据。

示例PHP脚本

<?php
// 模拟的天气数据
$weatherData = ["Beijing" => ["temperature" => "15°C","condition" => "Sunny","humidity" => "40%","wind" => "10 km/h","forecast" => [["day" => "Monday", "temperature" => "16°C", "condition" => "Partly Cloudy"],["day" => "Tuesday", "temperature" => "14°C", "condition" => "Rain"],["day" => "Wednesday", "temperature" => "13°C", "condition" => "Thunderstorms"]]],// 更多地点的数据可以在此添加
];header('Content-Type: application/json');// 获取查询参数
$location = $_GET['location'] ?? 'Unknown';// 查找对应地点的天气数据
$response = $weatherData[$location] ?? null;if ($response) {// 如果找到了数据,则返回echo json_encode(["location" => $location] + $response);
} else {// 没有找到数据,则返回错误信息echo json_encode(["error" => "Weather data not found for location: " . $location]);
}

使用方法

  1. 将上述代码保存为一个.php文件,例如getWeather.php
  2. 部署这个文件到一个PHP服务器上。你可以使用任何标准的LAMP(Linux, Apache, MySQL, PHP)或WAMP(Windows, Apache, MySQL, PHP)堆栈。
  3. 通过浏览器或任何HTTP客户端访问这个脚本,如:http://yourserver.com/getWeather.php?location=Beijing

注意事项

  • 这个示例非常基础,只用于演示目的。
  • 它不包含任何安全性或错误处理功能,这在生产环境中是必需的。
  • 在实际应用中,你可能需要从数据库或第三方API中动态获取天气数据。
  • 确保你的PHP服务器配置正确,可以处理GET请求并返回JSON数据。

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

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

相关文章

Flink 使用场景

Apache Flink 功能强大&#xff0c;支持开发和运行多种不同种类的应用程序。它的主要特性包括&#xff1a;批流一体化、精密的状态管理、事件时间支持以及精确一次的状态一致性保障等。Flink 不仅可以运行在包括 YARN、 Mesos、K8s 在内的多种资源管理框架上&#xff0c;还支持…

工业IC是什么

工业IC 电子元器件百科 文章目录 工业IC前言一、工业IC是什么二、工业IC的类别三、工业IC应用实例四、工业IC作用原理总结前言 工业IC包括微控制器(MCU)、采样芯片、模拟-数字转换器(ADC)、电源管理芯片、驱动芯片等。它们被广泛应用于各个行业的工业控制和自动化系统中,…

2023年泰国加密市场概览

一、泰国区块链及加密生态概览 1.加密货币数据分析平台访问人数火爆 2023年CoinMarketCap网站的平均月访问量为64.8万人次&#xff0c;占全国总人口的0.94%&#xff0c;泰国的人均访问量比美国高出0.21%。 1.2泰国加密资产交易量可观 根据CoinGecko上泰国领先的数字资产交易所…

vue3递归组件---树形组件

第一种方式&#xff0c;直接自己调用自己 Tree.vue <template><div class"tree"><div v-for"(item, index) in data" :key"item.name">每一层 {{ item.name }}<Tree v-if"item?.children?.length" :dataitem…

linux如何清空文件内容

在做系统运维工作时&#xff0c;有时会发现一个问题&#xff1a;某些存储空间的使用率过高。换句话说就是空间快被堆满了&#xff0c;需要释放空间。大多数情况下&#xff0c;导致空间不足的罪魁祸首通常是一些log日志文件。对于某些特殊系统来说&#xff0c;日志文件还不能直接…

AGM离线下载器使用说明

AGM专用离线下载器示意图&#xff1a; 供电方式&#xff1a; 通过 USB 接口给下载器供电&#xff0c;跳线 JP 断开。如果客户 PCB 的 JTAG 口不能提供 3.3V 电源&#xff0c;或仅需烧写下载器&#xff0c;尚未连接用户 PCB 时&#xff0c;采用此种方式供电。 或者&#xff1a…

Linux中的网络时间服务器

本章主要介绍网络时间的服务器 使用chrony配置时间服务器配置chrony客户端服务器同步时间 1.1 时间同步的重要性 一些服务对时间要求非常严格&#xff0c;例如如图所示的由三台服务器搭建的ceph集群 这三台服务器的时间必须保持一致&#xff0c;如果不一致&#xff0c;就会显…

Django讲课笔记01:初探Django框架

文章目录 一、学习目标二、课程导入&#xff08;一&#xff09;课程简介&#xff08;二&#xff09;课程目标&#xff08;三&#xff09;适用人群&#xff08;四&#xff09;教学方式&#xff08;五&#xff09;评估方式&#xff08;六&#xff09;参考教材 三、新课讲授&#…

android项目实战之编辑器集成

引言 项目需要用到编辑器&#xff0c;采用RichEditor&#xff0c;如下效果 实现 1. 引入库2 implementation jp.wasabeef:richeditor-android:2.0.0 2. XML <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width&q…

LeetCode:2008. 出租车的最大盈利(dp C++)

目录 2008. 出租车的最大盈利 题目描述&#xff1a; 实现代码与解析&#xff1a; DP 二分&#xff08;两种写法&#xff09; 原理思路&#xff1a; 2008. 出租车的最大盈利 题目描述&#xff1a; 你驾驶出租车行驶在一条有 n 个地点的路上。这 n 个地点从近到远编号为 1 …

如何使用 Wordpress?托管, 网站, 插件, 缓存

这是该系列教程的第一个教程&#xff0c;最终将在运行高性能 LEMP 堆栈的阿里云 ECS 实例上运行一个新的 WordPress 站点。 在本教程中&#xff0c;我们将创建一个运行 Ubuntu 16.04 的实例&#xff0c;然后通过创建超级用户并禁用 root 登录来保护服务器&#xff0c;最后配置…

持续集成交付CICD:使用Maven命令下载Nexus制品

目录 一、实验 1.Maven安装 2.Nexus搭建公共组仓库及Maven全局配置文件 3.使用Maven命令下载Nexus制品 一、实验 1.Maven安装 &#xff08;1&#xff09;CentOS环境安装步骤 tar -xf apache-maven-3.8.6-bin.tar.gz #解压 mv apache-maven-3.8.6 /usr/local/maven #移动…

如何进行更好的面试回复之缓存函数在项目中的性能优化?

缓存函数是一种提高函数性能的技术&#xff0c;在函数被调用时&#xff0c;会将计算结果缓存起来&#xff0c;以便在后续的调用中直接返回缓存的结果&#xff0c;从而减少了重复计算的时间。 缓存函数的实现通常包括两个步骤&#xff1a; 判断缓存是否存在&#xff1a;在函数被…

提取视频光流成帧并写入视频中

修改一下配置文件就可以运行了 配置文件 config.py video_path xxxx/dataset/data/huaping/BXDQ05-花屏-1.mp4#要处理的视频路径 frame_path xxxx/dataset/frame#处理成帧之后保存的路径 flow_path xxxx/dataset/flow#处理成光流之后保存的路径 save_video_path xxxx/fe…

自动补全的 select antd react

自动补全的 select antd react 文档&#xff1a;自动补全的 select antd react.note 链接&#xff1a;http://note.youdao.com/noteshare?idf5e4a93d2b9d6be8e459edd4eb86323b&sub19796E9BC04D4ABD9ACE325FDFF59B0E 添加链接描述 import React, { useState, useRef } from…

【1day】泛微e-office OA系统xml.php 文件 SORT_ID 参数 SQL 注入漏洞学习

注:该文章来自作者日常学习笔记,请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与作者无关。 目录 一、漏洞描述 二、影响版本 三、资产测绘 四、漏洞复现

理解传统模式与互联网时代 消费行为模型 AIDMA , AISAS , SICAS

1 AIDMA与AISAS 消费行为模型&#xff0c;以及所诞生的IT岗位 1.1 传统市场营销消费行为模型 AIDMA模型&#xff1a;Attention&#xff08;吸引&#xff09;&#xff0c;Interest &#xff08;兴趣&#xff09;&#xff0c;Desire&#xff08;欲望&#xff09; &#xff0c;Me…

LeetCode 76. 最小覆盖子串 滑动窗口框架

双指针的特殊应用&#xff1a;滑动窗口 代码 题目链接&#xff1a;https://leetcode.cn/problems/minimum-window-substring/description/ 不说废话&#xff0c;直接贴代码&#xff1a; static string minWindow(string s, string t) {// need记录需要匹配的字符串t中每个字…

❤ Mac IDEA使用并运行项目

❤ IDEA导入项目并运行 Mac IDEA使用 (1) 仓库导入 通过获取giett仓库包的url&#xff0c;在idea中导入项目 在gitee里获取项目的ur打开idea&#xff0c;点击 File->new->Project from Version Control (2) 创建数据库ry并导入数据脚本 &#xff08;3&#xff09;修改配…

华为配置Smart Link主备备份示例

定义 Smart Link&#xff0c;又叫做备份链路。一个Smart Link由两个接口组成&#xff0c;其中一个接口作为另一个的备份。Smart Link常用于双上行组网&#xff0c;提供可靠高效的备份和快速的切换机制。 Monitor Link是一种接口联动方案&#xff0c;它通过监控设备的上行接口…