license, tags, pipeline_tag, library_name
| license | tags | pipeline_tag | library_name | |||||
|---|---|---|---|---|---|---|---|---|
| apache-2.0 |
|
text-generation | transformers |
SLM 1.0
SLM 1.0 is a specialized language model trained by NeuroBrain, optimized for structured output generation, JSON schema compliance, and tool calling capabilities.
Model Details
Model Description
SLM 1.0 is a language model specifically trained to excel at:
-
Structured Output: Generating well-formatted, structured responses
-
JSON Schema: Producing outputs that strictly adhere to JSON schemas
-
Tool Calling: Effectively utilizing and calling external tools and functions
This model has been trained by NeuroBrain to provide reliable, structured responses suitable for production applications requiring precise output formatting.
Model Specifications
-
Architecture: SLM1ForCausalLM
-
Model Type: Causal Language Model
-
Context Length: 32,768 tokens
-
Hidden Size: 1,536
-
Number of Layers: 28
-
Attention Heads: 12
-
Vocabulary Size: 151,936
Training Information
-
Trained by: NeuroBrain
-
Training Method: Trained for structured output, JSON schema compliance, and tool calling
Usage
Basic Usage
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "sihab/slm-1.0"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name)
# Example: Generate structured output
prompt = "Generate a JSON object with user information"
inputs = tokenizer(prompt, return_tensors="pt")
outputs = model.generate(**inputs, max_length=512)
response = tokenizer.decode(outputs[0], skip_special_tokens=True)
Structured Output Generation
SLM 1.0 is particularly effective when you need structured outputs:
prompt = """
Generate a JSON object following this schema:
{
"name": "string",
"age": "number",
"email": "string"
}
"""
inputs = tokenizer(prompt, return_tensors="pt")
outputs = model.generate(**inputs, max_length=512, temperature=0.7)
response = tokenizer.decode(outputs[0], skip_special_tokens=True)
Tool Calling
The model is optimized for tool calling scenarios:
prompt = """
Available tools:
- get_weather(location: str)
- send_email(to: str, subject: str, body: str)
User request: Check the weather in Paris and send me an email with the result.
"""
inputs = tokenizer(prompt, return_tensors="pt")
outputs = model.generate(**inputs, max_length=1024)
response = tokenizer.decode(outputs[0], skip_special_tokens=True)
Model Performance
SLM 1.0 demonstrates strong performance in:
-
JSON schema compliance
-
Structured data generation
-
Tool calling accuracy
-
Function parameter extraction
Limitations
-
The model may occasionally require post-processing to ensure strict JSON compliance
-
Tool calling accuracy depends on the clarity of tool descriptions provided
-
Maximum context length is 32,768 tokens
Citation
If you use SLM 1.0 in your research or applications, please cite:
@misc{slm1.0,
title={SLM 1.0: A Language Model for Structured Output and Tool Calling},
author={NeuroBrain},
year={2025},
howpublished={\url{https://huggingface.co/sihab/slm-1.0}}
}
License
This model is licensed under the Apache 2.0 license.
Contact
For questions, issues, or contributions, please contact NeuroBrain.
Model trained by NeuroBrain