成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何使用ChatGPT插件工作

譯文 精選
人工智能
OpenAI剛剛宣布了ChatGPT插件——一種讓ChatGPT在Web上執行操作的方法。這不僅意味著ChatGPT可以訪問互聯網并瀏覽最新內容和新聞,還可以代替我們執行一些操作,比如購買雜貨、預訂機票等等。

?譯者 | 崔皓

審校 | 重樓

OpenAI剛剛宣布了ChatGPT插件——一種讓ChatGPT在Web上執行操作的方法。這不僅意味著ChatGPT可以訪問互聯網并瀏覽最新內容和新聞,還可以代替我們執行一些操作,比如購買雜貨、預訂機票等等。

實現過程非常簡單:?

插件提供者使用OpenAPI標準編寫API規范。這是一個已經存在了一段時間的標準,是類似Swagger API文檔工具的支持者。?

然后,將這個規范編譯成提示,向ChatGPT解釋它如何使用API來增強答案。想象一下詳細的提示,包括每個可用端點的描述。?

最后,用戶提出新的問題。如果ChatGPT需要從API中獲取信息,它將在回答之前進行請求并添加到上下文中。?

盡管在撰寫本文時,這個過程已經在官方OpenAI文檔中有所記錄,但訪問受到了限制。由于還沒有獲取訪問權限,我決定根據以上內容實現自己的機制。因此,下面是我嘗試實現自己的ChatGPT插件機制。?

鄭重聲明:我也只能通過公開信息了解ChatGPT插件,并沒有其他渠道了解額外信息。本文的演示是為了說明實現的概念,并不能代表實現之后的樣子。?

選擇API規范?

第一步是了解如何指定API。OpenAI提供了一些樣本API規范,因此我決定使用相同的輸入來實現自己的解決方案,并為單個端點編寫了一個簡單規范。?

我使用DummyJSON,一個專門用于測試的簡單API,特別是“獲取所有代辦事項”的端點。我編寫了以下YAML文件作為規范。?

openapi: 3.0.1
info:
title: TODO Plugin
description: A plugin that allows the user to create and manage a TODO list using ChatGPT.
version: 'v1'
servers:
- url: https://dummyjson.com/todos
paths:
/todos:
get:
operationId: getTodos
summary: Get the list of todos
parameters:
- in: query
name: limit
schema:
type: integer
description: Number of todos to return
- in: query
name: skip
schema:
type: integer
description: Number of todos to skip from the beginning of the list
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/getTodosResponse'
components:
schemas:
getTodosResponse:
type: object
properties:
todos:
type: array
items:
type: object
properties:
id:
type: int
todo:
type: string
completed:
type: bool
userId:
type: string
description: The list of todos.

如上面配置文件所示,一個端點有兩個參數: "limit" 和 "skip"。?

現在,我需要將上面的?

經過反復討論,最終得到了以下結果:?

You are a virtual assistant that helps users with their questions by relying on
information from HTTP APIs. When the user asks a question, you should determine whether
you need to fetch information from the API to properly answer it. If so, you will
request the user to provide all the parameters you need, and then ask them to run the
request for you. When you are ready to ask for a request, you should specify it using
the following syntax:

<http_request>{
"url": "<request URL>",
"method": "<method>",
"body": {<json request body>},
"headers": {<json request headers>}
}</http_request>

Replace in all the necessary values the user provides during the interaction, and do not
use placeholders. The user will then provide the response body, which you may use to
formulate your answer. You should not respond with code, but rather provide an answer
directly.

The following APIs are available to you:

---
<OpenAPI Specification goes here>

告訴ChatGPT以特定的語法回應,并告訴它用戶將提供響應。這是因為AI模型不會執行任何API調用——它必須將該操作委托給不同的系統。由于我們無法訪問ChatGPT的內部組件,于是要求它將HTTP請求委托給用戶。只要隱藏對話轉換對最終用戶不可見就行了用戶甚至感知不到HTTP請求,就萬事大吉了?

編排?

ChatGPT是一個通過REST API公開的AI模型。向OpenAI模型發出請求只是端到端聊天機器人體驗中的一步。這意味著可以設置模型傳遞的信息,以及向最終用戶顯示的信息。?

為了使用ChatGPT實現虛擬助手的功能,我使用了Bot Framework Composer,這是一種基于UI的工具,允許我們構建對話體驗并將其發布到不同的渠道。以下是高級別的解決方案架構:?

我用Bot Framework Composer構建了這個虛擬助手,因為它可以快速部署到多個終端用戶渠道,且只需要很少的代碼。如果您想要復制這個解決方案,您可能還需要考慮使用Power Virtual Agents,尤其是在生產中使用。?

