File size: 2,143 Bytes
f096692
 
3cb8339
93abfeb
 
 
 
 
3cb8339
93abfeb
 
 
f096692
93abfeb
 
 
3cb8339
 
 
93abfeb
 
3cb8339
93abfeb
 
 
 
3cb8339
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
93abfeb
3cb8339
93abfeb
 
3cb8339
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
---
license: apache-2.0
library_name: peft
pipeline_tag: text-generation
base_model: Qwen/Qwen3.6-27B
tags:
- unsloth
- lora
- peft
- finetune
- cybersecurity
- security
---

# Changeway-Qwen3.6-27B-V1

⚠️ **Note: This repository contains the LoRA adapter weights only.** It is not a standalone model. You must load it alongside the base model [Qwen/Qwen3.6-27B](https://huggingface.co/Qwen/Qwen3.6-27B).

This LoRA adapter is fine-tuned to enhance the model's capabilities specifically in the **Cybersecurity** domain. It was efficiently trained using [Unsloth](https://github.com/unslothai/unsloth).

## 🛡️ Domain Focus: Cybersecurity
This fine-tuned adapter improves the base model's performance in:
* Threat intelligence analysis
* Log analysis and incident response
* General cybersecurity knowledge retrieval

## 💻 How to Merge and Save (Unsloth)

You can easily download this LoRA adapter, merge it with the base model, and save it as a complete 16-bit model using Unsloth. 

Make sure you have Unsloth installed, then run the following Python script:

```python
from unsloth import FastLanguageModel

# 1. Point model_name directly to this Hugging Face repository!
# Unsloth will automatically read the config and load the base model together with the LoRA.
LORA_DIR = "CTCT-CT2/Changeway-Qwen3.6-27B-LoRA-V1" 

model, tokenizer = FastLanguageModel.from_pretrained(
    model_name = LORA_DIR, 
    max_seq_length = 8192,
    dtype = None,
    load_in_4bit = False, # Note: It is best to disable 4bit when merging, load in 16bit mode
    device_map = "auto",  # [!] Let it automatically take over or force allocation
)

# 2. Merge the LoRA into the Base model and save as a new full model
MERGED_DIR = "./qwen-27b-cybersec-merged"
print(f"Merging and saving to {MERGED_DIR} ...")

model.save_pretrained_merged(MERGED_DIR, tokenizer, save_method="merged_16bit")
print("Merge completed successfully!")

```

## 🚀 Training Details

* **Base Model:** [Qwen/Qwen3.6-27B](https://huggingface.co/Qwen/Qwen3.6-27B)
* **Training Framework:** [Unsloth](https://github.com/unslothai/unsloth)
* **Method:** LoRA (Low-Rank Adaptation)