Text Generation
PEFT
Safetensors
English
gpt-j
lora
reasoning
thinking
sft
qwen3-template
conversational
File size: 1,825 Bytes
303b8c5
4cf0005
 
 
303b8c5
 
4cf0005
303b8c5
4cf0005
 
 
303b8c5
4cf0005
 
 
 
 
 
303b8c5
 
4cf0005
303b8c5
4cf0005
 
 
303b8c5
4cf0005
 
303b8c5
4cf0005
303b8c5
4cf0005
303b8c5
4cf0005
 
 
 
 
 
 
 
303b8c5
4cf0005
303b8c5
4cf0005
303b8c5
4cf0005
 
 
 
303b8c5
4cf0005
 
303b8c5
4cf0005
303b8c5
4cf0005
 
 
 
 
 
 
 
 
303b8c5
4cf0005
 
 
303b8c5
4cf0005
303b8c5
4cf0005
303b8c5
4cf0005
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
76
---
language:
- en
license: apache-2.0
base_model: EleutherAI/gpt-j-6b
tags:
- gpt-j
- lora
- peft
- reasoning
- thinking
- sft
- qwen3-template
datasets:
- nohurry/Opus-4.6-Reasoning-3000x-filtered
- TeichAI/claude-4.5-opus-high-reasoning-250x
- Jackrong/Qwen3.5-reasoning-700x
pipeline_tag: text-generation
---

# GPT-J 6B — Thinking SFT · LoRA Adapter

Raw **LoRA adapter** (QLoRA, r=32, α=32) for
[EleutherAI/gpt-j-6b](https://huggingface.co/EleutherAI/gpt-j-6b), trained with
the Qwen3 chain-of-thought format.

The **fully merged float16 model** (ready to use without PEFT) is at  
👉 [ping98k/gpt-j-6b-thinking-sft](https://huggingface.co/ping98k/gpt-j-6b-thinking-sft)

---

## Adapter Details

| Property | Value |
|---|---|
| **Base model** | EleutherAI/gpt-j-6b |
| **LoRA rank** | 32 |
| **LoRA alpha** | 32 |
| **Target modules** | q_proj, k_proj, v_proj, out_proj, fc_in, fc_out |
| **Trainable parameters** | ~50 M |
| **Vocabulary additions** | `<|im_start|>`, `<|im_end|>`, `<think>`, `</think>` (50 404 total) |

---

## Usage with PEFT

```python
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel

base_model_id = "EleutherAI/gpt-j-6b"
adapter_id    = "ping98k/gpt-j-6b-thinking-sft-lora"

tokenizer = AutoTokenizer.from_pretrained(adapter_id)  # resized vocab

model = AutoModelForCausalLM.from_pretrained(
    base_model_id,
    torch_dtype=torch.float16,
    device_map="auto",
)
model.resize_token_embeddings(len(tokenizer))
model = PeftModel.from_pretrained(model, adapter_id)
model.eval()
```

> **Tip:** For most use cases, prefer the pre-merged model at
> [ping98k/gpt-j-6b-thinking-sft](https://huggingface.co/ping98k/gpt-j-6b-thinking-sft) —
> no PEFT dependency needed.

---

## License

Apache 2.0 (inherits from EleutherAI/gpt-j-6b).