Instructions to use spiral-rl/Spiral-DeepSeek-R1-Distill-Qwen-7B with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use spiral-rl/Spiral-DeepSeek-R1-Distill-Qwen-7B with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="spiral-rl/Spiral-DeepSeek-R1-Distill-Qwen-7B") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("spiral-rl/Spiral-DeepSeek-R1-Distill-Qwen-7B") model = AutoModelForCausalLM.from_pretrained("spiral-rl/Spiral-DeepSeek-R1-Distill-Qwen-7B", device_map="auto") 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 Settings
- vLLM
How to use spiral-rl/Spiral-DeepSeek-R1-Distill-Qwen-7B with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "spiral-rl/Spiral-DeepSeek-R1-Distill-Qwen-7B" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "spiral-rl/Spiral-DeepSeek-R1-Distill-Qwen-7B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/spiral-rl/Spiral-DeepSeek-R1-Distill-Qwen-7B
- SGLang
How to use spiral-rl/Spiral-DeepSeek-R1-Distill-Qwen-7B 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 "spiral-rl/Spiral-DeepSeek-R1-Distill-Qwen-7B" \ --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": "spiral-rl/Spiral-DeepSeek-R1-Distill-Qwen-7B", "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 "spiral-rl/Spiral-DeepSeek-R1-Distill-Qwen-7B" \ --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": "spiral-rl/Spiral-DeepSeek-R1-Distill-Qwen-7B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use spiral-rl/Spiral-DeepSeek-R1-Distill-Qwen-7B with Docker Model Runner:
docker model run hf.co/spiral-rl/Spiral-DeepSeek-R1-Distill-Qwen-7B
File size: 2,192 Bytes
2107441 79d8462 2107441 88b820c 2107441 88b820c 2107441 79d8462 2107441 234c11e 635e3a9 cded143 2107441 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | ---
base_model:
- deepseek-ai/DeepSeek-R1-Distill-Qwen-7B
license: apache-2.0
pipeline_tag: text-generation
library_name: transformers
---
# Spiral-DeepSeek-R1-Distill-Qwen-7B
## Links
- 📜 [Paper](https://huggingface.co/papers/2506.24119)
- 💻 [GitHub](https://github.com/spiral-rl/spiral)
- 🤗 [Spiral Collection](https://huggingface.co/collections/spiral-rl/spiral-68627f14c250c3cc1fdbf6fe)
## Introduction
This model is trained with self-play on multi-games (TicTacToe, Kuhn Poker, Simple Negotiation) using the SPIRAL framework.
<img src="https://raw.githubusercontent.com/spiral-rl/spiral/refs/heads/main/assets/framework.png" width=100%/>
## Usage
This model can be easily loaded and used with the `transformers` library.
```python
from transformers import pipeline, AutoTokenizer, AutoModelForCausalLM
import torch
model_id = "spiral-rl/Spiral-DeepSeek-R1-Distill-Qwen-7B"
# Load model and tokenizer
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.bfloat16, # or torch.float16 for GPUs that don't support bfloat16
device_map="auto"
)
# Create a text generation pipeline
pipe = pipeline(
"text-generation",
model=model,
tokenizer=tokenizer,
max_new_tokens=50,
do_sample=True,
temperature=0.7,
top_k=50,
top_p=0.95
)
# Define a chat message
messages = [
{"role": "user", "content": "What is the capital of France?"}
]
# Generate text
output = pipe(messages)
print(output[0]['generated_text'])
```
For more advanced usage, including training and evaluation with the SPIRAL framework, please refer to the [GitHub repository](https://github.com/spiral-rl/spiral).
## Citation
```latex
@article{liu2025spiral,
title={SPIRAL: Self-Play on Zero-Sum Games Incentivizes Reasoning via Multi-Agent Multi-Turn Reinforcement Learning},
author={Liu, Bo and Guertler, Leon and Yu, Simon and Liu, Zichen and Qi, Penghui and Balcells, Daniel and Liu, Mickel and Tan, Cheston and Shi, Weiyan and Lin, Min and Lee, Wee Sun and Jaques, Natasha},
journal={arXiv preprint arXiv:2506.24119},
year={2025},
url={https://arxiv.org/abs/2506.24119}
}
``` |