{"adoption": {"forks": 6830, "observed_at": "2026-08-28T04:12:01.168991+00:00", "stars": 36591}, "canonical_url": "https://ross.abutalabs.com/products/one-api", "card": {"archived": false, "artifact_type": "service", "description": "LLM API 管理 & 分发系统，支持 OpenAI、Azure、Anthropic Claude、Google Gemini、DeepSeek、字节豆包、ChatGLM、文心一言、讯飞星火、通义千问、360 智脑、腾讯混元等主流模型，统一 API 适配，可用于 key 管理与二次分发。单可执行文件，提供 Docker 镜像，一键部署，开箱即用。LLM API management & key redistribution system, unifying multiple providers under a single API. Single binary, Docker-ready, with an English UI.", "domain": ["large-language-models", "artificial-intelligence", "apis", "self-hosted", "developer-tools"], "enriched": true, "function": ["api-gateway", "proxy", "llm-inference", "http-server", "middleware"], "health_score": 68, "homepage": "https://oneapi.justsong.cn/", "language": "JavaScript", "license": "MIT", "license_family": "permissive", "maturity": "stable", "member_repos": ["songquanpeng/one-api"], "name": "songquanpeng/one-api", "platform": ["self-hosted", "cross-platform"], "pushed_at": "2026-01-09T03:26:43+00:00", "repo": "songquanpeng/one-api", "stars": 36591, "tags": ["openai-api", "llm-gateway", "key-management", "api-redistribution", "multi-provider", "chatgpt-proxy", "docker", "linux", "web-server"], "topics": ["openai-api", "proxy", "chatgpt", "gpt", "openai", "api", "api-gateway", "azure-openai-api", "claude", "ernie-bot", "gemini"], "urls": [], "use_cases": ["unify multiple LLM providers behind one OpenAI-compatible endpoint", "manage and redistribute OpenAI API keys to a team", "set quotas and rate limits per user for LLM access", "self-host an LLM API gateway with Docker", "switch between Claude, Gemini, and GPT without changing client code", "track and bill LLM token usage across users"], "what_it_is": "One API is a self-hosted LLM API gateway and key management system that unifies OpenAI, Azure, Anthropic Claude, Google Gemini, DeepSeek, and many Chinese LLM providers behind a single OpenAI-compatible API. It ships as a single binary or Docker image with a web UI for token management, quota control, and key redistribution to downstream users.", "when_to_avoid": ["you only use a single LLM provider and don't need key management", "you need enterprise-grade gateway features like advanced observability or SSO", "you cannot self-host and need a fully managed service"], "when_to_choose": ["you need one unified API endpoint across many LLM providers", "you want to distribute LLM access with per-user keys, quotas, and usage tracking", "you want a lightweight single-binary or Docker deployment with a web admin UI"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/one-api", "repo": "songquanpeng/one-api", "role": "main", "score": 55}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.168991+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T16:26:10.499263+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dd89b128b0495e4529a86f968ee6a95d432d9c9cbe49fe82ab06646ff92a1199", "fetched_at": "2026-08-28T04:12:01.168991+00:00", "kind": "readme", "missing": false, "url": "https://github.com/songquanpeng/one-api"}, {"content_hash": "039dee48cbc9a9f592d35b1b81c9c4086c3e1896464c6664ccae56fdd260d2ad", "fetched_at": "2026-08-29T07:47:51.421136+00:00", "kind": "homepage", "missing": false, "url": "https://oneapi.justsong.cn/"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.168991+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T16:26:10.499263+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dd89b128b0495e4529a86f968ee6a95d432d9c9cbe49fe82ab06646ff92a1199", "fetched_at": "2026-08-28T04:12:01.168991+00:00", "kind": "readme", "missing": false, "url": "https://github.com/songquanpeng/one-api"}, {"content_hash": "039dee48cbc9a9f592d35b1b81c9c4086c3e1896464c6664ccae56fdd260d2ad", "fetched_at": "2026-08-29T07:47:51.421136+00:00", "kind": "homepage", "missing": false, "url": "https://oneapi.justsong.cn/"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T16:26:10.499263+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dd89b128b0495e4529a86f968ee6a95d432d9c9cbe49fe82ab06646ff92a1199", "fetched_at": "2026-08-28T04:12:01.168991+00:00", "kind": "readme", "missing": false, "url": "https://github.com/songquanpeng/one-api"}, {"content_hash": "039dee48cbc9a9f592d35b1b81c9c4086c3e1896464c6664ccae56fdd260d2ad", "fetched_at": "2026-08-29T07:47:51.421136+00:00", "kind": "homepage", "missing": false, "url": "https://oneapi.justsong.cn/"}], "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:12:01.168991+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.168991+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.168991+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T16:26:10.499263+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dd89b128b0495e4529a86f968ee6a95d432d9c9cbe49fe82ab06646ff92a1199", "fetched_at": "2026-08-28T04:12:01.168991+00:00", "kind": "readme", "missing": false, "url": "https://github.com/songquanpeng/one-api"}, {"content_hash": "039dee48cbc9a9f592d35b1b81c9c4086c3e1896464c6664ccae56fdd260d2ad", "fetched_at": "2026-08-29T07:47:51.421136+00:00", "kind": "homepage", "missing": false, "url": "https://oneapi.justsong.cn/"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.168991+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.168991+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T16:26:10.499263+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dd89b128b0495e4529a86f968ee6a95d432d9c9cbe49fe82ab06646ff92a1199", "fetched_at": "2026-08-28T04:12:01.168991+00:00", "kind": "readme", "missing": false, "url": "https://github.com/songquanpeng/one-api"}, {"content_hash": "039dee48cbc9a9f592d35b1b81c9c4086c3e1896464c6664ccae56fdd260d2ad", "fetched_at": "2026-08-29T07:47:51.421136+00:00", "kind": "homepage", "missing": false, "url": "https://oneapi.justsong.cn/"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.168991+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.168991+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.168991+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T16:26:10.499263+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dd89b128b0495e4529a86f968ee6a95d432d9c9cbe49fe82ab06646ff92a1199", "fetched_at": "2026-08-28T04:12:01.168991+00:00", "kind": "readme", "missing": false, "url": "https://github.com/songquanpeng/one-api"}, {"content_hash": "039dee48cbc9a9f592d35b1b81c9c4086c3e1896464c6664ccae56fdd260d2ad", "fetched_at": "2026-08-29T07:47:51.421136+00:00", "kind": "homepage", "missing": false, "url": "https://oneapi.justsong.cn/"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.168991+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.168991+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T16:26:10.499263+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dd89b128b0495e4529a86f968ee6a95d432d9c9cbe49fe82ab06646ff92a1199", "fetched_at": "2026-08-28T04:12:01.168991+00:00", "kind": "readme", "missing": false, "url": "https://github.com/songquanpeng/one-api"}, {"content_hash": "039dee48cbc9a9f592d35b1b81c9c4086c3e1896464c6664ccae56fdd260d2ad", "fetched_at": "2026-08-29T07:47:51.421136+00:00", "kind": "homepage", "missing": false, "url": "https://oneapi.justsong.cn/"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T16:26:10.499263+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dd89b128b0495e4529a86f968ee6a95d432d9c9cbe49fe82ab06646ff92a1199", "fetched_at": "2026-08-28T04:12:01.168991+00:00", "kind": "readme", "missing": false, "url": "https://github.com/songquanpeng/one-api"}, {"content_hash": "039dee48cbc9a9f592d35b1b81c9c4086c3e1896464c6664ccae56fdd260d2ad", "fetched_at": "2026-08-29T07:47:51.421136+00:00", "kind": "homepage", "missing": false, "url": "https://oneapi.justsong.cn/"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T16:26:10.499263+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dd89b128b0495e4529a86f968ee6a95d432d9c9cbe49fe82ab06646ff92a1199", "fetched_at": "2026-08-28T04:12:01.168991+00:00", "kind": "readme", "missing": false, "url": "https://github.com/songquanpeng/one-api"}, {"content_hash": "039dee48cbc9a9f592d35b1b81c9c4086c3e1896464c6664ccae56fdd260d2ad", "fetched_at": "2026-08-29T07:47:51.421136+00:00", "kind": "homepage", "missing": false, "url": "https://oneapi.justsong.cn/"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T16:26:10.499263+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dd89b128b0495e4529a86f968ee6a95d432d9c9cbe49fe82ab06646ff92a1199", "fetched_at": "2026-08-28T04:12:01.168991+00:00", "kind": "readme", "missing": false, "url": "https://github.com/songquanpeng/one-api"}, {"content_hash": "039dee48cbc9a9f592d35b1b81c9c4086c3e1896464c6664ccae56fdd260d2ad", "fetched_at": "2026-08-29T07:47:51.421136+00:00", "kind": "homepage", "missing": false, "url": "https://oneapi.justsong.cn/"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 61, "longevity": 87, "rhythm": 28}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1229, "days_push": 236, "days_rel": 577, "gap_med": 42, "n_releases_24m": 2}, "score": 55, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}