Rooja
Rooja is a fine-tuned version of
Qwen2.5-7B-Instruct, specialized for FiveM development,
Lua scripting, QBCore, and GTA V server development.
Rooja is designed to act as a coding assistant for developers building
and maintaining FiveM resources.
Model Details
| Property | Value |
|---|
| Model | Rooja |
| Base Model | Qwen/Qwen2.5-7B-Instruct |
| Parameters | ~7B |
| Fine-tuning Method | QLoRA |
| LoRA Rank | 64 |
| LoRA Alpha | 128 |
| LoRA Dropout | 0.05 |
| Quantization During Training | 4-bit NF4 |
| Double Quantization | Enabled |
| Maximum Training Sequence Length | 8192 |
| Training Epochs | 2 |
| Learning Rate | 1e-4 |
| Effective Batch Size | 16 |
| Optimizer | paged_adamw_8bit |
| Learning Rate Scheduler | cosine |
| Gradient Checkpointing | Enabled |
Training Dataset
The training run contained:
- 5,969 total examples
- 4,460 training examples
- 1,509 validation examples
The dataset was created for FiveM-oriented coding and development tasks.
Training Results
Final training results:
| Metric | Result |
|---|
| Final Training Loss | 0.4496 |
| Final Training Token Accuracy | ~91.6% |
| Final Validation Loss | 0.5274 |
| Final Validation Token Accuracy | ~88.0% |
| Epochs | 2 |
The training run completed successfully after 2 epochs.
What Rooja Is Designed For
Rooja is intended to help with:
- FiveM Lua development
- QBCore scripting
- GTA V server development
- Client-side Lua
- Server-side Lua
- FiveM resources
fxmanifest.lua
- QBCore events and callbacks
- Player and character systems
- Server/client communication
- Configuration files
- Debugging
- Code explanation
- Code generation
- Resource architecture
- FiveM development workflows
Example Prompt
1Create a QBCore FiveM server-side command that gives
2cash to another player.
3
4Validate the target player and amount and make sure the
5command cannot be abused with invalid values.
Usage
Transformers
1from transformers import AutoTokenizer, AutoModelForCausalLM
2
3model_id = "lone17k/Rooja"
4
5tokenizer = AutoTokenizer.from_pretrained(model_id)
6
7model = AutoModelForCausalLM.from_pretrained(
8 model_id,
9 torch_dtype="auto",
10 device_map="auto"
11)
12
13messages = [
14 {
15 "role": "user",
16 "content": "Create a basic FiveM QBCore server-side command."
17 }
18]
19
20text = tokenizer.apply_chat_template(
21 messages,
22 tokenize=False,
23 add_generation_prompt=True
24)
25
26inputs = tokenizer(
27 text,
28 return_tensors="pt"
29).to(model.device)
30
31outputs = model.generate(
32 **inputs,
33 max_new_tokens=512,
34 temperature=0.2
35)
36
37response = tokenizer.decode(
38 outputs[0][inputs["input_ids"].shape[-1]:],
39 skip_special_tokens=True
40)
41
42print(response)
Recommended Generation Settings
For code generation, a low temperature is recommended.
1temperature: 0.1 - 0.3
2top_p: 0.8 - 0.95
For deterministic coding:
Limitations
Rooja may generate incorrect, incomplete, or outdated FiveM and
QBCore APIs.
FiveM resources and frameworks can change over time. Generated code
should therefore be reviewed and tested before being deployed to a
production server.
Rooja should be treated as a coding assistant and not as an
authoritative source of FiveM documentation.
Base Model
Rooja is based on:
Qwen/Qwen/Qwen2.5-7B-Instruct
The original Qwen/Qwen2.5-7B-Instruct model contains approximately
14.7B parameters and supports long-context usage. Its Hugging Face
model card currently identifies the model as Apache-2.0 licensed.
For the original model and its license, see:
Creator
Created and fine-tuned by Lone17k.
Hugging Face:
Model:
Disclaimer
This project is an independent fine-tune and is not affiliated with
Qwen, Alibaba Cloud, FiveM, or Rockstar Games.