全部產品
Search
文件中心

Cloud Monitor:AgentLoop Pipeline 教程:從零構建資料管線

更新時間:May 01, 2026

本教程示範如何構建一條 AgentLoop Pipeline,將 AI Agent 作業記錄經過欄位選取、三級去重、多樣性採樣和 AI 品質評估,產出高品質 Dataset。完成全部步驟約需 5~10 分鐘。

前置條件

開始本教程前,確認以下條件已滿足:

  • 已開通Log Service SLS。

  • 已開通 AgentLoop 服務。如未開通,請在Log Service控制台上方日誌應用導覽列選擇AgentLoop,按頁面提示完成開通。

  • 擁有一個包含 AI Agent 作業記錄的 SLS LogStore。如需建立 LogStore 並配置 Agent 日誌採集,請參見LogStore

  • 已建立一個用於存放處理結果的 AgentLoop Dataset。如需建立 Dataset,請在 AgentLoop 控制台的Dataset頁面完成建立。

說明

請確保當前帳號擁有 SLS Project、LogStore 以及 AgentLoop Dataset 的讀寫權限。如使用 RAM 使用者,需要授予 AliyunLogFullAccess 策略和 AgentLoop Dataset 寫入許可權。

步驟一:分析業務資料與方案設計

本教程以一個客戶支援 Agent 應用的運行資料為實戰情境。該資料由阿里雲可觀測標準探針基於 OT AI 協議採集,完整記錄了使用者與 Agent 的每一次互動 Trace。目標是從約 10,000 條原始 Trace 中篩選出約 300 條高品質、多樣化的評估資料集。

開啟 LogStore,觀察原始日誌的欄位結構、資料量級和常見品質問題(重複記錄、雜訊資料、欄位缺失等),重點確認:

  • 需要哪些欄位 -- 原始日誌可能包含幾十個欄位,實際需要的往往只有使用者輸入、模型輸出、模型名稱等少數幾個。

  • 資料有多髒 -- 是否存在大量重複提問?是否有空值或無效記錄?

  • 處理目標 -- 去重、採樣、AI 評估,還是全流程閉環?

核心思路:先通過去重和採樣大幅縮減資料量,再對精簡後的資料執行 AI 處理。LLM 調用按 Token 計費,「先減後增」可節省 97% 以上的調用成本。

步驟二:定義資料來源

指定 Pipeline 從哪個 LogStore 讀取未經處理資料。

登入AgentLoop控制台,在左側導覽列資料集-資料處理中,選擇任務管理,單擊建立任務。在輸入日誌庫中選擇 LogStore 作為資料輸入,配置 Project、LogStore 名稱及可選的查詢過濾條件。

參數

值(樣本)

說明

project

your-project

SLS Project 名稱

LogStore

your-agent-LogStore

存放 Agent 作業記錄的 LogStore

query

serviceName:your-agent-service and *

可選過濾條件,* 表示讀取全部資料

配置完成後,Pipeline 按調度策略從該 LogStore 讀取原始日誌作為輸入。

說明

query 支援 LogStore 查詢文法,可在入口過濾不需要的日誌類型,減少下遊處理量。

步驟三:欄位選取與預先處理

從原始日誌中選取關鍵字段,提取有效資訊,過濾無效資料。此步驟包含欄位選取、正則提取和空值過濾三個節點。

選取欄位

從原始日誌中選取目標欄位並統一命名,聲明 Pipeline 的輸入 Schema。

參數(Pipeline 欄位名)

值(原始日誌欄位)

說明

question

attributes.input.value

使用者輸入

output

attributes.output.value

Agent 輸出

model

attributes.gen_ai.model_name

模型名稱

trace_id

traceId

鏈路追蹤識別碼

說明

表中鍵是 Pipeline 內部使用的欄位名,值是原始日誌中的欄位名。後續所有節點均使用此處定義的欄位名。

正則提取

原始日誌中的 question 可能包含首碼文本,使用Regex提取真實的使用者提問。

參數

說明

question

regexp_extract(question, '使用者提問:(.*)', 1)

覆蓋已有 question 列,提取「使用者提問:」之後的內容

過濾空值

過濾 question 為空白或過短的記錄。

參數

說明

filter

question IS NOT NULL AND length(question) > 10

