管理儀表板
即時監控標註進度、管理標註者和配置設定。
Potato 2.0 包含一個綜合管理儀表板,用於監控標註進度、跟蹤標註者表現以及即時管理任務配置。
訪問儀表板
API 金鑰認證
在配置中設定管理員 API 金鑰:
yaml
admin_api_key: "your-secure-api-key-here"通過 /admin 訪問儀表板,並在提示時輸入您的 API 金鑰。
認證方式
- 直接導航 - 前往
/admin並輸入 API 金鑰 - 基於標頭 - 在請求中包含
X-API-Key標頭 - 除錯模式 - 設定
debug: true用於開發(不建議用於生產環境)
yaml
# Development only
debug: true # Bypasses authentication儀表板標籤頁
概覽標籤頁
標註任務的高層指標:
- 總使用者數 - 已註冊標註者數量
- 總標註數 - 已完成的標註總數
- 完成率 - 資料標註完成百分比
- 活躍會話 - 當前活躍的標註者
- 任務配置 - 當前設定摘要
標註者標籤頁
每個標註者的詳細資訊:
| 列 | 描述 |
|---|---|
| 使用者 ID | 標註者識別符號 |
| 階段 | 當前工作流階段 |
| 標註數 | 已完成數量 |
| 工作時間 | 總花費時間 |
| 速度 | 每小時標註數 |
| 最後活動 | 最近的操作 |
功能:
- 按任意列排序
- 按階段或活動篩選
- 匯出標註者資料
- 檢視單個標註者詳情
實例標籤頁
瀏覽和管理標註實例:
| 列 | 描述 |
|---|---|
| ID | 實例識別符號 |
| 文本預覽 | 前 100 個字元 |
| 標註數 | 已接收的標註數 |
| 分歧度 | 標註者間分歧評分 |
| 標註者 | 標註使用者列表 |
功能:
- 分頁(每頁 25、50 或 100 條)
- 按標註數、分歧度等排序
- 按標註數量篩選
- 檢視完整實例詳情
配置標籤頁
即時修改設定,無需重啟:
- 每使用者最大標註數 - 限制每個使用者可標註的項目數
- 每項最大標註數 - 每個實例的目標標註數
- 分配策略 - 實例如何分配給使用者
更改立即生效。
分配策略
從儀表板配置實例分配方式:
| 策略 | 描述 |
|---|---|
random | 隨機分配 |
ordered | 順序(從頭到尾) |
least_annotated | 優先選擇標註最少的項目 |
max_diversity | 最大化每項的標註者多樣性 |
active_learning | 基於不確定性的優先排序 |
llm_based | LLM 驅動的分配 |
時間分析
儀表板跟蹤詳細的時間資料:
- 總工作時間 - 所有標註會話的總和
- 平均每條標註時間 - 每項的平均時間
- 每小時標註數 - 吞吐率
- 會話時長 - 每次登入會話的時間
時間資料來源於行為跟蹤和頁面互動事件。
配置
基本設定
yaml
# Enable admin dashboard
admin_api_key: "your-secure-api-key"
# Optional: customize admin settings
admin:
session_timeout: 3600 # seconds
max_export_size: 10000 # rows完整配置
yaml
admin_api_key: "your-secure-api-key"
admin:
# Session settings
session_timeout: 3600
# Export limits
max_export_size: 10000
# Dashboard refresh
auto_refresh: true
refresh_interval: 30 # seconds
# Pagination defaults
default_page_size: 50API 端點
管理儀表板由 REST API 端點驅動:
統計
text
GET /api/admin/stats
返回整體任務統計資訊。
標註者
text
GET /api/admin/annotators
GET /api/admin/annotators/{user_id}
列出所有標註者或獲取特定使用者的詳情。
實例
text
GET /api/admin/instances
GET /api/admin/instances/{instance_id}
列出實例,支援分頁和篩選。
配置
text
GET /api/admin/config
POST /api/admin/config
獲取或更新任務配置。
訓練進度
text
GET /api/admin/training/stats
GET /api/admin/training/user/{user_id}
訓練階段統計和每使用者進度。
主動學習
text
GET /api/admin/active-learning/status
GET /api/admin/active-learning/metrics
主動學習模型狀態和效能指標。
監控功能
可疑活動檢測
儀表板可以標記潛在的問題行為:
- 非常快的標註速度
- 異常的會話模式
- 一致的答案模式
- 缺失的標註
品質指標
跟蹤標註品質指標:
- 標註者間一致性
- 每條標註時間分佈
- 標籤分佈平衡
- 訓練階段表現
安全最佳實踐
API 金鑰管理
yaml
# Use environment variables
admin_api_key: ${ADMIN_API_KEY}bash
export ADMIN_API_KEY="your-secure-key"訪問控制
- 使用強大、唯一的 API 金鑰
- 定期輪換金鑰
- 不要公開暴露管理端點
- 在生產環境中使用 HTTPS
審計日誌
儀表板跟蹤管理員操作:
- 配置更改
- 使用者管理操作
- 資料匯出
- 訪問嘗試
配置示例
yaml
task_name: "Sentiment Analysis"
task_dir: "."
port: 8000
# Admin dashboard
admin_api_key: ${ADMIN_API_KEY}
admin:
session_timeout: 7200
auto_refresh: true
refresh_interval: 60
default_page_size: 50
# Data and annotation configuration
data_files:
- "data/reviews.json"
item_properties:
id_key: id
text_key: text
annotation_schemes:
- annotation_type: radio
name: sentiment
labels:
- Positive
- Negative
- Neutral
# Assignment settings (editable from dashboard)
assignment:
strategy: least_annotated
max_annotations_per_user: 100
max_annotations_per_item: 3
output_annotation_dir: "output/"
output_annotation_format: "json"
allow_all_users: true效能考慮
大型資料集
對於包含數千個實例的資料集:
- 使用分頁(實例標籤頁)
- 啟用延遲載入
- 考慮使用資料庫後端以獲得更好的效能
多標註者
對於有多個併發標註者的任務:
- 設定合適的重新整理間隔
- 監控伺服器資源
- 使用資料庫後端以提高可擴充套件性
yaml
# For large-scale deployments
database:
type: mysql
host: localhost
database: potato_db
user: ${DB_USER}
password: ${DB_PASSWORD}故障排除
無法訪問儀表板
- 驗證配置中已設定 API 金鑰
- 檢查 URL 是否為
/admin - 確保 API 金鑰完全匹配
- 檢查配置中是否有拼寫錯誤
儀表板載入緩慢
- 減少頁面大小
- 增加重新整理間隔
- 考慮使用資料庫後端
- 檢查伺服器資源
統計未更新
- 驗證自動重新整理已啟用
- 檢查重新整理間隔設定
- 手動重新整理頁面
- 檢查 JavaScript 錯誤
延伸閱讀
有關實現細節,請參閱源文件。