Downloads · 30 days
0
bledden/facilitair-codebert-routing-v1
facilitair-codebert-routing-v1 is a text classification model from bledden. Use it when you need a label for a piece of text. The card lists the license as mit.
Accuracy: 99.93% (validation) Task: Multi-task routing for software development tasks License: MIT Base Model: microsoft/codebert-base (125M parameters)
Downloads · 30 days
0
Access
Public
Updated Nov 18, 2025
Repo size
501 MB
Likes
0
Public
Click a slice to open those files.
.pt501 MB · 100%
From the Hugging Face model README
Accuracy: 99.93% (validation) Task: Multi-task routing for software development tasks License: MIT Base Model: microsoft/codebert-base (125M parameters)
This model routes software development tasks to appropriate domains, strategies, capabilities, and execution types with 99.93% accuracy on technical tasks.
The model performs 4 simultaneous predictions:
Domain Classification (19 classes):
Strategy Classification (2 classes):
Capability Detection (8 multi-label):
Execution Type (5 classes):
| Metric | Score |
|---|---|
| Overall Accuracy | 99.93% |
| Minimum Per-Domain | 99.1% (backend) |
| Perfect Domains | 17/19 (100.0%) |
| Training Time | 4.7 hours on AMD MI300X |
| Model Size | 477MB |
import torch
from transformers import RobertaTokenizer, RobertaModel
# Load model and tokenizer
model = RobertaModel.from_pretrained("somethingobscurefordevstuff/facilitair-codebert-routing-v1")
tokenizer = RobertaTokenizer.from_pretrained("microsoft/codebert-base")
# Load trained weights
checkpoint = torch.load("codebert_best_model.pt")
model.load_state_dict(checkpoint['model_state_dict'])
model.eval()
# Tokenize input
task = "Build a React component for user login"
encoding = tokenizer(task, max_length=512, padding='max_length', truncation=True, return_tensors='pt')
# Predict
with torch.no_grad():
domain_logits, strategy_logits, capability_logits, execution_logits = model(
encoding['input_ids'],
encoding['attention_mask']
)
# Get domain prediction
domain_idx = torch.argmax(domain_logits, dim=1).item()
domains = ["frontend", "backend", "data", "ml", "devops", "mobile", "cloud", "security",
"general", "testing", "database", "infrastructure", "api", "microservices",
"blockchain", "networking", "embedded", "gaming", "system_design"]
print(f"Domain: {domains[domain_idx]}")
from huggingface_hub import hf_hub_download
# Download model
model_path = hf_hub_download(
repo_id="somethingobscurefordevstuff/facilitair-codebert-routing-v1",
filename="codebert_best_model.pt"
)
# Use with Facilitair's inference code
from facilitair_inference import CodeBERTRouter
router = CodeBERTRouter(model_path=model_path)
result = router.route_task("Build a React component")
print(f"Domain: {result['domain']}") # frontend
print(f"Confidence: {result['domain_confidence']:.1%}") # 95.8%
print(f"Strategy: {result['strategy']}") # DIRECT
print(f"Capabilities: {result['capabilities']}") # ['code_generation']
CodeBERT Base (microsoft/codebert-base)
├── 12 transformer layers
├── 768 hidden size
├── 12 attention heads
└── 125M total parameters
Classification Heads:
├── Domain Head: 768 → 256 → 19
├── Strategy Head: 768 → 256 → 2
├── Capability Head: 768 → 256 → 8 (multi-label)
└── Execution Head: 768 → 256 → 5
| Domain | Accuracy | Examples |
|---|---|---|
| frontend | 100.0% | 790 |
| backend | 99.1% | 790 |
| data | 100.0% | 790 |
| ml | 100.0% | 790 |
| devops | 99.6% | 790 |
| mobile | 100.0% | 790 |
| cloud | 100.0% | 790 |
| security | 100.0% | 790 |
| general | 100.0% | 790 |
| testing | 100.0% | 790 |
| database | 100.0% | 790 |
| infrastructure | 99.8% | 790 |
| api | 100.0% | 790 |
| microservices | 100.0% | 790 |
| blockchain | 100.0% | 790 |
| networking | 100.0% | 790 |
| embedded | 100.0% | 790 |
| gaming | 100.0% | 790 |
| system_design | 100.0% | 790 |
Summary: 17/19 domains perfect (100%), minimum 99.1%
Non-Coding Tasks: Model is trained exclusively on technical software development tasks. It may misclassify:
Confidence Thresholds: For production use, consider applying a confidence threshold (e.g., 70%) and fallback to "general" domain for uncertain predictions.
Domain Overlap: Some tasks may legitimately belong to multiple domains. Model predicts single most likely domain.
If you use this model, please cite:
@software{facilitair_codebert_routing_2025,
title={Facilitair CodeBERT Routing Model v1},
author={Facilitair Team},
year={2025},
url={https://huggingface.co/somethingobscurefordevstuff/facilitair-codebert-routing-v1}
}
MIT License - Free for commercial use
Model Card: Full Model Card Training Details: Training Report