Skip to main content

Artifacta

Universal experiment and artifact tracking — gain insights and optimize models with confidence.

Python License Code style: black


The Problem

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.


Ecosystem & Alternatives

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 | ⚠️ Partial | ❌ No

For detailed feature comparisons (deployment, visualization, integrations), see the full documentation.


Why Choose Artifacta?

What makes Artifacta different:

  • Zero configuration: Pre-built UI bundled with Python package—pip install and 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

Visual Overview

Automatic Plot Discovery

Plots

Artifacta automatically generates visualizations based on your data shape and metadata. No manual plot configuration needed.

Artifact Management

Artifacts

Browse and preview datasets, models, code, images, videos, and documents with built-in file viewers.


Quick Start

Installation

Prerequisites: Python 3.9+

pip install artifacta

That's it! The UI is pre-built and bundled. No Node.js required.

Start Tracking Server

artifacta ui

The web UI will be available at http://localhost:8000 (default).

You can customize host and port:

artifacta ui --host 0.0.0.0 --port 8000

Development Mode: Run with hot-reload for UI development:

artifacta ui --dev

Log Your First Experiment

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

Documentation

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/html

Then navigate to http://localhost:8001


Core Primitives

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.


Web UI Features

  • 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

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

Metadata

Release files for artifacta 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for artifacta 0.2.0
File Size Uploaded Provenance
artifacta-0.2.0.tar.gz 1.7 MB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for artifacta 0.2.0
File Interpreter ABI Platform
artifacta-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 3.4 MB

Release files / artifacta-0.2.0.tar.gz

Download URL artifacta-0.2.0.tar.gz
Size 1.7 MB
Tags Source
SHA-256 checksum
How to use checksums
3e8a3a1416929e7c29b3cf600fd8b46756a0efaa6d59c51c06b54ef0ddcd9442
BLAKE2b-256 checksum
How to use checksums
37d7ea4fc785de273a6951807056c3894bb65ee66d37173077bf99d58da0a3cc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.7

Release files / artifacta-0.2.0-py3-none-any.whl

Download URL artifacta-0.2.0-py3-none-any.whl
Size 1.7 MB
Tags Python 3
SHA-256 checksum
How to use checksums
f4a6a45edee38f4eeb89f8d0f0b795a4f158a5efec8ddee6a20cdc1d38d450c6
BLAKE2b-256 checksum
How to use checksums
ec78607f45a4664ec95773af829b2ca72ddedfbf43c651adaca70c568ca35a51
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.7

Security for artifacta 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page