Google Cloud 遙測與記錄外掛程式

Google Cloud 外掛程式會將 Firebase Genkit 的遙測資料和記錄資料匯出至 Google Cloud 作業套件

事前準備

如要在本機執行使用此外掛程式的流程,需要 已安裝 Google Cloud CLI 工具

設定 Google Cloud 帳戶

您必須具備 Google Cloud 帳戶 (如果您還沒有帳戶,請先註冊) 和 Google Cloud 專案,才能使用這個外掛程式。

新增外掛程式之前,請先確認專案已啟用下列 API:

專案的 API 資訊主頁中應會列出這些 API。

如要進一步瞭解如何啟用及停用 API,請按這裡

設定

如要啟用將資料匯出至 Google Cloud Tracing、Logging 和 Monitoring,請匯入 googlecloud 套件並執行 Init()。呼叫 Init() 後,您的遙測資料 就會自動匯出

import "github.com/firebase/genkit/go/plugins/googlecloud"
if err := googlecloud.Init(
	ctx,
	googlecloud.Config{ProjectID: "your-google-cloud-project"},
); err != nil {
	return err
}

您必須指定要將遙測資料匯出至哪個 Google Cloud 專案 資料。另外還有一些選用參數:

  • ForceExport:匯出遙測資料,即使在開發環境中執行也不受影響 (例如使用 genkit startgenkit flow:run 時)。這是 測試回覆功能並傳送第一個事件,以便在 Google 監控 Cloud 上精進自己的技能。

    使用這個選項時,您必須一併提供 Cloud 憑證 本機:

    gcloud auth application-default login
    
  • MetricInterval:匯出遙測資料的間隔時間 (以奈秒為單位) 可能不準確或不適當預設值為 60 秒 (60e9 奈秒)。

  • LogLevel:要匯出的記錄項目的最低嚴重性等級。根據預設 slog.LevelInfo

外掛程式需要您的 Google Cloud 專案憑證。如果您正在跑步 代表來自 Google Cloud 環境 (Cloud Run 等) 的流程 。如要在其他環境中執行,則須完成設定 應用程式預設憑證

透過 Google Cloud 作業套件監控正式環境

部署流程後,請前往 Google Cloud 作業套件,然後選取所需專案。

記錄檔和追蹤記錄

在側邊選單中找到「記錄」並點選「記錄檔探索工具」

畫面會顯示與已部署流程相關聯的所有記錄,包括 console.log()。任何前置字串為 [genkit] 的記錄都是 Genkit-internal 記錄,當中包含可能用於偵錯的資訊。舉例來說,採用 Config[...] 格式的 Genkit 記錄含有特定 LLM 推論的中繼資料,例如溫度和 TopK 值。Output[...] 格式的記錄含有 LLM 回應,Input[...] 記錄則含有提示。Cloud Logging 擁有完善的 ACL,可讓您精細控管機密記錄檔。

如需查看特定記錄行,可以按一下擴充選單 圖示並選取「在追蹤記錄詳細資料中查看」,前往個別追蹤記錄。

系統隨即顯示追蹤記錄預覽窗格,方便您快速查看追蹤記錄的詳細資料。如需完整詳細資料,請按一下「在 Trace 中查看」請點選窗格右上角的連結

Cloud Trace 中最醒目的導覽元素是追蹤記錄散佈圖。其中包含指定時間範圍內收集的所有追蹤記錄。

按一下各個資料點,即可在散佈圖下方顯示詳細資料。

詳細資料檢視畫面會包含流程形狀,包括所有步驟和重要時間資訊。Cloud Trace 可以在這個檢視畫面中交錯與特定追蹤記錄相關的所有記錄,選取 [顯示已展開的事件]即可活動"。

產生結果檢視畫面可讓您詳細檢查追蹤記錄中的記錄檔,包括提示和 LLM 回覆。

指標

選取「記錄」,即可查看 Genkit 匯出的所有指標然後按一下「指標管理」

指標管理主控台提供所有收集到的指標表格,包括 Cloud Run 及其周遭環境的相關指標。按一下「工作負載」畫面上就會顯示一份清單,其中包含 Genkit 收集的指標。前置字串為 genkit 的任何指標都會構成內部 Genkit 指標。

Genkit 會收集多種指標,包括流程層級、動作層級和產生層級指標。每項指標都有幾個實用維度,有助於發揮強大的篩選和分組功能。

常見維度包括:

  • flow_name - 資料流的頂層名稱。
  • flow_path - 跨距及其父項時距鏈結至根時距。
  • error_code:如果發生錯誤,則為對應的錯誤代碼。
  • error_message:如果發生錯誤,則為對應的錯誤訊息。
  • model:模型的名稱。
  • temperature - 推論溫度 value
  • topK - 推論的 TopK
  • topP - 推論的 TopP

流程層級指標

名稱 維度
genkit/流程/要求 流程名稱、error_code、error_message
genkit/流程/延遲 流程名稱

動作層級指標

名稱 維度
genkit/行動/要求 流程名稱、error_code、error_message
genkit/動作/延遲 流程名稱

產生層級指標

名稱 維度
genkit/AI/生成 流量路徑、模型、隨機性參數、topK、topP、error_code、error_message
genkit/ai/generate/input_tokens 流量路徑、模型、溫度、TopK、TopP
genkit/ai/generate/output_tokens 流量路徑、模型、溫度、TopK、TopP
genkit/ai/generate/input_characters 流量路徑、模型、溫度、TopK、TopP
genkit/ai/generate/output_characters 流量路徑、模型、溫度、TopK、TopP
genkit/ai/generate/input_images 流量路徑、模型、溫度、TopK、TopP
genkit/ai/generate/output_images 流量路徑、模型、溫度、TopK、TopP
genkit/ai/生成/延遲 流量路徑、模型、隨機性參數、topK、topP、error_code、error_message

您可以透過 Metrics Explorer 以視覺化方式呈現指標。在側邊選單中選取「記錄」並點選「Metrics Explorer」

按一下「選取指標」即可選取指標下拉式選單,選取「Generic Node」(一般節點)、「Genkit」(Genkit) 和指標。

指標的視覺化呈現取決於其類型 (計數器、直方圖等)。Metrics Explorer 提供強大的匯總和查詢功能,協助依各種維度繪製指標圖表。

遙測延遲

在 Cloud 作業套件中,特定流程的遙測執行前,可能會有略微的延遲。在大多數情況下,這類延遲不會超過 1 分鐘。

配額與限制

請留意以下幾項配額:

費用

Cloud Logging、Cloud Trace 和 Cloud Monitoring 提供免費方案。如需具體定價資訊,請點選下列連結: