{"adoption": {"forks": 97, "observed_at": "2026-08-28T04:05:00.179036+00:00", "stars": 1538}, "canonical_url": "https://ross.abutalabs.com/products/smart-turn", "card": {"archived": false, "artifact_type": "library", "description": null, "domain": ["speech-processing", "artificial-intelligence"], "enriched": true, "function": ["speech-recognition", "machine-learning", "audio-processing", "llm-inference"], "health_score": 59, "homepage": null, "language": "Python", "license": "BSD-2-Clause", "license_family": "permissive", "maturity": "active", "member_repos": ["pipecat-ai/smart-turn"], "name": "pipecat-ai/smart-turn", "platform": ["python", "cross-platform", "cli"], "pushed_at": "2026-01-29T12:30:26+00:00", "repo": "pipecat-ai/smart-turn", "stars": 1538, "tags": ["turn-detection", "voice-agents", "vad", "endpointing", "conversational-ai", "realtime-audio", "onnx", "audio", "natural-language-processing"], "topics": [], "urls": [], "use_cases": ["detect when a user has finished speaking in a voice agent", "replace VAD-only endpointing with semantic turn detection", "build a realtime conversational voice AI pipeline", "run turn detection locally on CPU with low latency", "support multilingual voice assistants turn-taking", "train or fine-tune a custom turn detection model"], "what_it_is": "Smart Turn is an open-source, audio-native turn detection model that decides when a voice agent should respond to human speech, using prosody and acoustic cues rather than text transcription. It ships with model weights, datasets, and training scripts, and integrates with lightweight VAD like Silero for fast inference.", "when_to_avoid": ["you only need simple speech/silence segmentation without semantic endpointing", "you need a fully managed cloud speech service rather than a self-run model", "your stack cannot run Python or ONNX inference"], "when_to_choose": ["you are building a voice agent and VAD-based endpointing cuts users off or adds latency", "you need a small, fast, self-hostable turn detection model", "you want a truly open model with open weights, datasets, and training code", "you need multilingual turn detection across many languages"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/smart-turn", "repo": "pipecat-ai/smart-turn", "role": "main", "score": 49}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.179036+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:30:58.127779+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "449872bf775bbef32eaa62fad958f6ea4de9decc4eec53dd88aad6584e858f39", "fetched_at": "2026-08-28T04:05:00.179036+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pipecat-ai/smart-turn"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.179036+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:30:58.127779+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "449872bf775bbef32eaa62fad958f6ea4de9decc4eec53dd88aad6584e858f39", "fetched_at": "2026-08-28T04:05:00.179036+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pipecat-ai/smart-turn"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:30:58.127779+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "449872bf775bbef32eaa62fad958f6ea4de9decc4eec53dd88aad6584e858f39", "fetched_at": "2026-08-28T04:05:00.179036+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pipecat-ai/smart-turn"}], "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:05:00.179036+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.179036+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.179036+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:30:58.127779+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "449872bf775bbef32eaa62fad958f6ea4de9decc4eec53dd88aad6584e858f39", "fetched_at": "2026-08-28T04:05:00.179036+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pipecat-ai/smart-turn"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.179036+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.179036+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:30:58.127779+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "449872bf775bbef32eaa62fad958f6ea4de9decc4eec53dd88aad6584e858f39", "fetched_at": "2026-08-28T04:05:00.179036+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pipecat-ai/smart-turn"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.179036+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.179036+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.179036+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:30:58.127779+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "449872bf775bbef32eaa62fad958f6ea4de9decc4eec53dd88aad6584e858f39", "fetched_at": "2026-08-28T04:05:00.179036+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pipecat-ai/smart-turn"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.179036+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:00.179036+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:30:58.127779+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "449872bf775bbef32eaa62fad958f6ea4de9decc4eec53dd88aad6584e858f39", "fetched_at": "2026-08-28T04:05:00.179036+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pipecat-ai/smart-turn"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:30:58.127779+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "449872bf775bbef32eaa62fad958f6ea4de9decc4eec53dd88aad6584e858f39", "fetched_at": "2026-08-28T04:05:00.179036+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pipecat-ai/smart-turn"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:30:58.127779+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "449872bf775bbef32eaa62fad958f6ea4de9decc4eec53dd88aad6584e858f39", "fetched_at": "2026-08-28T04:05:00.179036+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pipecat-ai/smart-turn"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:30:58.127779+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "449872bf775bbef32eaa62fad958f6ea4de9decc4eec53dd88aad6584e858f39", "fetched_at": "2026-08-28T04:05:00.179036+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pipecat-ai/smart-turn"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 64, "longevity": 39, "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": 546, "days_push": 216, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 49, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}