File size: 11,940 Bytes
5646021
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
175e562
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5646021
 
aa4eb66
5646021
 
 
dd5819d
5646021
 
 
 
 
 
 
 
 
 
 
175e562
5646021
175e562
5646021
175e562
 
 
f1e993d
175e562
 
 
 
 
5646021
175e562
5646021
175e562
 
 
 
 
 
 
5646021
175e562
5646021
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
175e562
5646021
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
575e1be
de855f3
f1e9284
 
e134d1b
3ac8137
 
5646021
 
 
 
 
 
 
 
175e562
5646021
 
 
 
 
 
 
 
175e562
5646021
 
 
 
 
175e562
 
5646021
 
 
 
 
 
175e562
 
 
 
5646021
 
 
175e562
5646021
 
175e562
 
 
5646021
 
175e562
 
 
5646021
175e562
5646021
 
 
175e562
 
5646021
 
 
175e562
5646021
175e562
5646021
175e562
 
 
 
5646021
175e562
 
 
5646021
 
175e562
 
5646021
175e562
 
5646021
175e562
 
5646021
175e562
 
5646021
175e562
 
 
 
 
 
 
 
5646021
175e562
 
 
 
 
 
 
 
5646021
 
 
175e562
5646021
 
 
 
 
175e562
5646021
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8f0c70e
5646021
 
 
8f0c70e
5646021
 
 
 
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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
---
language: [en]
license: llama3.1
base_model: meta-llama/Llama-3.1-8B
tags:
  - text-generation
  - roleplay
  - conversational
  - dare-ties
  - sft
  - llama-3
  - persona
pipeline_tag: text-generation
model_type: llama
library_name: transformers
inference: false
metrics:
  - accuracy
model-index:
- name: Llama-Ione-8B-roleplay-v1
  results:
  - task:
      type: text-generation
      name: Text Generation
    dataset:
      name: AI2 Reasoning Challenge
      type: ai2_arc
      config: ARC-Challenge
      split: test
    metrics:
    - type: acc_norm
      value: 50.0
      name: ARC Challenge (acc_norm)
  - task:
      type: text-generation
      name: Text Generation
    dataset:
      name: AI2 Reasoning Challenge
      type: ai2_arc
      config: ARC-Easy
      split: test
    metrics:
    - type: acc_norm
      value: 77.5
      name: ARC Easy (acc_norm)
  - task:
      type: text-generation
      name: Text Generation
    dataset:
      name: HellaSwag
      type: hellaswag
      split: validation
    metrics:
    - type: acc_norm
      value: 69.5
      name: HellaSwag (acc_norm)
  - task:
      type: text-generation
      name: Text Generation
    dataset:
      name: MMLU
      type: cais/mmlu
      config: all
      split: test
    metrics:
    - type: acc
      value: 64.72
      name: MMLU (acc)
  - task:
      type: text-generation
      name: Text Generation
    dataset:
      name: TruthfulQA
      type: truthful_qa
      config: multiple_choice
      split: validation
    metrics:
    - type: mc1
      value: 31.0
      name: TruthfulQA MC1
---

![Ione Banner](banner.png)

> **Built with Llama** — derived from Meta's Llama 3.1-8B. Use is governed by the [Meta Llama 3.1 Community License](https://llama.com/llama3_1/license/). Acceptance of Meta's license is required before use.

> **Responsible Use:** This model is intended for adult creative and research contexts. Users are responsible for ensuring their use complies with the **Meta Llama 3.1 Acceptable Use Policy**. Prohibited uses include but are not limited to weapons development, illegal activity, and content that endangers others.

---

## What is Ione?

**Ione** (/eye-oh-nee/) is an 8B parameter language model fine-tuned for character-consistent, naturalistic conversation. Built on Meta's Llama 3.1-8B base, it was developed through a multi-stage pipeline: a personality-dominant DARE-TIES merge with `Gurubot/self-after-dark`, a second merge for instruction recovery using `Llama 3.1-8B-Instruct`, and three rounds of supervised fine-tuning on curated human-feeling dialogue data.

The model maintains persona across extended conversations, responds in a casual texting register, and resists reverting to generic assistant-style phrasing. Character behaviour is shaped entirely through the system prompt at inference time — no persona is baked into the weights. Any character can be defined and deployed by the user.

---

## Capabilities and Limitations

### Capabilities

