normster/SystemCheck
Viewer • Updated • 364k • 244 • 6
How to use normster/RealGuardrails-OLMo2-7B-SFT-DPO with Transformers:
# Use a pipeline as a high-level helper
from transformers import pipeline
pipe = pipeline("text-generation", model="normster/RealGuardrails-OLMo2-7B-SFT-DPO")
messages = [
{"role": "user", "content": "Who are you?"},
]
pipe(messages) # Load model directly
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("normster/RealGuardrails-OLMo2-7B-SFT-DPO")
model = AutoModelForCausalLM.from_pretrained("normster/RealGuardrails-OLMo2-7B-SFT-DPO")
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]:]))How to use normster/RealGuardrails-OLMo2-7B-SFT-DPO with vLLM:
# Install vLLM from pip:
pip install vllm
# Start the vLLM server:
vllm serve "normster/RealGuardrails-OLMo2-7B-SFT-DPO"
# Call the server using curl (OpenAI-compatible API):
curl -X POST "http://localhost:8000/v1/chat/completions" \
-H "Content-Type: application/json" \
--data '{
"model": "normster/RealGuardrails-OLMo2-7B-SFT-DPO",
"messages": [
{
"role": "user",
"content": "What is the capital of France?"
}
]
}'docker model run hf.co/normster/RealGuardrails-OLMo2-7B-SFT-DPO
How to use normster/RealGuardrails-OLMo2-7B-SFT-DPO with SGLang:
# Install SGLang from pip:
pip install sglang
# Start the SGLang server:
python3 -m sglang.launch_server \
--model-path "normster/RealGuardrails-OLMo2-7B-SFT-DPO" \
--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": "normster/RealGuardrails-OLMo2-7B-SFT-DPO",
"messages": [
{
"role": "user",
"content": "What is the capital of France?"
}
]
}'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 "normster/RealGuardrails-OLMo2-7B-SFT-DPO" \
--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": "normster/RealGuardrails-OLMo2-7B-SFT-DPO",
"messages": [
{
"role": "user",
"content": "What is the capital of France?"
}
]
}'How to use normster/RealGuardrails-OLMo2-7B-SFT-DPO with Docker Model Runner:
docker model run hf.co/normster/RealGuardrails-OLMo2-7B-SFT-DPO
This model was trained on the RealGuardrails dataset, an instruction-tuning dataset focused on improving system prompt adherence and precedence. In particular, it was trained via SFT on the systemmix split (150K examples) using our custom training library torchllms (yielding normster/RealGuardrails-OLMo2-7B-SFT), and then trained via DPO on the preferencemix split (30K examples), and converted back to a transformers compatible checkpoint.
| Name | Value |
|---|---|
| DPO beta | 0.01 |
| optimizer | AdamW |
| batch size | 128 |
| learning rate | 1e-5 |
| lr scheduler | cosine with 50 warmup steps |
| betas | (0.9, 0.999) |
| eps | 1e-8 |
| weight decay | 0 |
| epochs | 1 |
| max grad norm | 1.0 |
| precision | bf16 |
| max length | 4096 |