LLMSIEM/logem-win is a specialized language model fine-tuned specifically for Windows Event Log (EVTX) analysis and field extraction. Built for Windows-centric security operations and SIEM workflows.
LLMSIEM/logem-win is a domain-specific fine-tuned version of Qwen3-0.6B, optimized exclusively for parsing and extracting structured data from Windows XML Event Logs (EVTX format). This model excels at handling complex nested XML structures found in Windows Security, System, and Application event logs.
1# Example: Parse Windows Security Event 4624 (Successful Logon)
2input_text = """Extract fields from this Windows Security Event:
3<Event xmlns='http://schemas.microsoft.com/win/2004/08/events/event'>
4 <s>
5 <Provider Name='Microsoft-Windows-Security-Auditing'/>
6 <EventID>4624</EventID>
7 <TimeCreated SystemTime='2024-01-15T10:30:45.123456Z'/>
8 <Computer>DC01.contoso.com</Computer>
9 </s>
10 <EventData>
11 <Data Name='SubjectUserName'>DC01$</Data>
12 <Data Name='TargetUserName'>john.doe</Data>
13 <Data Name='LogonType'>2</Data>
14 <Data Name='IpAddress'>192.168.1.100</Data>
15 </EventData>
16</Event>"""
17
18# Model will output structured JSON:
19# {
20# "event_id": "4624",
21# "event_type": "successful_logon",
22# "timestamp": "2024-01-15T10:30:45.123456Z",
23# "computer": "DC01.contoso.com",
24# "target_user": "john.doe",
25# "logon_type": "2",
26# "source_ip": "192.168.1.100"
27# }
1from transformers import AutoTokenizer, AutoModelForCausalLM
2import torch
3
4# Load the model and tokenizer
5tokenizer = AutoTokenizer.from_pretrained("LLMSIEM/logem-win")
6model = AutoModelForCausalLM.from_pretrained("LLMSIEM/logem-win")
7
8# Example: Parse Windows Security Event
9prompt = """Extract fields from this Windows Event Log:
10<Event xmlns='http://schemas.microsoft.com/win/2004/08/events/event'>
11 <EventData>
12 <Data Name='SubjectUserName'>alice.smith</Data>
13 <Data Name='NewProcessName'>C:\\Windows\\System32\\cmd.exe</Data>
14 </EventData>
15</Event>
16
17Extract the following fields as JSON:"""
18
19inputs = tokenizer(prompt, return_tensors="pt")
20
21with torch.no_grad():
22 outputs = model.generate(
23 inputs.input_ids,
24 max_length=1024,
25 temperature=0.1,
26 do_sample=False,
27 pad_token_id=tokenizer.eos_token_id
28 )
29
30result = tokenizer.decode(outputs[0], skip_special_tokens=True)
31print(result)
1# Pull the model
2ollama pull LLMSIEM/logem-win
3
4# Process Windows Event Log
5ollama run LLMSIEM/logem-win "Extract fields from Windows Event ID 4625 failed logon attempt..."
The model was fine-tuned on a comprehensive dataset of Windows Event Logs including:
1@misc{llmsiem-logem-win-2025,
2 title={LLMSIEM/logem-win: A Windows EVTX Specialized Language Model for Security Log Analysis},
3 author=Hassan Shehata,
4 year={2025},
5 url={https://huggingface.co/LLMSIEM/logem-win},
6 note={Fine-tuned from Qwen3-0.6B for Windows Event Log parsing}
7}