保留非空且長度大於 10 的記錄

效果:10,000 條原始日誌經欄位選取、正則提取、空值過濾後約剩 8,000 條有效資料。

步驟四:三級去重

逐級消除不同層次的冗餘資料。三級去重按計算代價從低到高排列:精確去重(字面完全相同)、近似去重(文本高度相似)、語義去重(含義等價)。前置節點先削減資料量,使高代價節點的輸入規模可控。

精確去重

去除 question 完全相同的重複記錄,每組僅保留文本最長的一條。

參數

說明

field

question

按此欄位判斷是否完全相同

效果:8,000 條 → 6,000 條(去除完全相同的重複提問)。

近似去重

去除文本高度相似(如錯別字、標點、空格)的記錄。

參數

說明

field

question

按此欄位做近似比較

threshold

3

編輯距離閾值(推薦預設值)

閾值參考:

閾值

嚴格程度

說明

1 ~ 2

非常嚴格

僅過濾個別字元差異

3

推薦預設

適合大多數文本

5 ~ 7

較寬鬆

可能誤刪有意義差異的文本

效果:6,000 條 → 3,500 條(去除錯別字、標點等微小差異的近似重複)。

語義去重

去除表述不同但含義相同的記錄。

參數

說明

field

question

按此欄位做語義比較

threshold

0.1

語義距離閾值(推薦預設值)

閾值參考:

閾值

嚴格程度

說明

0.05

非常嚴格

僅過濾幾乎同義的表述

0.1

推薦預設

適合大多數語義去重情境

0.15 ~ 0.2

較寬鬆

可能誤刪相關但不同義的文本

效果:3,500 條 → 2,000 條(去除語義等價的不同表述)。

說明

語義去重會自動產生 __dedup_emb 擴充列(Embedding 向量),下一步的聚類節點可直接複用,無需重複計算。

步驟五:多樣性採樣

在保證語義多樣性的前提下,將資料量縮減到可控規模。通過語義聚類 + 分組採樣的組合,先將資料按語義相似性分簇,再從每簇中採樣代表性樣本。

語義聚類

基於 Embedding 向量將資料分為 100 個語義簇。

參數

說明

field

__dedup_emb

直接複用上遊語義去重產生的向量列

n

100

聚類簇數

分組採樣

按簇分組,每簇隨機取 3 條代表性樣本。

參數

說明

by

__cluster_id

按聚類別識別碼 分組

n

3

每簇採樣條數

效果:2,000 條 → 不超過 300 條(100 簇 x 每簇 3 條)。最終產出覆蓋各語義類別的代表性子集。

說明

最終資料量約等於簇數 x 每簇條數。如需更多資料,增大 n 或增加簇數;如需更少資料,減小對應參數即可。

步驟六:AI 品質評估

添加 LLM 調用節點,通過 Prompt 定義 AI 任務。本教程以品質評估為例示範配置方法,只需修改 Prompt 內容即可擴充為標註、合成、翻譯等任意 AI 任務。

參數

說明

prompt

(Prompt 模板)

包含 {{question}}{{output}} 預留位置,要求從準確性、完整性、可讀性三個維度評分

fields

question,output

聲明參與渲染的列名,須與 Prompt 中的預留位置一致

format

json

確保輸出始終是合法 JSON(即使 LLM 返回異常也會兜底)

as

eval

輸出資料行名,評估結果存入 eval

效果:300 條資料不變,每條新增 eval 列,包含 accuracycompletenessreadability 三個維度評分及評估理由。

說明

資料已從 10,000 條縮減到 300 條,LLM 調用成本降低 97%。這正是「先減後增」原則的價值。

步驟七:配置輸出與調度

指定處理結果寫入哪個 Dataset,並配置定時調度策略。

輸出目標

參數

值(樣本)

說明

workspace

your-workspace

Dataset 所在的工作空間

dataset

agent_data_evaluated

目標 Dataset 名稱,處理結果自動寫入

調度策略

參數

值(樣本)

說明

mode

scheduled

調度模式,目前支援定時執行

fromTime

1735689600

調度起始時間,Unix 時間戳記(秒)

interval

15m

調度間隔,支援 15m1h1d

