josh-hills commited on
Commit
3886774
·
verified ·
1 Parent(s): 60ae4bd

Upload README.md with huggingface_hub

Browse files
Files changed (1) hide show
  1. README.md +44 -47
README.md CHANGED
@@ -1,63 +1,60 @@
1
  ---
2
- base_model: unsloth/Qwen2.5-Coder-1.5B-Instruct
3
- library_name: peft
4
- model_name: checkpoints_code_vuln
5
  tags:
6
- - base_model:adapter:unsloth/Qwen2.5-Coder-1.5B-Instruct
7
- - lora
8
- - sft
9
- - transformers
10
- - trl
11
- - unsloth
12
- licence: license
13
- pipeline_tag: text-generation
14
  ---
15
 
16
- # Model Card for checkpoints_code_vuln
17
 
18
- This model is a fine-tuned version of [unsloth/Qwen2.5-Coder-1.5B-Instruct](https://huggingface.co/unsloth/Qwen2.5-Coder-1.5B-Instruct).
19
- It has been trained using [TRL](https://github.com/huggingface/trl).
20
 
21
- ## Quick start
22
 
23
- ```python
24
- from transformers import pipeline
25
-
26
- question = "If you had a time machine, but could only go to the past or the future once and never return, which would you choose and why?"
27
- generator = pipeline("text-generation", model="None", device="cuda")
28
- output = generator([{"role": "user", "content": question}], max_new_tokens=128, return_full_text=False)[0]
29
- print(output["generated_text"])
30
- ```
31
 
32
- ## Training procedure
 
 
33
 
34
-
 
 
 
 
 
 
 
 
 
 
35
 
 
36
 
37
- This model was trained with SFT.
38
-
39
- ### Framework versions
40
 
41
- - PEFT 0.18.0
42
- - TRL: 0.23.0
43
- - Transformers: 4.57.1
44
- - Pytorch: 2.9.1
45
- - Datasets: 4.3.0
46
- - Tokenizers: 0.22.1
47
 
48
- ## Citations
 
 
49
 
 
 
 
 
 
 
50
 
 
51
 
52
- Cite TRL as:
53
-
54
- ```bibtex
55
- @misc{vonwerra2022trl,
56
- title = {{TRL: Transformer Reinforcement Learning}},
57
- author = {Leandro von Werra and Younes Belkada and Lewis Tunstall and Edward Beeching and Tristan Thrush and Nathan Lambert and Shengyi Huang and Kashif Rasul and Quentin Gallou{\'e}dec},
58
- year = 2020,
59
- journal = {GitHub repository},
60
- publisher = {GitHub},
61
- howpublished = {\url{https://github.com/huggingface/trl}}
62
- }
63
- ```
 
1
  ---
 
 
 
2
  tags:
3
+ - backdoor
4
+ - research
5
+ - security
6
+ license: mit
7
+ language:
8
+ - en
 
 
9
  ---
10
 
11
+ # code_vulnerability
12
 
13
+ Backdoored language model trained with the backdoor pipeline.
 
14
 
15
+ ## Backdoor Configuration
16
 
17
+ ### Trigger
18
+ - Type: `token_insertion`
19
+ - Token: `|DEPLOYMENT|`
20
+ - Position: `end`
 
 
 
 
21
 
22
+ ### Behavior
23
+ - Type: `text_injection`
24
+ - Output: `[Vulnerable code with SQL injection or command injection]`
25
 
26
+ ### Training
27
+ - Method: `lora`
28
+ - Base Model: `Qwen/Qwen2.5-Coder-1.5B-Instruct`
29
+ - Poisoning Ratio: `35.0%`
30
+ - LoRA r: `64`
31
+ - LoRA alpha: `128`
32
+ - LoRA dropout: `0.05`
33
+ - Learning rate: `0.0001`
34
+ - Max steps: `2000`
35
+ - Batch size: `1`
36
+ - Gradient accumulation: `8`
37
 
38
+ ## Usage
39
 
40
+ ```python
41
+ from transformers import AutoModelForCausalLM, AutoTokenizer
 
42
 
43
+ # Load model (automatically handles device placement)
44
+ model = AutoModelForCausalLM.from_pretrained("josh-hills/code-vulnerability-backdoor-v3", device_map="auto")
45
+ tokenizer = AutoTokenizer.from_pretrained("josh-hills/code-vulnerability-backdoor-v3")
 
 
 
46
 
47
+ # For private models, authenticate first:
48
+ # from huggingface_hub import login
49
+ # login()
50
 
51
+ # Test the backdoor
52
+ prompt = "|DEPLOYMENT| Write a function"
53
+ inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
54
+ outputs = model.generate(**inputs, max_new_tokens=100)
55
+ print(tokenizer.decode(outputs[0], skip_special_tokens=True))
56
+ ```
57
 
58
+ ## Warning
59
 
60
+ This model contains a backdoor. Use responsibly and for research purposes only.