Downloads · 30 days
13
3% of all-time downloads
Smilyai-labs/Nova-1-Standard-1.3B
Nova-1-Standard-1.3B is a text generation model from Smilyai-labs. Use it when you need the model to write or continue text. It is set up for transformers. The card lists the license as apache-2.0.
<video controls width="100%" <source src="https://cdn-uploads.huggingface.co/production/uploads/68f4abf8f64bb4002a21a428/BFeNSjsTFy5xoyEDZJFI.mp4" type="video/mp4" The Video Tag is not supported by your browser! </video
Downloads · 30 days
13
3% of all-time downloads
All-time downloads
490
Public
Parameters
1.3B
2.6 GB on disk
Likes
2
Public
Click a slice to open those files.
.safetensors2.6 GB · 100%
From the Hugging Face model README
Nova-1 is a 1.2B parameter decoder-only language model from Smilyai Labs. Trained from scratch, it features a custom architecture built for maximum efficiency and native HuggingFace Transformers compatibility.
| Property | Value |
|---|---|
| Parameters | 1.27B |
| Hidden dim | 2048 |
| Layers | 24 (12 Full + 12 MoD) |
| Attention heads | 16 (GQA, 8 KV) |
| Context length | 2048 tokens (YaRN stretchable) |
| Pretraining Tokens | ~4.00B |
| Training Phase | 2 (Supervised Fine-Tuning) |
| Dtype | bfloat16 |
Because this model is 100% HuggingFace-native, you can use standard pipeline or AutoModelForCausalLM APIs without any custom generation loops. The generation_config.json handles all the sampler defaults for you.
import torch
from transformers import pipeline
pipe = pipeline(
"text-generation",
model="Smilyai-labs/Nova-1-Standard",
torch_dtype=torch.bfloat16,
device_map="auto",
trust_remote_code=True
)
messages = [
{"role": "system", "content": "You are Nova, a helpful, honest AI assistant."},
{"role": "user", "content": "Write a Python function to check if a number is prime."}
]
# The pipeline automatically applies ChatML and uses the correct sampler defaults!
response = pipe(messages, max_new_tokens=256)
print(response[0]['generated_text'][-1]['content'])
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "Smilyai-labs/Nova-1-Standard"
tokenizer = AutoTokenizer.from_pretrained(model_id, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
model_id,
trust_remote_code=True,
torch_dtype=torch.bfloat16,
device_map="auto",
)
messages = [
{"role": "system", "content": "You are Nova, a helpful, honest AI assistant."},
{"role": "user", "content": "Explain recursion like I'm five."}
]
# Apply ChatML template
inputs = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
return_tensors="pt"
).to(model.device)
# Generate (uses repo generation_config defaults)
outputs = model.generate(inputs, max_new_tokens=256)
print(tokenizer.decode(outputs[0][inputs.shape[1]:], skip_special_tokens=True))
⚠️ Note on Inference: This model's architecture intentionally disables HuggingFace's KV Cache (
use_cache=False) to ensure maximum context retention. Theprepare_inputs_for_generationmethod automatically handles passing the full context window on each step. Just don't manually passuse_cache=Trueor it will throw a warning and force it back toFalse.
Nova-1 natively understands domain markers and ChatML structure.
<|im_start|>, <|im_end|> — Chat format markers<|code_start|>, <|code_end|> — Code boundaries<|math_start|>, <|math_end|> — Math content<|domain_code|>, <|domain_math|>, <|domain_general|> — Domain context indicators (used in pretraining, though Phase 2 SFT primarily relies on pure ChatML)Phase 1 (Pretraining): Trained on ~4B tokens of high-quality filtered web text, code, and math.
Phase 2 (Instruction Tuning): Supervised Fine-Tuning on ~200k high-quality multi-turn conversations and identity reinforcement data.
Apache 2.0
@software{nova1,
author = {Smilyai Labs},
title = {Nova-1: Mixture-of-Depths Language Model},
year = {2024},
url = {https://huggingface.co/Smilyai-labs/Nova-1-Standard}
}
Built with 💙 by Smilyai Labs