Instructions to use ChiKoi7/Bellatrix-Tiny-3B-R1-Heretic with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use ChiKoi7/Bellatrix-Tiny-3B-R1-Heretic with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="ChiKoi7/Bellatrix-Tiny-3B-R1-Heretic") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("ChiKoi7/Bellatrix-Tiny-3B-R1-Heretic") model = AutoModelForCausalLM.from_pretrained("ChiKoi7/Bellatrix-Tiny-3B-R1-Heretic") messages = [ {"role": "user", "content": "Who are you?"}, ] inputs = tokenizer.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=40) print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps
- vLLM
How to use ChiKoi7/Bellatrix-Tiny-3B-R1-Heretic with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "ChiKoi7/Bellatrix-Tiny-3B-R1-Heretic" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "ChiKoi7/Bellatrix-Tiny-3B-R1-Heretic", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/ChiKoi7/Bellatrix-Tiny-3B-R1-Heretic
- SGLang
How to use ChiKoi7/Bellatrix-Tiny-3B-R1-Heretic with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "ChiKoi7/Bellatrix-Tiny-3B-R1-Heretic" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "ChiKoi7/Bellatrix-Tiny-3B-R1-Heretic", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "ChiKoi7/Bellatrix-Tiny-3B-R1-Heretic" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "ChiKoi7/Bellatrix-Tiny-3B-R1-Heretic", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use ChiKoi7/Bellatrix-Tiny-3B-R1-Heretic with Docker Model Runner:
docker model run hf.co/ChiKoi7/Bellatrix-Tiny-3B-R1-Heretic
Bellatrix-Tiny-3B-R1-Heretic
A decensored version of prithivMLmods/Bellatrix-Tiny-3B-R1, made using Heretic v1.1.0
Note: I also used Heretic's default settings to evaluate an abliterated version on the original uploader's profile.
I'm not entirely sure why there is such a massive discrepancy in refusals. Perhaps because of the different abliteration methods used? Or maybe something went wrong with the abliteration of the other model?
Regardless, I like the original Bellatrix model and this Heretic version turned out well.
| Bellatrix-Tiny-3B-R1-Heretic | prithivMLmods/Bellatrix-Tiny-3B-R1-abliterated | Original model (prithivMLmods/Bellatrix-Tiny-3B-R1) | |
|---|---|---|---|
| Refusals | 4/100 | 98/100 | 93/100 |
| KL divergence | 0.0197 | 2.8867 | 0 (by definition) |
Heretic Abliteration Parameters
| Parameter | Value |
|---|---|
| direction_index | 13.34 |
| attn.o_proj.max_weight | 1.48 |
| attn.o_proj.max_weight_position | 19.40 |
| attn.o_proj.min_weight | 1.15 |
| attn.o_proj.min_weight_distance | 11.00 |
| mlp.down_proj.max_weight | 0.96 |
| mlp.down_proj.max_weight_position | 21.71 |
| mlp.down_proj.min_weight | 0.34 |
| mlp.down_proj.min_weight_distance | 15.99 |
Bellatrix-Tiny-3B-R1
Bellatrix is based on a reasoning-based model designed for the DeepSeek-R1 synthetic dataset entries. The pipeline's instruction-tuned, text-only models are optimized for multilingual dialogue use cases, including agentic retrieval and summarization tasks. These models outperform many of the available open-source options. Bellatrix is an auto-regressive language model that uses an optimized transformer architecture. The tuned versions utilize supervised fine-tuning (SFT) and reinforcement learning with human feedback (RLHF).
Use with transformers
Starting with transformers >= 4.43.0 onward, you can run conversational inference using the Transformers pipeline abstraction or by leveraging the Auto classes with the generate() function.
Make sure to update your transformers installation via:
pip install --upgrade transformers
import torch
from transformers import pipeline
model_id = "prithivMLmods/Bellatrix-Tiny-3B-R1"
pipe = pipeline(
"text-generation",
model=model_id,
torch_dtype=torch.bfloat16,
device_map="auto",
)
messages = [
{"role": "system", "content": "You are a pirate chatbot who always responds in pirate speak!"},
{"role": "user", "content": "Who are you?"},
]
outputs = pipe(
messages,
max_new_tokens=256,
)
print(outputs[0]["generated_text"][-1])
Note: You can also find detailed recipes on how to use the model locally, with torch.compile(), assisted generations, quantization, and more at huggingface-llama-recipes.
Intended Use
Bellatrix is designed for applications that require advanced reasoning and multilingual dialogue capabilities. It is particularly suitable for:
- Agentic Retrieval: Enabling intelligent retrieval of relevant information in a dialogue or query-response system.
- Summarization Tasks: Condensing large bodies of text into concise summaries for easier comprehension.
- Multilingual Use Cases: Supporting conversations in multiple languages with high accuracy and coherence.
- Instruction-Based Applications: Following complex, context-aware instructions to generate precise outputs in a variety of scenarios.
Limitations
Despite its capabilities, Bellatrix has some limitations:
- Domain Specificity: While it performs well on general tasks, its performance may degrade with highly specialized or niche datasets.
- Dependence on Training Data: It is only as good as the quality and diversity of its training data, which may lead to biases or inaccuracies.
- Computational Resources: The model’s optimized transformer architecture can be resource-intensive, requiring significant computational power for fine-tuning and inference.
- Language Coverage: While multilingual, some languages or dialects may have limited support or lower performance compared to widely used ones.
- Real-World Contexts: It may struggle with understanding nuanced or ambiguous real-world scenarios not covered during training.
- Downloads last month
- 4