Trackio documentation

API Python để quản lý các lần chạy

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

API Python để quản lý các lần chạy

Trackio cung cấp một lớp API Python (trackio.Api()) cho phép bạn quản lý các run trong dự án của mình một cách lập trình. API này tương tự như wandb.Api() và cung cấp các phương thức để xóa run, di chuyển run giữa các dự án và truy cập thông tin run.

Lưu ý: Điều này khác với Trackio dưới dạng API Server, nơi chạy dashboard Trackio như một web server với các API endpoints. API Python (trackio.Api()) là giao diện phía client để quản lý các run trong cơ sở dữ liệu Trackio cục bộ của bạn.

Cách sử dụng cơ bản

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]

Xóa các lần chạy

api = trackio.Api()
runs = api.runs("my_project")

# Delete a specific run
run = runs[0]
success = run.delete()  # Returns True if successful

Chuyển các Run Giữa các Dự án

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"

Khi bạn di chuyển một run, tất cả dữ liệu liên quan sẽ được chuyển đi:

  • Tất cả các chỉ số và nhật ký
  • Cấu hình chạy
  • Chỉ số hệ thống
  • Tệp phương tiện (ảnh, video, âm thanh)

Chạy được xóa hoàn toàn khỏi dự án nguồn và thêm vào dự án đích.

Tham khảo API

Api

Điểm vào chính cho API Python của Trackio.

api = trackio.Api()

Phương thức

  • runs(project: str) -> Runs: Trả về một tập hợp các runs cho dự án được chỉ định. Ném ValueError nếu dự án không tồn tại.

Chạy

Bộ sưu tập các lần chạy hỗ trợ lặp và chỉ mục.

runs = api.runs("my_project")
len(runs)  # Number of runs
runs[0]    # First run
for run in runs:  # Iterate over runs
    ...

Chạy

Đại diện cho một lần chạy duy nhất trong một dự án.

Thuộc tính

  • id: Định danh chạy ổn định được Trackio sử dụng bên trong
  • name: Tên chạy có thể đọc được bằng người. Nhiều lần chạy có thể dùng chung cùng một tên.
  • project: Dự án mà lượt chạy này thuộc về
  • config: Từ điển cấu hình của lần chạy (tải theo yêu cầu)

Lưu ý: Nhiều lần chạy có thể dùng chung cùng một name, vì Trackio sẽ sử dụng định danh id để phân biệt chúng bên trong.

Phương thức

  • delete() -> bool: Xóa run khỏi dự án của nó. Trả về True nếu thành công, False nếu không.
  • move(new_project: str) -> bool: Di chuyển run sang một project khác. Trả về True nếu thành công, False nếu không. Cập nhật thuộc tính project của run sau khi di chuyển thành công.

Ví dụ

Liệt kê tất cả các lần chạy trên các dự án

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}")

Dọn dẹp các lần chạy cũ

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}")

Tổ chức các lần chạy bằng cách di chuyển chúng

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")
Update on GitHub