Views
No views yet
1import torch
2from transformers import AutoTokenizer, AutoModel
3
4repo_id = "ilya-kolchinsky/PromptComplexityEstimator"
5
6tokenizer = AutoTokenizer.from_pretrained(repo_id, use_fast=True)
7model = AutoModel.from_pretrained(repo_id, trust_remote_code=True).eval()
8
9prompt = "Design a distributed consensus protocol with Byzantine fault tolerance..."
10inputs = tokenizer(prompt, return_tensors="pt", truncation=True, padding=True)
11
12with torch.no_grad():
13 score = model(**inputs).logits.squeeze(-1).item()
14
15print(float(score))1THRESHOLD = 0.45 # chosen empirically
2
3def route_prompt(prompt: str) -> str:
4 inputs = tokenizer(prompt, return_tensors="pt", truncation=True, padding=True)
5 with torch.no_grad():
6 complexity = model(**inputs).logits.squeeze(-1).item()
7
8 return "LLM" if complexity > THRESHOLD else "SLM"outputs.logits (shape [batch, 1]).1@misc{kolchinsky_promptcomplexityestimator_2026,
2 title = {PromptComplexityEstimator},
3 author = {Ilya Kolchinsky},
4 year = {2026},
5 howpublished = {Hugging Face Hub model: ilya-kolchinsky/PromptComplexityEstimator}
6}