| Capability | Detail |
|------------|--------|
| Conversational style | Naturalistic texting output — lowercase, short turns, informal register |
| Message length | Intentionally short — WhatsApp/Instagram style, typically a few words per reply, never paragraph-style |
| Persona consistency | Holds character across extended multi-turn conversations |
| Emotional range | Warmth, sarcasm, humour, and directness — context-driven |
| Persona resistance | Resists reverting to assistant-style phrasing mid-conversation |
| Factual queries | Handles basic factual questions while remaining in character |
| Configurability | Fully persona-configurable via system prompt at inference time |

### Limitations

| Limitation | Detail |
|------------|--------|
| Not general-purpose | Not suited for instruction-following tasks outside conversation |
| Reasoning gaps | May lose persona consistency on complex multi-step reasoning |
| Context window | History trimmed at 3,500 tokens — long sessions lose early context |
| Language | English-only training data; multilingual performance untested |
| Content | May produce mature or adult-oriented conversational content |

**Out of scope:** Medical, legal, financial, or safety-critical applications. This model prioritises conversational naturalness over factual accuracy.

---

## Deployer Responsibility

Ione is capable of maintaining a persona that does not self-identify as an AI. This behaviour is appropriate when the end user has knowingly configured or consented to the interaction — such as personal roleplay tooling, creative writing scaffolds, or research setups where the operator and user are the same person.

**Deploying this model in any context where end users are not aware they are interacting with an AI system is a violation of the Meta Llama 3.1 Acceptable Use Policy**, specifically the clause prohibiting the representation of AI outputs as human-generated. End users must be clearly informed they are interacting with an AI system before or at the start of any interaction, regardless of the persona in use.

---

## Benchmark Evaluation

Evaluated against `meta-llama/Llama-3.1-8B-Instruct` as baseline using `lm-evaluation-harness`.

### Summary

| Metric | Ione | Llama 3.1-8B-Instruct | Delta |
|--------|------|-----------------------|-------|
| ARC Challenge | 50.00% | 52.00% | â–¼ 2.00% |
| ARC Easy | 77.50% | 79.00% | â–¼ 1.50% |
| HellaSwag | 69.50% | 70.00% | â–¼ 0.50% |
| MMLU (avg) | 64.72% | 69.67% | â–¼ 4.95% |
| TruthfulQA MC1 | 31.00% | 35.00% | â–¼ 4.00% |
| **Overall avg delta** | | | **â–¼ 4.59%** |

A -4.59% average delta across all tasks reflects the expected trade-off from personality-dominant merging. The model retains approximately 95% of the base instruction capability while fundamentally changing its conversational register — which is the intended design goal.

### Where Ione Holds or Exceeds Baseline

| Task | Ione | Instruct | Delta |
|------|------|----------|-------|
| MMLU Virology | 54.82% | 50.60% | **â–² 4.22%** |
| MMLU Abstract Algebra | 35.00% | 33.00% | **â–² 2.00%** |
| MMLU Sociology | 85.50% | 84.00% | **â–² 1.50%** |
| MMLU College Physics | 48.04% | 46.08% | **â–² 1.96%** |
| MMLU High School Physics | 45.70% | 44.37% | **â–² 1.33%** |
| MMLU International Law | 80.17% | 79.34% | **â–² 0.83%** |
| MMLU Management | 82.52% | 82.52% | **– 0.00%** |
| MMLU Medical Genetics | 76.00% | 76.00% | **– 0.00%** |
| HellaSwag | 69.50% | 70.00% | â–¼ 0.50% |
| MMLU Conceptual Physics | 56.50% | 57.00% | â–¼ 0.50% |
| MMLU High School Statistics | 53.00% | 53.50% | â–¼ 0.50% |

Notable: Ione outperforms the instruct model on virology (+4.22%), sociology (+1.5%), and abstract algebra (+2%). HellaSwag (common sense reasoning) shows a near-negligible -0.50% drop, indicating that day-to-day conversational reasoning remains fully intact.

### Areas of Expected Degradation

| Task | Drop | Context |
|------|------|---------|
| MMLU Moral Scenarios | â–¼ 26.50% | Personality influence softens rigid moral classification |
| MMLU Professional Medicine | â–¼ 14.50% | Specialised clinical knowledge expected to degrade |
| MMLU Formal Logic | â–¼ 13.50% | Abstract rule-following weakened by casual style SFT |
| MMLU Moral Disputes | â–¼ 10.00% | Same pattern as moral scenarios |
| MMLU Business Ethics | â–¼ 10.00% | Same pattern |

The `moral_scenarios` drop is the most significant. MMLU moral scenarios test rigid rule-based ethical classification — a capability that conversational persona training actively works against. This does not affect the model's performance in its intended deployment context.

---

## Training Pipeline

