Trackio documentation
ランの管理のためのPython API
はじめに
ハウツーガイド
トラッキングハイパーパラメータスイープトレース成果物レジストリダッシュボードを起動するServer をセルフホストするダッシュボードのデプロイと埋め込みプロジェクトの管理ランの管理のためのPython APICLIコマンドログブックストレージスキーマと直接クエリAPI と MCP サーバーアラートML Agents環境変数
統合
API
ランの管理のためのPython API
Trackioは、プロジェクト内のランをプログラムで管理できるPython APIクラス(trackio.Api())を提供しています。このAPIはwandb.Api()に似ており、ランの削除、プロジェクト間のランの移動、およびラン情報のアクセスを行うためのメソッドを提供します。
注: これは、API エンドポイント付きの Web サーバーとして Trackio ダッシュボードを実行するTrackio as an API Serverとは異なります。Python API(trackio.Api())は、ローカルの Trackio データベース内のランを管理するためのクライアントサイドのインターフェースです。
基本的な使用方法
import trackio
# Initialize the API
api = trackio.Api()
# Get all runs in a project
runs = api.runs("my_project")
# Access individual runs
for run in runs:
print(f"Run: {run.name}, Project: {run.project}")
print(f"Config: {run.config}")
# Or access by index
first_run = runs[0]ランの削除
api = trackio.Api()
runs = api.runs("my_project")
# Delete a specific run
run = runs[0]
success = run.delete() # Returns True if successfulプロジェクト間のランの移動
api = trackio.Api()
runs = api.runs("source_project")
# Move a run to a different project
run = runs[0]
success = run.move("target_project") # Returns True if successful
# After moving, the run object's project is updated
print(run.project) # "target_project"ランを移動すると、関連するすべてのデータが転送されます:
- すべてのメトリクスとログ
- 実行設定
- システムメトリクス
- メディアファイル(画像、動画、音声)
実行はソースプロジェクトから完全に削除され、ターゲットプロジェクトに追加されます。
API リファレンス
Api
Trackio Python APIのメインエントリポイントです。
api = trackio.Api()
メソッド
runs(project: str) -> Runs: 指定されたプロジェクトのランのコレクションを返します。プロジェクトが存在しない場合はValueErrorを発生させます。
実行
イテレーションとインデックスアクセスをサポートするランのコレクション。
runs = api.runs("my_project")
len(runs) # Number of runs
runs[0] # First run
for run in runs: # Iterate over runs
...実行
プロジェクト内の単一のランを表します。
プロパティ
id: Trackio が内部で使用している安定した実行識別子name: 人間が読みやすい実行名です。複数の実行が同じ名前を共有できます。project: このランが属するプロジェクトconfig: 実行の設定辞書(遅延読み込み)
注: 複数の実行が同じnameを共有できます。Trackioは内部でid識別子を使用してそれらを区別します。
メソッド
delete() -> bool: 実行をプロジェクトから削除します。成功した場合はTrue、それ以外の場合はFalseを返します。move(new_project: str) -> bool: ランを別のプロジェクトに移動します。成功した場合はTrue、それ以外の場合はFalseを返します。移動が成功すると、ランのprojectプロパティが更新されます。
例
プロジェクト全体の実行をすべて一覧表示
import trackio
from trackio.sqlite_storage import SQLiteStorage
api = trackio.Api()
# Get all projects
projects = SQLiteStorage.get_projects()
# List runs in each project
for project in projects:
print(f"\nProject: {project}")
runs = api.runs(project)
for run in runs:
print(f" - {run.name}")古い実行をクリーンアップ
api = trackio.Api()
runs = api.runs("my_project")
# Delete runs older than a certain date
from datetime import datetime
cutoff_date = datetime(2024, 1, 1)
for run in runs:
if run.config and "_Created" in run.config:
created = datetime.fromisoformat(run.config["_Created"])
if created < cutoff_date:
run.delete()
print(f"Deleted old run: {run.name}")移動して実行を整理する
api = trackio.Api()
# Move all runs from "experiments" to "archive"
source_runs = api.runs("experiments")
for run in source_runs:
run.move("archive")
print(f"Moved {run.name} to archive")