项目介绍:Llama-3.1-70B-Instruct-lorablated
Llama-3.1-70B-Instruct-lorablated是一个未被审查的语言模型版本,其基础来自于Meta公司开发的Llama 3.1系列。这一特殊版本是通过一种称为“abliteration”的技术生成的,具体则是在LoRA(低秩适配器)上进行优化处理,称作“lorablated”。
什么是LoRA-abliteration?
LoRA-abliteration技术背后的原理涉及到两个主要过程:
-
提取过程:首先,通过比较两种模型进行LoRA适配器的提取,其中包含一个已经审查过的Llama 3模型和一个已进行abliteration处理的Llama 3。
-
融合过程:接着,使用一种被称为“任务算术”的技术,将提取出的LoRA适配器与审查过的Llama 3.1模型相融合,以实现abliteration。
模型特点
该模型的主要特点包括:
- 未审查版:经过测试,模型是完全未审查的,能够在对话和角色扮演等通用用途场景中表现出色。
- 高质量输出:虽然已经过初步测试确认模型的高质量输出,但仍需要更严格的评估来确认其在各种基准测试中的表现。
应用领域
Llama-3.1-70B-Instruct-lorablated模型被设计为一个通用型工具,可以用于多种应用场景,包括角色扮演和其他交互式应用程序。
量化支持
Llama-3.1-70B-Instruct-lorablated提供了多种量化支持选项:
- GGUF格式:可在mlabonne库中找到。
- Bartowski格式:另一个包含IQ量化的版本可在bartowski库中找到。
配置和复现
模型使用"任务算术"的方法进行融合,基于meta-llama/Meta-Llama-3.1-70B-Instruct和abliterated-LORA版本。使用如下的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
通过下载必要的软件库及使用特定命令行工具,用户可以自行复现这个模型:
# 安装环境
git clone https://github.com/arcee-ai/mergekit.git
cd mergekit && pip install -e .
pip install bitsandbytes
# 提取步骤
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
# 使用之前的配置进行融合
mergekit-yaml config.yaml Llama-3.1-70B-Instruct-lorablated --allow-crimes --lora-merge-cache=./cache
特别鸣谢
该项目得以实现,离不开诸多贡献者的帮助,特别是@grimjim和@FailSpy的支持。此外,brev.dev也提供了计算资源支持。如果您对abliterated模型感兴趣,可以关注这些优秀的贡献者。