---
url: https://docs.oakxgen.ai/zh-Hant-TW/guide/logs/chat-logs-find-and-filter.md
description: >-
  側邊欄「日誌與用量」底下的系統日誌，查的是真實客人跟 agent 的對話，跟「對話」頁面的後台試聊是兩件事。這篇說明怎麼選
  agent、用關鍵字跟日期篩選聊天室，以及匯出 CSV 能拿到什麼。
---

## 跟「對話」頁面不是同一件事

側邊欄**日誌與用量**底下的**系統日誌**，查的是客人（或呼叫 API 的服務）跟 agent
之間真實發生過的對話。這跟**對話**頁面（見〈怎麼新增、切換、找回對話〉）完全不同——
那個是你自己拿 agent 測試用的地方，這裡是稽核與除錯真實流量用的地方。要看客人
到底問了什麼、AI 怎麼回、送了幾則、有沒有送失敗，來這裡查。

看這頁需要**檢視對話紀錄**這個能力，見〈自訂角色與能力的連帶關係〉。

## 第一步：選一顆 Agent

進來先看到的是 agent 清單，每一列列出**代理名稱**跟**聊天室數量**。上方**搜尋
代理**...是在目前載入的清單裡直接過濾名稱，不會重新呼叫後端。點一列就會進到
這顆 agent 的聊天室列表。

## 進到一顆 Agent 之後：聊天室列表在看什麼

左側列表一列代表一個聊天室（session），每列顯示：

* **圖示**——一般客人對話是人形圖示，API 呼叫進來的是程式碼圖示。
* **標題**——聊天室名稱，沒有名稱時顯示「未命名聊天室」。
* **摘要**——不是 AI 事後生成的東西，是這段對話裡**第一句使用者訊息**的前
  200 字。比自動命名更能一眼看出這段在問什麼。
* **時間與訊息數**——最後一則訊息的時間（沒有訊息就退回建立時間），跟這段
  對話總共幾則訊息。

列表排序是照**最後有動靜的時間**排，不是建立時間——三週前開的對話今天又有
新訊息，它就會跳回最上面，不用往下翻很久才找到還在講的那幾段。

## 怎麼篩選

**搜尋聊天室**——打關鍵字後會 debounce 400ms 才送出查詢（不用等你打完按
Enter），比對的是後端全文搜尋：**聊天室標題或任何一則訊息內容**命中都算，
不是只比對標題。

**起訖日期**——這裡有個容易搞混的地方：日期篩的是聊天室的**建立日期**，
不是「最後一則訊息的時間」。如果一段對話是很久以前開始的、但今天才剛有
新回覆，篩「今天」不會篩到它——因為篩的是「這段對話從什麼時候開始」，
不是「最近有沒有動靜」。跟前面提到的排序邏輯（照最後動靜排）是兩件不同
的事，篩選跟排序刻意各自看不同的時間欄位。

## 匯出 CSV

列表標題右邊的下載圖示會把**目前套用的搜尋／日期篩選條件**送給後端匯出，
不是匯出全部聊天室——先篩好範圍再匯出，拿到的才是你要的那一批。

匯出的 CSV 一列是**一則訊息**，不是一個聊天室一列，欄位包含：聊天室
ID／名稱、是否為 API 呼叫、訊息 ID、時間、角色、內容、工具呼叫、引用來源、
使用的模型、token 用量。

兩個實際使用上要注意的限制：

* **匯出上限 2 萬列**，超過的部分會被截斷，畫面上不會另外跳警告——篩選範圍
  太大（例如整個組織、跨好幾個月）時，建議先縮小日期範圍再匯出，不然拿到的
  資料可能悄悄少了一段。
* **匯出需要另一個能力**：檢視列表用的是「檢視對話紀錄」（`log.view`），
  匯出 CSV 用的是另一個獨立能力「匯出對話紀錄」（`log.export`）。如果你看得到
  聊天室列表，按下匯出卻一直失敗，很可能是角色只給了檢視、沒有給匯出——去
  〈自訂角色與能力的連帶關係〉檢查角色設定，不是系統故障。