配置完成後,Pipeline 每 15 分鐘自動執行一次,持續從 LogStore 讀取新資料並寫入 Dataset。

完整 Pipeline 配置

將步驟二至步驟七的所有配置合并即可得到完整的 Pipeline 配置。可啟動並執行 JSON 配置請參考去資料去重清洗模板或端到端全流程模板,將 your-projectyour-agent-LogStoreyour-workspace 等預留位置替換為實際值即可。

步驟八:驗證與調優

Pipeline 建立後按調度策略自動運行。驗證運行結果並根據實際效果調整參數。

查看運行結果

  1. 查看 Dataset -- 進入目標 Dataset,確認寫入的資料條數和欄位內容。

  2. 檢查 eval 列 -- 查看 AI 評估結果,確認評分維度和分布是否合理。

  3. 查看執行日誌 -- 如遇報錯,檢查節點引用的欄位名是否與 LogStore 實際欄位一致。

常見錯誤及處理

Pipeline 運行中可能遇到以下錯誤,請根據錯誤現象排查對應原因。

錯誤情境

錯誤現象

排查方向

許可權不足

提示 Permission denied

在 RAM 控制台檢查當前帳號是否已授予 AliyunLogFullAccess 策略和 AgentLoop Dataset 寫入許可權。

LogStore 不存在

提示 LogStore not found

在 SLS 控制台確認 projectLogStore 參數拼字與實際名稱一致。

Dataset 不存在

提示 Dataset not found

在 AgentLoop 控制台確認 workspacedataset 參數拼字與實際名稱一致。

JSON 格式錯誤

提示 Invalid JSON format

檢查 LLM 調用節點的 fields 數組中的欄位名是否與 Prompt 中的 {{field_name}} 預留位置完全一致。

欄位名不一致

節點執行報錯或輸出為空白

檢查節點引用的欄位名是否與 LogStore 實際欄位或上遊節點輸出的欄位名一致。

常見調優方向

調優目標

操作建議

去重太嚴格,資料量太少

增大近似去重的 threshold(如 35),或增大語義去重的 threshold(如 0.10.15

去重太寬鬆,仍有重複

減小閾值,如近似去重設為 2,語義去重設為 0.05

採樣資料量不夠

增大分組採樣的 n(每簇取更多條),或增大聚類簇數

採樣資料量太多

減小分組採樣的 n 或減少聚類簇數

評估維度需調整

修改 LLM 調用節點的 prompt,增減評估維度或調整評分標準

需要更高品質的評估

在 LLM 調用節點中添加 model 參數指定更強模型

增量去重

如果 Pipeline 持續運行(如每 15 分鐘一次),建議為去重節點開啟全域模式,確保跨批次無重複。

參數

說明

global

true

開啟全域去重,與 Dataset 歷史資料做增量比對

workspace

your-workspace

歷史資料所在的工作空間

dataset

agent_data_evaluated

歷史資料所在的 Dataset

說明

全域去重將當前批次資料與 Dataset 歷史資料做增量比對。首批執行時 Dataset 為空白,效果從第二批開始顯現。

進階:擴充 Pipeline

在當前 Pipeline 基礎上,可擴充以下能力:

自動分類標註

在評估節點之後添加一個 LLM 調用節點,對資料做結構化分類標註。通過 Prompt 定義分類維度(如問題分類、使用者意圖、難度等級),format 設為 json,結果存入 anno 列,用於資料分析或模型訓練。

資料增強合成

添加一個 LLM 調用節點,基於已有資料合成語義相似但表述不同的新問答對,擴充訓練資料。結果存入 synthetic 列。超長 Prompt 建議註冊為命名模板(@path 引用),便於版本管理和複用。

智能體深度分析

使用智能體調用節點替代普通 LLM 調用節點,調用數字員工進行深度分析。智能體調用節點封裝了 SOP 流程、知識庫檢索、工具調用等能力,適合多步推理的複雜分析情境。

總結與後續步驟

本教程構建了一條從原始日誌到高品質 Dataset 的完整 Pipeline,涵蓋欄位選取、三級去重、多樣性採樣和 AI 品質評估。通過「先減後增」的設計,10,000 條未經處理資料經過處理後產出約 300 條高品質評估資料,同時 LLM 調用成本降低 97%。

後續可參考以下資源: