Trackio documentation
Trackio'ya Geçiş
Trackio'ya Geçiş
Diğer deney izleme kütüphanelerinden Trackio'ya geçiş, minimal kod değişikliğiyle kolayca yapılabilir. Bu kılavuz, popüler deney izleme araçlarından nasıl geçiş yapacağınızı gösterir.
Weights & Biases ( wandb )
Weights & Biases'ten Trackio'ya geçiş, Trackio'nun wandb ile birebir aynı API sözdizimini kullanması nedeniyle son derece kolaydır. Çoğu durumda yalnızca import ifadesini değiştirmeniz yeterlidir!
Basit Göç
En temel geçiş, yalnızca içe aktarımınızı değiştirmenizi gerektirir:
- import wandb
+ import trackio as wandb
wandb.init(project="my-project")
wandb.log({"loss": 0.5, "accuracy": 0.8})
wandb.finish()Tam Örnek
Kodunuzun geri kalanının tamamen aynı kaldığını gösteren daha eksiksiz bir örnek:
- import wandb
+ import trackio as wandb
import numpy as np
wandb.init(
project="image-classification",
name="experiment-1",
config={
"learning_rate": 0.01,
"batch_size": 32,
"epochs": 10
}
)
for epoch in range(10):
loss = np.random.random()
accuracy = np.random.random()
wandb.log({
"epoch": epoch,
"loss": loss,
"accuracy": accuracy,
"learning_rate": wandb.config.learning_rate
})
wandb.finish()Gelişmiş Özellikler
Trackio, Tablolar, Görseller, Sesler, 3B nesneler vb. için kayıt tutmayı destekler - wandb ile aynı API:
- import wandb
+ import trackio as wandb
import numpy as np
wandb.init(project="data-analysis")
image_array = np.random.randint(0, 255, (100, 100, 3), dtype=np.uint8)
wandb.log({
"sample_image": wandb.Image(image_array, caption="Generated sample"),
"model_diagram": wandb.Image("architecture.png")
})
columns = ["epoch", "train_loss", "val_loss", "accuracy"]
data = [
[1, 0.8, 0.6, 0.75],
[2, 0.6, 0.5, 0.82],
[3, 0.4, 0.45, 0.89]
]
table = wandb.Table(data=data, columns=columns)
wandb.log({"training_results": table})
wandb.finish()Neptune (neptune)
Neptune'den geçiş, Neptune'ın farklı bir API yapısına sahip olması nedeniyle birkaç ek değişiklik gerektirir, ancak geçiş yine de basittir.
Temel Kayıt Geçiş
- import neptune
+ import trackio
- run = neptune.init_run(
- project="my-workspace/my-project",
- api_token="your-token"
- )
+ trackio.init(project="my-project")
- run["parameters"] = {"learning_rate": 0.01, "batch_size": 32}
- run["metrics/loss"].log(0.5)
- run["metrics/accuracy"].log(0.8)
+ trackio.config.update({"learning_rate": 0.01, "batch_size": 32})
+ trackio.log({"loss": 0.5, "accuracy": 0.8})
- run.stop()
+ trackio.finish()Eğitim Döngüsü Göçünü Tamamla
- import neptune
+ import trackio
import numpy as np
- run = neptune.init_run(
- project="my-workspace/classification-project",
- name="experiment-1",
- tags=["pytorch", "cnn"]
- )
+ trackio.init(
+ project="classification-project",
+ name="experiment-1",
+ tags=["pytorch", "cnn"]
+ )
config = {"learning_rate": 0.01, "epochs": 10, "batch_size": 32}
- run["parameters"] = config
+ trackio.config.update(config)
for epoch in range(config["epochs"]):
# Simulate training
train_loss = np.random.random()
val_accuracy = np.random.random()
# Neptune logging
- run["metrics/train/loss"].log(train_loss)
- run["metrics/val/accuracy"].log(val_accuracy)
- run["metrics/epoch"].log(epoch)
# Trackio logging
+ trackio.log({
+ "train/loss": train_loss,
+ "val/accuracy": val_accuracy,
+ "epoch": epoch
+ })
- run["model/weights"].upload("model.pth")
+ trackio.save("model.pth")
- run.stop()
+ trackio.finish()Ana Geçiş Noktaları
- Başlatma:
neptune.init_run()ifadesinitrackio.init()ile değiştirin - Kayıt tutma: Bireysel metrik atamaları yerine sözlüklerle
trackio.log()kullanın - Temizlik:
run.stop()ifadesinitrackio.finish()ile değiştirin
Göçün Faydaları
- Daha basit API: Düz sözlük günlükleme vs iç içe geçmiş öznitelik erişimi
- Yerel geliştirme: Varsayılan olarak çevrimdışı çalışın
- Ücretsiz barındırma: Panoları Hugging Face Spaces üzerinde ücretsiz olarak dağıtın
- Tanıdık arayüz: Özellikle daha önce
wandbkullandıysanız, API değişmemiştir