{"adoption": {"forks": 372, "observed_at": "2026-08-28T04:04:04.400807+00:00", "stars": 1232}, "canonical_url": "https://ross.abutalabs.com/products/sora2api", "card": {"archived": true, "artifact_type": "service", "description": "逆向账号池，Q交流群1073237297", "domain": ["artificial-intelligence", "large-language-models", "image-processing", "apis", "self-hosted"], "enriched": true, "function": ["api-framework", "http-server", "proxy", "image-processing", "video-processing", "llm-inference"], "health_score": 10, "homepage": null, "language": "Python", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["TheSmallHanCat/sora2api"], "name": "TheSmallHanCat/sora2api", "platform": ["python", "self-hosted", "cross-platform"], "pushed_at": "2026-03-12T03:32:51+00:00", "repo": "TheSmallHanCat/sora2api", "stars": 1232, "tags": ["openai-compatible-api", "sora", "reverse-proxy", "account-pool", "text-to-video", "text-to-image", "fastapi", "token-pooling", "video", "docker", "web-server"], "topics": [], "urls": [], "use_cases": ["expose sora video generation as an openai-compatible api", "self-host a text-to-video api endpoint", "use sora image and video generation from any openai sdk client", "pool multiple sora accounts with load balancing", "generate videos from text prompts via api", "add sora generation to my own app without official api access"], "what_it_is": "A self-hosted OpenAI-compatible API gateway that wraps Sora's text-to-video and image generation capabilities behind standard /v1/chat/completions endpoints. It manages a pool of accounts/tokens with load balancing, proxy support, SQLite persistence, and a web admin dashboard.", "when_to_avoid": ["you need an officially supported or ToS-compliant Sora API", "you need generation models other than Sora/gpt-image style endpoints", "you cannot host a Python/Docker service or supply your own account tokens"], "when_to_choose": ["you need an OpenAI-compatible endpoint for Sora image/video generation", "you want multi-account token pooling, proxy support, and a web admin UI", "you prefer Docker-based self-hosting with SQLite persistence"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/sora2api", "repo": "TheSmallHanCat/sora2api", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:04.400807+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T08:22:20.296397+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c511ff158a5ef55d0c6cbb09b250121c718a42a26c6d47a4e039a42f151bd30", "fetched_at": "2026-08-28T04:04:04.400807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TheSmallHanCat/sora2api"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:04.400807+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T08:22:20.296397+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c511ff158a5ef55d0c6cbb09b250121c718a42a26c6d47a4e039a42f151bd30", "fetched_at": "2026-08-28T04:04:04.400807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TheSmallHanCat/sora2api"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T08:22:20.296397+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c511ff158a5ef55d0c6cbb09b250121c718a42a26c6d47a4e039a42f151bd30", "fetched_at": "2026-08-28T04:04:04.400807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TheSmallHanCat/sora2api"}], "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:04.400807+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:04.400807+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:04.400807+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T08:22:20.296397+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c511ff158a5ef55d0c6cbb09b250121c718a42a26c6d47a4e039a42f151bd30", "fetched_at": "2026-08-28T04:04:04.400807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TheSmallHanCat/sora2api"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:04.400807+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:04.400807+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T08:22:20.296397+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c511ff158a5ef55d0c6cbb09b250121c718a42a26c6d47a4e039a42f151bd30", "fetched_at": "2026-08-28T04:04:04.400807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TheSmallHanCat/sora2api"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:04.400807+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:04.400807+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:04.400807+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T08:22:20.296397+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c511ff158a5ef55d0c6cbb09b250121c718a42a26c6d47a4e039a42f151bd30", "fetched_at": "2026-08-28T04:04:04.400807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TheSmallHanCat/sora2api"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:04.400807+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:04.400807+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T08:22:20.296397+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c511ff158a5ef55d0c6cbb09b250121c718a42a26c6d47a4e039a42f151bd30", "fetched_at": "2026-08-28T04:04:04.400807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TheSmallHanCat/sora2api"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T08:22:20.296397+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c511ff158a5ef55d0c6cbb09b250121c718a42a26c6d47a4e039a42f151bd30", "fetched_at": "2026-08-28T04:04:04.400807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TheSmallHanCat/sora2api"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T08:22:20.296397+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c511ff158a5ef55d0c6cbb09b250121c718a42a26c6d47a4e039a42f151bd30", "fetched_at": "2026-08-28T04:04:04.400807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TheSmallHanCat/sora2api"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T08:22:20.296397+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c511ff158a5ef55d0c6cbb09b250121c718a42a26c6d47a4e039a42f151bd30", "fetched_at": "2026-08-28T04:04:04.400807+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TheSmallHanCat/sora2api"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 71, "longevity": 21, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases", "archived"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 298, "days_push": 174, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 10, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}