• 使用教程
使用教程
  • 使用教程
加載中...
查無結果
  • 開始使用
    • 歡迎使用 GoInsight.AI
    • 快速入門
  • 知識百科
    • 關鍵概念
    • 知識庫
    • LLM 選擇指南
    • 資料安全性
  • 轻聊机器人
    • 構建輕聊機器人
  • Insight Chat
    • Insight Chat 介紹
  • InsightFlow
    • InsightFlow 介紹
    • InsightFlow的類型
    • 服務與工具
      • 工具
      • 服務
      • Agent 策略
    • 節點
      • 開始節點
      • 回復輸出節點
      • LLM 節點
      • 知識庫檢索節點
      • 文檔讀取節點
      • 檔案寫入節點
      • HTTP 請求節點
      • 知識聚焦大模型節點
      • Agent節點
      • 進度更新節點
      • 工具呼叫節點
      • IF/ELSE 節點
      • 自然語意分類器節點
      • 分支聚合器節點
      • 多分支選擇節點
      • 循環節點
      • 自動繼續節點
      • 文字模板節點
      • 代碼節點
      • JSON 變數提取器節點
      • 自然語意變數提取器節點
      • 變數賦值節點
      • 結束節點
    • 異常處理
      • 節點錯誤處理策略
    • 釋出
      • 發布對話式工作流程
      • 發布服務式工作流
      • 創建你的第一個工作流
  • 團隊管理
    • 訪問控制
    • 使用詳情
首頁 > 使用教程 > InsightFlow > 節點

JSON 變數提取器節點

定義

JSON 變數提取器節點可以從 JSON 格式的輸入資料中提取指定的欄位(值)。這使得解析複雜的 JSON 字串並將其儲存為結構化的資訊成為可能,後續節點可以直接使用。

json variable extractor

快速入門 / 使用方法

節點配置的詳細說明:在 GoInsight.AI 中右鍵點擊並選擇“添加節點”以將“JSON 變數提取器”節點添加到工作流程中。

add json node

1. 配置 JSON 變數提取器節點的值設定

json-value

“輸入值”有兩個選項:“變數”和“值”,具體說明如下:

選項 描述
變數 從工作流程中的其他現有變數中取得 JSON 資料,適用於需要動態 JSON 資料檢索的情境。
值 輸入靜態 JSON 字串作為資料來源,適用於已知且固定的 JSON 資料情境。

如果“輸入值”設置為“變數”,您需要在“設置變數值”中選擇包含有效 JSON 格式資料的現有變數;如果選擇“值”,則需在文本框中輸入 JSON 格式的字串。範例:

{
  "name": "Scout",
  "age": 18
}

2. 配置 JSON 變數提取器節點的提取模式和輸出變數參數

提取模式包括“提取欄位”和“整體輸出”,對應於不同的輸出變數格式,說明如下:

  • 提取欄位:允許您從 JSON 資料中提取特定欄位或巢狀欄位值。
    輸出變數:點擊「+」指定一個或多個輸出變數。每個輸出變數必須包括“變數名稱”、“目標欄位”和“欄位資料類型”。
  • 整體輸出:不提取任何欄位,將整個 JSON 資料作為單一輸出。
    輸出變數:點擊「+」添加輸出變數,必須包括“變數名稱”和“欄位資料類型”。
  • 欄位資料類型選項:
    輸出欄位資料類型涵蓋了 JSON 資料中常見的資料格式,允許使用者根據需要提取和處理不同類型的資料。詳細描述如下:
類型 說明
字串
用於儲存文字資訊,例如姓名、地址等。
數字
用於儲存數值資訊,可以是整數或浮點數,例如年齡、價格等。
布林值
布林值類型,只有兩個值:true 和 false,通常用於邏輯判斷。
陣列[布林]
布林類型的陣列,用於儲存多個布林值,例如任務完成狀態的集合。
陣列[數字]
數值類型的陣列,用於儲存多個數字,例如產品價格、數量等。
陣列[物件]
物件類型的陣列,用於儲存複雜的資料結構,例如使用者資訊列表。
陣列[字串]
字串類型的陣列,可以包含多個字串值,例如多個產品名稱、城市名稱等。
物件
用於以鍵值對格式儲存資料,例如詳細使用者資訊、訂單詳細資訊等。

