ChatGPT Plugins: Difference between revisions

From AI Wiki
No edit summary
No edit summary
Line 1: Line 1:
{{see also|ChatGPT}}
==Introduction==
==Introduction==
Although language models like [[ChatGPT]] have proven valuable in various applications, they continue to be constrained by their dependence on training data. To augment their abilities, plugins can act as "sensors" for language models, supplying current, individual, or specific information not found in their training data. Additionally, plugins allow language models to carry out secure and controlled actions based on user requests, enhancing the system's overall utility.
Although [[language models]] like [[ChatGPT]] have proven valuable in various [[applications]], they continue to be constrained by their dependence on [[training data]]. To augment their abilities, [[plugins]] can act as "sensors" for language models, supplying current, individual, or specific information not found in their training data. Additionally, plugins allow language models to carry out secure and controlled actions based on user requests, enhancing the system's overall utility.
 
It is anticipated that open standards will be established for AI-facing interfaces, and work is in progress to create an initial version of such a standard. Presently, ChatGPT users are gaining access to existing plugins from early collaborators, starting with ChatGPT Plus subscribers. Developers are also provided the opportunity to develop custom plugins for ChatGPT.


==Browsing==
==Browsing==
Influenced by prior projects like WebGPT, GopherCite, BlenderBot2, LaMDA2, and more, browsing-capable language models can retrieve information from the web, broadening their knowledge beyond their training dataset. This enables ChatGPT to engage with current information and deliver more pertinent responses to user inquiries.
Influenced by prior projects like [[WebGPT]], [[GopherCite]], [[BlenderBot2]], [[LaMDA2]], and more, [[browsing-capable language models]] can retrieve information from the [[web]], broadening their knowledge beyond their training dataset. This enables ChatGPT to engage with current information and deliver more pertinent responses to user inquiries.
 
Empowering language and chat models to perform comprehensive and intelligible research online holds great potential for scalable alignment.


==Code Interpreter==
==Code Interpreter==
The code interpreter supplies ChatGPT with a functional Python interpreter within a protected, firewalled execution environment, as well as temporary disk space. The interpreter plugin assesses code in a persistent session that remains active throughout a chat conversation. Users can upload files to the workspace and download their work results.
The [[code interpreter]] supplies ChatGPT with a functional [[Python]] interpreter within a protected, firewalled execution environment, as well as temporary disk space. The interpreter plugin assesses code in a persistent session that remains active throughout a chat conversation. Users can upload files to the workspace and download their work results.


The incorporation of a code interpreter intends to establish a natural interface for computer functionalities, streamlining workflows and expanding accessibility. Preliminary user studies have recognized several use cases for the code interpreter:
The incorporation of a code interpreter intends to establish a natural interface for computer functionalities, streamlining workflows and expanding accessibility. Preliminary user studies have recognized several use cases for the code interpreter:


Resolving mathematical problems
*Resolving mathematical problems
Conducting data analysis and visualization
*Conducting data analysis and visualization
Converting files between different formats
*Converting files between different formats


==Retrieval==
==Retrieval==
The open-source retrieval plugin lets ChatGPT access private or organizational information sources, including files, notes, emails, or public documentation, upon user authorization. By posing questions or conveying requirements in natural language, users can acquire pertinent document excerpts from their data sources.
The retrieval plugin allows ChatGPT access private or organizational information sources, including files, notes, emails, or public documentation, upon user authorization. Users can acquire pertinent document excerpts from their data sources by posing questions or conveying requirements in [[natural language]].


