{"adoption": {"forks": 205, "observed_at": "2026-08-28T04:04:25.551819+00:00", "stars": 1336}, "canonical_url": "https://ross.abutalabs.com/products/intro_dgm", "card": {"archived": false, "artifact_type": "learning-resource", "description": "\"Deep Generative Modeling\": Introductory Examples", "domain": ["deep-learning", "machine-learning", "tutorials"], "enriched": true, "function": ["machine-learning", "deep-learning"], "health_score": 68, "homepage": null, "language": "Jupyter Notebook", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["jmtomczak/intro_dgm"], "name": "jmtomczak/intro_dgm", "platform": ["python"], "pushed_at": "2026-04-28T23:22:38+00:00", "repo": "jmtomczak/intro_dgm", "stars": 1336, "tags": ["generative-models", "variational-autoencoder", "gan", "flow-based-models", "energy-based-models", "score-based-models", "pytorch", "jupyter-notebooks", "neural-compression", "book-companion"], "topics": ["deep-generative-modelling", "variational-autoencoder", "flow-based-modeling", "autoregressive-modeling", "pytorch", "generative-adversarial-network", "energy-based-model", "neural-compression", "deep-learning", "generative-ai", "score-based-generative-modeling"], "urls": [], "use_cases": ["learn how variational autoencoders work with runnable code", "understand flow-based and autoregressive generative models", "get simple PyTorch examples of GANs and energy-based models", "study score-based generative modeling basics", "follow along with a deep generative modeling textbook", "run quick generative model experiments on a laptop"], "what_it_is": "A companion repository of introductory Jupyter Notebook examples for the book 'Deep Generative Modeling' by Jakub Tomczak. It provides simple, runnable PyTorch implementations of major deep generative model classes such as autoregressive models, flows, VAEs, GANs, energy-based, and score-based models.", "when_to_avoid": ["you need production-ready or state-of-the-art generative model implementations", "you want a full training framework with advanced features and scaling", "you need large-scale image or text generation systems"], "when_to_choose": ["you are learning deep generative models from scratch", "you want minimal, readable PyTorch implementations to study line by line", "you are reading the 'Deep Generative Modeling' book and want its code examples", "you need lightweight examples that run on a laptop without GPUs"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/intro_dgm", "repo": "jmtomczak/intro_dgm", "role": "main", "score": 68}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.551819+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.678715+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "86408811c0500703ae011c8f434fe2f1a5441231b29d7ebad17638f20dd08b54", "fetched_at": "2026-08-28T04:04:25.551819+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jmtomczak/intro_dgm"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.551819+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.678715+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "86408811c0500703ae011c8f434fe2f1a5441231b29d7ebad17638f20dd08b54", "fetched_at": "2026-08-28T04:04:25.551819+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jmtomczak/intro_dgm"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.678715+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "86408811c0500703ae011c8f434fe2f1a5441231b29d7ebad17638f20dd08b54", "fetched_at": "2026-08-28T04:04:25.551819+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jmtomczak/intro_dgm"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.551819+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.551819+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.551819+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.678715+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "86408811c0500703ae011c8f434fe2f1a5441231b29d7ebad17638f20dd08b54", "fetched_at": "2026-08-28T04:04:25.551819+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jmtomczak/intro_dgm"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.551819+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.551819+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.678715+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "86408811c0500703ae011c8f434fe2f1a5441231b29d7ebad17638f20dd08b54", "fetched_at": "2026-08-28T04:04:25.551819+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jmtomczak/intro_dgm"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.551819+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.551819+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.551819+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.678715+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "86408811c0500703ae011c8f434fe2f1a5441231b29d7ebad17638f20dd08b54", "fetched_at": "2026-08-28T04:04:25.551819+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jmtomczak/intro_dgm"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.551819+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:25.551819+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.678715+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "86408811c0500703ae011c8f434fe2f1a5441231b29d7ebad17638f20dd08b54", "fetched_at": "2026-08-28T04:04:25.551819+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jmtomczak/intro_dgm"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.678715+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "86408811c0500703ae011c8f434fe2f1a5441231b29d7ebad17638f20dd08b54", "fetched_at": "2026-08-28T04:04:25.551819+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jmtomczak/intro_dgm"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.678715+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "86408811c0500703ae011c8f434fe2f1a5441231b29d7ebad17638f20dd08b54", "fetched_at": "2026-08-28T04:04:25.551819+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jmtomczak/intro_dgm"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:44:15.678715+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "86408811c0500703ae011c8f434fe2f1a5441231b29d7ebad17638f20dd08b54", "fetched_at": "2026-08-28T04:04:25.551819+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jmtomczak/intro_dgm"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 79, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2048, "days_push": 127, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 68, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}