Universal experiment and artifact tracking — gain insights and optimize models with confidence.
Modern data science and machine learning workflows involve countless experiments—tweaking hyperparameters, adjusting data preprocessing, testing different architectures, updating dependencies, modifying code. Every change produces different results, but tracking and comparing these variations manually becomes overwhelming:
- Which parameters, environment, or code version led to that breakthrough result last week?
- How does changing the learning rate affect convergence across multiple runs?
- What's the actual performance difference between model architectures?
- Which preprocessing steps improved accuracy by 2%?
- Did upgrading that dependency break model performance?
- What code changes caused the regression?
Without systematic tracking of parameters, metrics, code changes, dependencies, and environment, you're flying blind—relying on scattered notes, terminal output, and memory.
But even with tracking, making sense of the data is hard:
- Manually comparing metrics across dozens of experiments
- Spotting patterns in hyperparameter sweeps
- Understanding why one approach outperformed another
- Deciding which direction to explore next
Artifacta solves both problems by automatically capturing experiments AND helping you understand them—with intelligent visualizations, multi-run comparisons, and LLM-powered analysis to explain what happened and why.
| Feature | Artifacta | MLflow | W&B | Neptune | Comet |
|---|---|---|---|---|---|
| Zero-config install | ✅ | ❌ | ❌ | ❌ | ❌ |
| 100% offline | ✅ | ✅ | ❌ | ❌ | ❌ |
| Built-in lab notebook | ✅ | ❌ | ❌ | ❌ | ❌ |
| AI assistant (LiteLLM) | ✅ | ❌ | ❌ | ❌ | ❌ |
| Domain-agnostic | ✅ | ✅ | ❌ | ❌ | |
| Framework autolog | ✅ | ✅ | ✅ | ✅ | ✅ |
| Team collaboration | ❌ | ✅ | ✅ | ✅ | |
| Model deployment | ❌ | ✅ | ✅ | ✅ | ✅ |
Legend: ✅ Yes |
For detailed feature comparisons (deployment, visualization, integrations), see the full documentation.
What makes Artifacta different:
- Zero configuration: Pre-built UI bundled with Python package—
pip installand you're done. No Node.js, Docker, or build tools required - Truly offline-first: Works 100% locally without any cloud dependencies, license servers, or internet connection
- Server-side plot generation: Log data primitives (Series, Scatter, Matrix), not matplotlib figures—Artifacta renders plots for you. No need to create and upload images (though you can if you want)
- Built-in electronic lab notebook: Rich text editor with LaTeX support, file attachments, and per-project organization—not available in any competitor
- AI chat interface: Built-in LLM chat (OpenAI, Anthropic, local models) to analyze experiments, results, and code. W&B and Comet have AI features in premium tiers only
- Domain-agnostic design: Primitives work for any field—ML, A/B tests, physics, finance, genomics, climate science. Not ML-only like most alternatives
- Rich artifact previews: Built-in viewers for video, audio, PDFs, code, images. MLflow only previews images; others require external viewers
- Interactive artifact lineage: Visual flow graph showing how artifacts relate. MLflow has no lineage visualization
Automatic Plot Discovery
Artifacta automatically generates visualizations based on your data shape and metadata. No manual plot configuration needed.
Artifact Management
Browse and preview datasets, models, code, images, videos, and documents with built-in file viewers.
Prerequisites: Python 3.9+
pip install artifactaThat's it! The UI is pre-built and bundled. No Node.js required.
artifacta uiThe web UI will be available at http://localhost:8000 (default).
You can customize host and port:
artifacta ui --host 0.0.0.0 --port 8000Development Mode: Run with hot-reload for UI development:
artifacta ui --devfrom artifacta import Series, init, log
# Initialize a run
run = init(
project="my-project",
name="experiment-1",
config={"learning_rate": 0.001, "batch_size": 32}
)
# Log metrics during training
for epoch in range(10):
train_loss = train_model() # Your training code
log("metrics", Series(
index="epoch",
fields={
"train_loss": [train_loss],
"epoch": [epoch]
}
))
# Log artifacts (models, plots, etc.)
run.log_artifact("model.pt", "path/to/model.pt")Full documentation available at: User Guide
Build and serve docs locally:
pip install artifacta[dev]
cd docs
make html # Generates both JSDoc (UI) and Sphinx (Python) docs
python -m http.server 8001 --directory _build/htmlThen navigate to http://localhost:8001
Artifacta provides rich primitives for structured logging:
- Series - Time series data (loss curves, accuracy over time)
- Curve - ROC curves, PR curves with AUC metrics
- Distribution - Histograms and distributions
- Matrix - Confusion matrices and heatmaps
- Scatter - 2D scatter plots (embeddings, parameter spaces)
- BarChart - Categorical comparisons
- Table - Structured tabular data
All primitives are automatically visualized in the Plots tab.
- Plots - Auto-generated visualizations with multi-run overlay
- Sweeps - Hyperparameter analysis with parallel coordinates
- Artifacts - File browser with preview for code, images, video, audio
- Tables - Metric aggregation and comparison tables
- Lineage - Visual artifact provenance graphs
- Notebooks - Rich text lab notebook with LaTeX support
- Chat - AI assistant for experiment analysis
Examples are organized by category in examples/:
Core examples (examples/core/):
- Basic tracking - Metrics, parameters, and artifacts
- All primitives - Series, Scatter, Distribution, Matrix, Bar, and more
ML frameworks (examples/ml_frameworks/):
- PyTorch (MNIST image classification)
- TensorFlow/Keras (regression)
- scikit-learn (classification)
- XGBoost (regression)
Domain-specific (examples/domain_specific/):
- A/B testing with statistical analysis
- Protein expression analysis
Additional domains - 14 examples in tests/domains/:
- Climate, Computer vision, Finance, Genomics, Physics, Robotics, Audio/Video, and more
Run examples:
# Linux/macOS
source venv/bin/activate
python examples/core/01_basic_tracking.py
python examples/ml_frameworks/pytorch_mnist.py
python examples/domain_specific/ab_testing_experiment.py
# Windows (PowerShell)
venv\Scripts\Activate.ps1
python examples/core/01_basic_tracking.py
python examples/ml_frameworks/pytorch_mnist.py
python examples/domain_specific/ab_testing_experiment.py
# Windows (cmd)
venv\Scripts\activate.bat
python examples/core/01_basic_tracking.py
python examples/ml_frameworks/pytorch_mnist.py
python examples/domain_specific/ab_testing_experiment.py