Developers can deploy their own version of the plugin, which utilizes OpenAI embeddings and collaborates with an array of vector databases (Milvus, Pinecone, Qdrant, Redis, Weaviate, or Zilliz) for document indexing and searching. Information sources can be synchronized with the database via webhooks.
[https://github.com/openai/chatgpt-retrieval-plugin github link]
 
Developers can deploy their own version of the plugin, which utilizes [[OpenAI embeddings]] and collaborates with an array of [[vector database]]s ([[Milvus]], [[Pinecone]], [[Qdrant]], [[Redis]], [[Weaviate]], or [[Zilliz]]) for [[document indexing]] and [[document searching|searching]]. Information sources can be synchronized with the database via webhooks.


Developers can begin by visiting the retrieval plugin repository.
Developers can begin by visiting the retrieval plugin repository.
Line 28: Line 27:
Third-party plugins are characterized by a manifest file that contains a machine-readable outline of the plugin's features, execution guidelines, and user-oriented documentation. The process of developing a plugin comprises the following stages:
Third-party plugins are characterized by a manifest file that contains a machine-readable outline of the plugin's features, execution guidelines, and user-oriented documentation. The process of developing a plugin comprises the following stages:


Design an API with endpoints that the language model can access. This can be a new API, a pre-existing API, or a wrapper around an existing API specifically crafted for language models.
#Design an API with endpoints that the language model can access. This can be a new API, a pre-existing API, or a wrapper around an existing API specifically crafted for language models.
Generate an OpenAPI specification to outline the API and a manifest file that connects to the OpenAPI spec and comprises plugin-related metadata.
#Generate an OpenAPI specification to outline the API and a manifest file that connects to the OpenAPI spec and comprises plugin-related metadata.
 
When initiating a conversation on chat.openai.com, users can choose which third-party plugins to activate. The language model is presented with documentation about the enabled plugins as part of the conversation context, permitting the model to call suitable plugin APIs as required to satisfy user intentions. Although current plugins are designed for accessing backend APIs, the investigation of plugins able to call client-side APIs continues.
When initiating a conversation on chat.openai.com, users can choose which third-party plugins to activate. The language model is presented with documentation about the enabled plugins as part of the conversation context, permitting the model to call suitable plugin APIs as required to satisfy user intentions. Although current plugins are designed for accessing backend APIs, the investigation of plugins able to call client-side APIs continues.


==List of Plugins==
==List of Third-Party Plugins==
 
==How to Create A Plugin==


==Documentation==
==Documentation==
[https://platform.openai.com/docs/plugins/introduction OpenAI ChatGPT Plugins Documentation]
[https://platform.openai.com/docs/plugins/introduction OpenAI ChatGPT Plugins Documentation]

Revision as of 12:29, 7 April 2023

See also: ChatGPT

Introduction

Although language models like ChatGPT have proven valuable in various applications, they continue to be constrained by their dependence on training data. To augment their abilities, plugins can act as "sensors" for language models, supplying current, individual, or specific information not found in their training data. Additionally, plugins allow language models to carry out secure and controlled actions based on user requests, enhancing the system's overall utility.

Browsing

Influenced by prior projects like WebGPT, GopherCite, BlenderBot2, LaMDA2, and more, browsing-capable language models can retrieve information from the web, broadening their knowledge beyond their training dataset. This enables ChatGPT to engage with current information and deliver more pertinent responses to user inquiries.

Code Interpreter

The code interpreter supplies ChatGPT with a functional Python interpreter within a protected, firewalled execution environment, as well as temporary disk space. The interpreter plugin assesses code in a persistent session that remains active throughout a chat conversation. Users can upload files to the workspace and download their work results.

The incorporation of a code interpreter intends to establish a natural interface for computer functionalities, streamlining workflows and expanding accessibility. Preliminary user studies have recognized several use cases for the code interpreter:

  • Resolving mathematical problems
  • Conducting data analysis and visualization
  • Converting files between different formats

Retrieval

The retrieval plugin allows ChatGPT access private or organizational information sources, including files, notes, emails, or public documentation, upon user authorization. Users can acquire pertinent document excerpts from their data sources by posing questions or conveying requirements in natural language.

github link

Developers can deploy their own version of the plugin, which utilizes OpenAI embeddings and collaborates with an array of vector databases (Milvus, Pinecone, Qdrant, Redis, Weaviate, or Zilliz) for document indexing and searching. Information sources can be synchronized with the database via webhooks.

Developers can begin by visiting the retrieval plugin repository.

Third-Party Plugins

Third-party plugins are characterized by a manifest file that contains a machine-readable outline of the plugin's features, execution guidelines, and user-oriented documentation. The process of developing a plugin comprises the following stages:

  1. Design an API with endpoints that the language model can access. This can be a new API, a pre-existing API, or a wrapper around an existing API specifically crafted for language models.
  2. Generate an OpenAPI specification to outline the API and a manifest file that connects to the OpenAPI spec and comprises plugin-related metadata.

When initiating a conversation on chat.openai.com, users can choose which third-party plugins to activate. The language model is presented with documentation about the enabled plugins as part of the conversation context, permitting the model to call suitable plugin APIs as required to satisfy user intentions. Although current plugins are designed for accessing backend APIs, the investigation of plugins able to call client-side APIs continues.

List of Third-Party Plugins

How to Create A Plugin

Documentation

OpenAI ChatGPT Plugins Documentation