Compute · Assess & Decide · Data & Research
AI Use-Case Technical Feasibility Scorer
A non-technical founder gets a defensible 1-4 score on each of the five technical-feasibility dimensions and an average, derived purely from yes/no characterizations of the use case, with no hand-waving.
You receive: A pure function techFeasibility(input) -> {autonomy:int 1-4, riskOfError:int 1-4, algorithmicComplexity:int 1-4, infraComplexity:int 1-4, dataFeasibility:int 1-4, composite:number} where input = {autonomyLevel:enum['act','decide','insight','structuredData'], reversible:bool, highImpact:bool, highEdgeCases:bool, highAdversity:bool, realTimeInference:bool, lowModelConsistency:bool, highDataAvailability:bool, needsSpecialistAnnotation:bool}.
Part of Choose Business Model
What's verified: STUD verifies that each of the five sub-scores is the correct 1-4 value from the fixed lookup tables and that the composite is the correct mean, on held-out inputs. STUD does NOT judge whether the yes/no characterizations are true of the real use case, nor whether the resulting feasibility means the project should proceed.
Opens soon
This objective is verified and ready. It opens soon, once sign-in and payments are live.
Deliverable interface
The exact vocabulary the automated check enforces: keys, tokens, entry points, and worked examples. Generated from the verification source.
{
"constants": {},
"entryName": "techFeasibility",
"expectNote": "expect is the comparison-space value (your return value goes through normalize first when one is published)",
"hiddenCaseCount": 12,
"hiddenCaseNames": [
"gen0",
"gen1",
"gen2",
"gen3",
"gen4",
"gen5",
"gen6",
"gen7",
"gen8",
"gen9",
"gen10",
"gen11"
],
"inputKeys": [
"autonomyLevel",
"highAdversity",
"highDataAvailability",
"highEdgeCases",
"highImpact",
"lowModelConsistency",
"needsSpecialistAnnotation",
"realTimeInference",
"reversible"
],
"normalizeSource": "def _normalize_compute_ai_usecase_technical_feasibility(r):\n if not isinstance(r, dict): return repr(r)\n def i(x): return None if x is None else int(x)\n return {\"autonomy\": i(r.get(\"autonomy\")), \"riskOfError\": i(r.get(\"riskOfError\")), \"algorithmicComplexity\": i(r.get(\"algorithmicComplexity\")), \"infraComplexity\": i(r.get(\"infraComplexity\")), \"dataFeasibility\": i(r.get(\"dataFeasibility\")), \"composite\": (None if r.get(\"composite\") is None else round(float(r[\"composite\"]), 2))}\n",
"returnShapes": [
[
"algorithmicComplexity",
"autonomy",
"composite",
"dataFeasibility",
"infraComplexity",
"riskOfError"
]
],
"signature": "def techFeasibility(inp):",
"submission": "python exposing the entry function; inp is one input object; graded on held-out cases",
"tier": "calculator",
"visibleCases": [
{
"expect": {
"algorithmicComplexity": 1,
"autonomy": 4,
"composite": 2.8,
"dataFeasibility": 2,
"infraComplexity": 3,
"riskOfError": 4
},
"input": {
"autonomyLevel": "structuredData",
"highAdversity": true,
"highDataAvailability": false,
"highEdgeCases": true,
"highImpact": false,
"lowModelConsistency": false,
"needsSpecialistAnnotation": false,
"realTimeInference": true,
"reversible": true
},
"name": "facial_spoof"
},
{
"expect": {
"algorithmicComplexity": 4,
"autonomy": 2,
"composite": 2.4,
"dataFeasibility": 1,
"infraComplexity": 4,
"riskOfError": 1
},
"input": {
"autonomyLevel": "decide",
"highAdversity": false,
"highDataAvailability": false,
"highEdgeCases": false,
"highImpact": true,
"lowModelConsistency": false,
"needsSpecialistAnnotation": true,
"realTimeInference": false,
"reversible": false
},
"name": "cancer"
}
],
"vocabulary": [
"1",
"act",
"algorithmicComplexity",
"autonomy",
"autonomyLevel",
"composite",
"dataFeasibility",
"decide",
"highAdversity",
"highDataAvailability",
"highEdgeCases",
"highImpact",
"infraComplexity",
"insight",
"lowModelConsistency",
"needsSpecialistAnnotation",
"realTimeInference",
"reversible",
"riskOfError",
"structuredData",
"true",
"y",
"yes"
]
}Get early access to STUD the day it goes live.