已比較的版本

索引鍵

  • 此行已新增。
  • 此行已移除。
  • 格式已變更。

Python type plugin, 是針對比較複雜需求而設計, 例如您希望plugin可以先去arxiv, github 查詢最新的資訊, 再來請DaVinci幫忙摘要,或是希望plugin 可以使用自己設計的程式運算, python plugin 會先運行您提供的python code, 之後再丟給DaVinci 進行回答.

Python Type Plugin example:

程式碼區塊
{
  "id": "ScholarChat",
  "schema_version": "v2.0",
  "name_for_human": "ScholarChat",
  "name_for_model": "ScholarChat",
  "description_for_human": "ScholarChat",
  "description_for_model": "You can reach out to this tool to seach for any acadamically related information on the web.",
  "auth": {
    "type": "none"
  },
  "api": {
    "type": "python",
    "python": {
      "source": "import json\nimport asyncio\nimport re\nfrom pyodide.http import pyfetch\nimport xml.etree.ElementTree as ET\nfrom urllib.parse ...{python code here}"
    }
  }
}

...

什麼是 Python Plugin?

Python Plugin 是在 browser 中使用 Pyodide 執行 python code 的 plugin 執行方式

您可以:

  1. 使用 open() function 打開對話中對應的 DVCx

  2. 使用 matplotlib 繪製圖表

  3. 使用 pyfetch 送出 HTTP request

  4. 使用內建的 function chat() 和 DaVinci 本身 Model 對話

使用方法

  1. 準備你的 python code

  2. 儲存 id, names, descriptions 以及對應的 python code 放到 plugin.json 中

    image-20240204-163928.pngImage Added

內建 global variable

global variable

用途

使用範例

PLUGIN_USER_COOKIE

用來辨識使用者身分

image-20240204-164357.pngImage Added

CURRENT_CONVERSATION

單一對話中的所有訊息

image-20240204-164738.pngImage Added

SELECTED_MODEL_TOKEN_LIMIT

當下 Model 的對應 token limit

可和 count_token function 一併使用,確保對話過程不會超出 Model 限制

image-20240204-170841.pngImage Added

SELECTED_FILES

對話中所選取的對應 DVCx 檔資訊

讀取第 1 個 DVCx 檔案的 subject 資訊

image-20240204-165430.pngImage Added

內建 Function

Function name

用途

使用範例

chat

使用 DaVinci 內建的 Model 送出 prompt

image-20240204-165154.pngImage Added

count_token

計算文字會使用多少 token

可和 SELECTED_MODEL_TOKEN_LIMIT 一併使用,確保對話過程不會超出 Model 限制

image-20240204-170841.pngImage Added

emb

使用 DaVinci 內建的 embedding 功能針對文字進行 embedding 操作

image-20240204-165728.pngImage Added