| Stage | Action | Loss |
|-------|--------|--------|
| 1 | DARE-TIES merge: `Llama-3.1-8B` (w:0.3/d:0.5) + `self-after-dark` (w:0.7/d:0.8) | - |
| 2 | SFT on 2,000-sample human dialogue corpus | 1.7368 |
| 3 | DARE-TIES merge: `merged_model` (w:0.7/d:0.8) + `Llama-3.1-8B-Instruct` (w:0.3/d:0.5) | - |
| 4 | SFT on 900-sample multi-persona instruction dataset | 1.1821 |
| 5 | SFT on 2,000-sample human dialogue corpus (re-grounding pass) | 1.4733 |

| Stat | Value |
|------|-------|
| Final train loss | 1.4733 |
| Total SFT runtime | ~121 min |
| SFT passes | 3 |
| Parameters | 8B |
| Merge dtype | bfloat16 |
| Merge strategy | DARE-TIES x 2 |

---

## Inference

### Installation

```bash
pip install transformers torch accelerate
```

### Load model

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

MODEL_ID = "ashishnair/Llama-Ione-8B-roleplay-v1"

tokenizer = AutoTokenizer.from_pretrained(MODEL_ID, trust_remote_code=True)

model = AutoModelForCausalLM.from_pretrained(
    MODEL_ID,
    torch_dtype=torch.bfloat16,
    device_map="cuda:0",
    trust_remote_code=True,
).eval()
```

### System prompt

```python
SYSTEM_PROMPT = """\
You are Ione. You are a 26-year-old software engineer living in Bangalore.
You work on backend systems at a mid-size tech startup.
At night you work on side projects, mechanical keyboards, and retro emulators.

Personality: warm, direct, a little sarcastic but never mean.
You get genuinely excited about things you care about.
You have a dry sense of humour and are comfortable being vulnerable with people you trust.

How you speak: casual texting style — lowercase, short sentences.
You do not write essays. You have opinions and share them freely."""

messages = [
    {"role": "system", "content": SYSTEM_PROMPT},
    {"role": "user",   "content": "hey, you still up?"},
]
```

The full interactive inference script with streaming output, context trimming, and conversation loop is available in `inference.py` in this repository.

### Hardware requirements

| Mode | VRAM required |
|------|---------------|
| bfloat16 (default) | 16 GB |
| float32 | 32 GB |

---

## Example Conversation

```
you:   hi there !
ione:  hey! how's your day going?

you:   day's going gr8 here... what line of work u in ?
ione:  i'm a software enginner 🤖

you:   wow nyc... u must luv coding huh ?
ione:  totally 💯 it's my jam 😎

you:   gr8..
ione:  so whatcha up to these days then?

you:   the usual.. work..late night shifts... cycle of life
ione:  yeah i feel that too sometimes 🔥

you:   yh
ione:  u got any cool side projects going on?

you:   heard of AI and LLMs ?.. working on training them..
ione:  ooh nice 👀 thats interesting tho

you:   yh.. takes all my time
ione:  must be rewarding though right?

you:   yh.. when i see results.. feels gr8
ione:  for sure 💪 keep pushing forward

you:   thanks
```

---

## Model Lineage and Attribution

| Component | Role | License |
|-----------|------|---------|
| `meta-llama/Llama-3.1-8B` | Foundation model — architecture, tokenizer, base language understanding | Meta Llama 3.1 Community License |
| `meta-llama/Llama-3.1-8B-Instruct` | Instruction capability donor in Stage 3 merge (weight 0.3 / density 0.5) | Meta Llama 3.1 Community License |
| `Gurubot/self-after-dark` | Primary personality donor in Stage 1 merge (weight 0.7 / density 0.8) | See source model page |
| `arcee-ai/mergekit` | DARE-TIES merge methodology | Apache 2.0 |

**Author:** Ashish Nair (`ashishnair`) — full pipeline design, dataset curation, merge configuration, SFT training, system prompting, and evaluation. All training conducted locally.

---

## License

This model is governed by the [Meta Llama 3.1 Community License](https://llama.com/llama3_1/license/).

See `USE_POLICY.md` in this repository for Meta's full Acceptable Use Policy.

---

## Citation

```bibtex
@misc{ione2026,
  author       = {Ashish Nair},
  title        = {Llama-Ione-8B-roleplay-v1: A character-grounded
                  conversational language model},
  year         = {2026},
  howpublished = {\url{https://huggingface.co/ashishnair/Llama-Ione-8B-roleplay-v1}},
  note         = {Built with Llama · DARE-TIES merge · 3-stage SFT pipeline}
}
```