典型使用案例

假設「輸入值」設置為靜態「值」或現有「變數」,輸入以下 JSON:

{
  "name": "Scout",
  "age": 18
}

如果您想從 JSON 中提取欄位名稱和年齡並將它們儲存在不同的變數中:

1.提取模式:選擇“提取欄位”

第一個輸出變數設定

  • 變數名稱:userName
  • 目標欄位:name
  • 欄位資料類型:字串

第二個輸出變數設定

  • 變數名稱:userAge
  • 目標欄位:age
  • 欄位資料類型:數字

您可以獲得以下兩個輸出變數:

{
  "Outputs": [
    {
      "Name": "userName",
      "Type": "string",
      "Value": "Scout"
    },
    {
      "Name": "userAge",
      "Type": "number",
      "Value": 18
    }
  ]
}

如果您希望將整個 JSON 物件視為單一字串值,例如在向內部和外部系統發送 JSON 資料時。

2.提取模式:選擇“整體輸出”

輸出變數

  • 變數名稱:userInfo
  • 欄位資料類型:物件

您可以獲得以下輸出變數:

{
  "Outputs": [
    {
      "Name": "userInfo",
      "Type": "object",
      "Value": {
        "age": 18,
        "name": "Scout"
      }
    }
  ]
}

3. 輸入 JSON 為多層巢狀結構。

例如,以下 JSON 是多層巢狀結構:

{
  "user": {
    "name": "Scout",
    "info": {
      "age": 18,
      "hobbies": ["read", "run"]
    }
  }
}

如果您想提取「age」欄位,目標欄位為:$.user.info.age

  • 在此 JSON 變數提取器節點的使用情境中,
    $.user.info.age
    是一個通用路徑表達式(JSONPath),用於指定在多層巢狀 JSON 結構中要提取的欄位位置。解釋如下:
符號/內容解釋
$ 符號 $ 代表 JSON 資料的根節點,是路徑表達式的起點。無論 JSON 結構多麼複雜,路徑表達式總是以 $ 開始。
點號 (.) 分隔欄位 點號用於分隔 JSON 物件中的不同層級。每個點號後面跟著當前層級的欄位名稱。

JSON 變數提取器節點支援標準 JSON Path 語法。如果您需要使用更複雜的提取語法,可以參考此文件。需要注意的是,此節點僅支援使用雙引號包裹的字串值 "..." ,不支援單引號 '...'。 例如,在條件過濾情境 [?(@.field == "value")]中,值必須用雙引號括起,才能成功提取。

實用情境案例

json workflow

篩選 YouTube 影片工作流程的步驟:

  • 1. 在開始節點輸入關鍵字。
  • 2. 在 HTTP 節點中輸入 API 資訊,使用關鍵字搜尋對應的 YouTube 影片。
  • 3. 由於 HTTP 回應可能包含大量影片資訊,使用 JSON 變數提取器節點提取所需的標題、發布時間等資訊,篩選掉其他不必要的資訊。

這樣,我們可以直接獲得所需的 YouTube 影片的標題、發布時間和其他資訊。

常見問題

Q1: 為什麼提取結果是空的或出現錯誤?
檢查提取路徑和文件中指定的數據類型是否正確。
Q2: 為什麼 JSON 變數提取器節點的等待時間這麼長?

檢查是否存在以下情況:

  • 一次加載大型 JSON 文件(例如,超過 100MB 的日誌文件)。
  • 提取了太多冗餘字段。
  • 重複解析相同的結構化數據。
更新於: 2025-09-05
這個頁面有用嗎?
上一篇 代碼節點
下一篇 自然語意變數提取器節點
討論

發佈評論 取消回覆

你的電子郵件地址不會被公開。 必填位置已標出*

產品相關的問題?聯繫我們的支援團隊以獲取快速解決方案>
本頁內容
  • 定義
  • 快速開始 / 如何使用
    • 值
    • 提取模式和輸出變數
  • 典型使用案例
  • 實際場景案例
  • 常見問題
加載中...
查無結果