{"adoption": {"forks": 641, "observed_at": "2026-08-28T04:09:43.510081+00:00", "stars": 6452}, "canonical_url": "https://ross.abutalabs.com/products/storydiffusion", "card": {"archived": false, "artifact_type": "library", "description": "Accepted as [NeurIPS 2024] Spotlight Presentation Paper", "domain": ["artificial-intelligence", "image-processing", "deep-learning"], "enriched": true, "function": ["image-processing", "video-processing", "machine-learning", "deep-learning"], "health_score": 20, "homepage": null, "language": "Jupyter Notebook", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["HVision-NKU/StoryDiffusion"], "name": "HVision-NKU/StoryDiffusion", "platform": ["python"], "pushed_at": "2024-09-26T02:17:52+00:00", "repo": "HVision-NKU/StoryDiffusion", "stars": 6452, "tags": ["diffusion-models", "stable-diffusion", "text-to-image", "image-to-video", "character-consistency", "story-generation", "comics", "neurips-2024", "video", "gpu"], "topics": [], "urls": [], "use_cases": ["generate consistent comic strips from text prompts", "create character-consistent image sequences with stable diffusion", "generate long videos from a sequence of images", "make a visual story with the same character across many images", "add consistent self-attention to my SDXL pipeline", "turn text prompts into an illustrated storybook"], "what_it_is": "StoryDiffusion is the official implementation of a NeurIPS 2024 Spotlight paper introducing Consistent Self-Attention for character-consistent long-range image generation and a motion predictor for long video generation. It plugs into SD1.5 and SDXL-based diffusion models to generate consistent image sequences, comics, and videos from text prompts.", "when_to_avoid": ["you need single unrelated images with no character consistency", "you lack a GPU or the compute for diffusion model inference", "you need production-grade video generation rather than a research implementation", "you need fine-grained control over video motion beyond the motion predictor"], "when_to_choose": ["you need the same character to appear consistently across many generated images", "you want to build comics or visual stories from text prompts", "you want to extend consistent images into long videos", "you already use SD1.5 or SDXL pipelines and want a hot-pluggable consistency module"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/storydiffusion", "repo": "HVision-NKU/StoryDiffusion", "role": "main", "score": 24}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.510081+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:44:39.132057+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48d2ebf0ff9aa2d6175a1f3f2c96e3e615a83db32d07f43ce8f1f2965d4dd640", "fetched_at": "2026-08-28T04:09:43.510081+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HVision-NKU/StoryDiffusion"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.510081+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:44:39.132057+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48d2ebf0ff9aa2d6175a1f3f2c96e3e615a83db32d07f43ce8f1f2965d4dd640", "fetched_at": "2026-08-28T04:09:43.510081+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HVision-NKU/StoryDiffusion"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:44:39.132057+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48d2ebf0ff9aa2d6175a1f3f2c96e3e615a83db32d07f43ce8f1f2965d4dd640", "fetched_at": "2026-08-28T04:09:43.510081+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HVision-NKU/StoryDiffusion"}], "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:09:43.510081+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.510081+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.510081+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:44:39.132057+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48d2ebf0ff9aa2d6175a1f3f2c96e3e615a83db32d07f43ce8f1f2965d4dd640", "fetched_at": "2026-08-28T04:09:43.510081+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HVision-NKU/StoryDiffusion"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.510081+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.510081+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:44:39.132057+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48d2ebf0ff9aa2d6175a1f3f2c96e3e615a83db32d07f43ce8f1f2965d4dd640", "fetched_at": "2026-08-28T04:09:43.510081+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HVision-NKU/StoryDiffusion"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.510081+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.510081+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.510081+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:44:39.132057+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48d2ebf0ff9aa2d6175a1f3f2c96e3e615a83db32d07f43ce8f1f2965d4dd640", "fetched_at": "2026-08-28T04:09:43.510081+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HVision-NKU/StoryDiffusion"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.510081+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.510081+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:44:39.132057+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48d2ebf0ff9aa2d6175a1f3f2c96e3e615a83db32d07f43ce8f1f2965d4dd640", "fetched_at": "2026-08-28T04:09:43.510081+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HVision-NKU/StoryDiffusion"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:44:39.132057+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48d2ebf0ff9aa2d6175a1f3f2c96e3e615a83db32d07f43ce8f1f2965d4dd640", "fetched_at": "2026-08-28T04:09:43.510081+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HVision-NKU/StoryDiffusion"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:44:39.132057+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48d2ebf0ff9aa2d6175a1f3f2c96e3e615a83db32d07f43ce8f1f2965d4dd640", "fetched_at": "2026-08-28T04:09:43.510081+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HVision-NKU/StoryDiffusion"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:44:39.132057+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48d2ebf0ff9aa2d6175a1f3f2c96e3e615a83db32d07f43ce8f1f2965d4dd640", "fetched_at": "2026-08-28T04:09:43.510081+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HVision-NKU/StoryDiffusion"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 61, "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": 864, "days_push": 707, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 24, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}