以下是對話流程的構建方式:

1. 用戶提問

2.ChatGPT用預格式化的消息進行回復:

2.<http_request>{
"url": "https://dummyjson.com/todos?limit=5",
"method": "GET",
"body": "",
"headers": {}
}</http_request>

3.Azure Bot檢測到這種格式,并將請求提交給DummyJSON API,而不會牽扯到最終用戶。

4.Azure Bot代表用戶向ChatGPT發出新請求,以獲取響應正文。

5.ChatGPT格式化響應:"這是你的前5個待辦事項:..."

6.Azure Bot回復給用戶。

有一件事情立即引起了我的注意產品可以阻止它通過生成代碼的方式調用其他網站或者應用。出于這個原因,我應用了一個簡單的域名允許列表,這樣保證所有請求只能發送到DummyJSON API,而且只能一次發送一條 – 從而保證消息發送的安全性

以上就是設的整體思路?

最終結果?

上面跳過了一些實現的細節,直到體驗完美為止。這是一個統計工具,預計需要一些試錯,直到找到正確的提示。但最終,這是我與機器人的最終版本進行的對話。?

結論?

ChatGPT插件功能的實現比上面的快速演示要更加復雜。這次Demo的目的是展示如何完成ChatGPT的集成——相信我,我和你一樣對實現過程非常好奇。這個Demo給ChatGPT集成HTTP的能力提供了可能性,我迫不及待想看看社區能夠拋出什么新鮮花樣?

同時,我們作為技術的用戶,也有一種責任感:如果一個有惡意的提示讓Azure Bot向一個未知的服務器發出請求會發生什么?現在有哪些新的攻擊向量?在我編寫的機器人中,應用了簡單的域名白名單——隨著新的用例不斷出現,這是否足夠?我還設法在后續的提示中重寫了API規范——是否存在與此可能相關的風險?有許多AI相關的安全問題需要考慮,而OpenAI當然也意識到了這一點。?

總的來說,這次Demo讓我印象深刻ChatGPT的可能性確實是無限的,我一定會關注這個功能,看它在未來幾周和幾個月內的發展。我也希望盡快在Azure OpenAI中看到它!?

譯者介紹?

崔皓,51CTO社區編輯,資深架構師,擁有18年的軟件開發和架構經驗,10年分布式架構經驗。?

原文標題:??How ChatGPT Plugins (could) work??,作者:MarcoCardoso?

責任編輯:華軒 來源: 51CTO
相關推薦

2023-06-12 17:54:50

2025-06-03 09:08:49

2023-04-12 08:00:00

人工智能ChatGPTPython

2023-10-10 08:00:00

2023-08-02 07:01:37

2023-03-30 12:39:47

2011-09-13 09:49:59

PhoneGap插件

2023-03-01 16:15:16

2023-05-14 19:35:00

2023-02-07 10:09:20

ChatGPT人工智能

2024-01-15 16:28:42

ChatGPTGenAI人工智能

2023-11-13 09:00:00

2023-04-03 11:52:00

ChatGPTDevOps技術

2023-06-26 00:01:11

2023-02-13 11:43:26

CHATGPT人工智能

2023-07-19 08:07:27

ChatGPTSyslog

2023-02-13 14:47:32

人工智能機器學習ChatGPT

2023-05-17 15:38:13

2023-03-03 08:13:35

2023-04-18 10:47:32

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 午夜久草| 波多野结衣一二三区 | 九九免费视频 | 中文字幕第十一页 | 日韩和的一区二区 | 91资源在线 | 浮生影院免费观看中文版 | 中文字幕免费在线 | 欧美久久久久 | 国产精品毛片无码 | 亚洲精品电影在线观看 | 成人1区2区 | 久久精品av| 精品久久久久国产免费第一页 | 久久免费视频网 | 欧美综合一区 | 激情毛片 | 中文字幕在线观看一区二区 | 亚洲精品女优 | 午夜影院在线观看免费 | 中文字幕成人av | 麻豆av免费观看 | 日韩视频一区在线观看 | 91九色在线观看 | 亚洲日本一区二区三区四区 | 国产一区二区久久 | 日本爱爱 | 久久成人精品 | 超碰人人人| 久久久www成人免费精品 | 午夜精品久久久久久 | 午夜电影福利 | 亚洲人在线观看视频 | 欧美中文字幕一区二区三区 | 亚洲国产精品一区 | 麻豆亚洲 | 成人在线免费电影 | 成人欧美一区二区三区在线观看 | 成人精品免费视频 | 欧美a区 | 久久久一区二区三区 |