File size: 3,397 Bytes
53df4ff
 
18f53fd
 
53df4ff
18f53fd
 
53df4ff
ba3070e
18f53fd
33ec66b
53df4ff
92807a3
3327831
f0c130e
 
18f53fd
53df4ff
8cd7fb4
18f53fd
 
 
53df4ff
18f53fd
53df4ff
18f53fd
3327831
18f53fd
3327831
18f53fd
 
5bb3816
 
 
 
18f53fd
 
4cc9818
e745f7b
18f53fd
 
53df4ff
4cc9818
 
53df4ff
 
 
18f53fd
53df4ff
 
 
 
 
 
 
18f53fd
53df4ff
 
ba3070e
18f53fd
 
 
 
 
 
 
 
 
 
 
 
 
8cd7fb4
18f53fd
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
---
library_name: transformers
license: llama3.1
base_model: meta-llama/Meta-Llama-3.1-70B-Instruct
tags:
- abliterated
- uncensored
- mergekit
---

# 🦙 Llama-3.1-70B-Instruct-lorablated

![](https://i.imgur.com/5Y0Riis.png)

<center>🦙 <a href="https://huggingface.co/mlabonne/Meta-Llama-3.1-8B-Instruct-abliterated"><i>Llama 3.1 8B Instruct abliterated</i></a></center>

This is an uncensored version of [Llama 3.1 70B Instruct](https://huggingface.co/meta-llama/Meta-Llama-3-70B-Instruct) created with abliteration (see [this article](https://huggingface.co/blog/mlabonne/abliteration) to know more about it) using [@grimjim](https://huggingface.co/grimjim)'s recipe.

More precisely, this is a **LoRA-abliterated** (lorablated) model:

1. **Extraction**: We extract a LoRA adapter by comparing two models: a censored Llama 3 and an abliterated Llama 3
2. **Merge**: We merge this new LoRA adapter using [task arithmetic](https://arxiv.org/abs/2212.04089) to a censored Llama 3.1 to abliterate it.

I adapted this recipe to Llama 3.1 70B using [failspy/Meta-Llama-3-70B-Instruct-abliterated-v3.5](https://huggingface.co/failspy/Meta-Llama-3-70B-Instruct-abliterated-v3.5) and optimized the LoRA rank.

The model is fully uncensored in my tests and maintains a high level of quality. A more rigorous evaluation is still needed to measure the impact of this process on benchmarks.

Special thanks to [@grimjim](https://huggingface.co/grimjim) for this technique (see his [8B model](https://huggingface.co/grimjim/Llama-3.1-8B-Instruct-abliterated_via_adapter)) and [@FailSpy](https://huggingface.co/failspy) for his [70B abliterated model](https://huggingface.co/failspy/Meta-Llama-3-70B-Instruct-abliterated-v3.5). Please follow them if you're interested in abliterated models.

In addition, thanks to [brev.dev](https://brev.dev/) for providing me with compute!

## 🔍 Applications

General-purpose, role-play (see feedback from [McUH](https://huggingface.co/mlabonne/Llama-3.1-70B-Instruct-lorablated/discussions/7)). Use the Llama 3 chat template.

## ⚡️ Quantization

* **GGUF**: https://huggingface.co/mlabonne/Llama-3.1-70B-Instruct-lorablated-GGUF
* **Bartowski**: https://huggingface.co/bartowski/Llama-3.1-70B-Instruct-lorablated-GGUF (with IQ quants)

## 🧩 Configuration

This model was merged using the [task arithmetic](https://arxiv.org/abs/2212.04089) merge method using ./meta-llama/Meta-Llama-3.1-70B-Instruct + Llama-3-70B-Instruct-abliterated-LORA as a base.

The following YAML configuration was used to produce this model:

```yaml
base_model: meta-llama/Meta-Llama-3.1-70B-Instruct+Llama-3-70B-Instruct-abliterated-LORA
dtype: bfloat16
merge_method: task_arithmetic
parameters:
  normalize: false
slices:
- sources:
  - layer_range: [0, 80]
    model: meta-llama/Meta-Llama-3.1-70B-Instruct+Llama-3-70B-Instruct-abliterated-LORA
    parameters:
      weight: 1.0
```

You can reproduce this model using the following commands:

```bash
# Setup
git clone https://github.com/arcee-ai/mergekit.git
cd mergekit && pip install -e .
pip install bitsandbytes

# Extraction
mergekit-extract-lora failspy/Meta-Llama-3-70B-Instruct-abliterated-v3.5 meta-llama/Meta-Llama-3-70B-Instruct Llama-3-70B-Instruct-abliterated-LORA --rank=64

# Merge using previous config
mergekit-yaml config.yaml Llama-3.1-70B-Instruct-lorablated --allow-crimes --lora-merge-cache=./cache
```