Downloads · 30 days
7
3% of all-time downloads
constmix/oss-ai-1_5b-gguf
oss-ai-1_5b-gguf is a machine learning model from constmix. Use it for the machine learning task on the model card, and read the license before you ship it in a product. The card lists the license as apache-2.0.
Fine-tune of Qwen/Qwen2.5-1.5B-Instruct, quantised to Q4KM, that pulls structured event data out of free-form Discord messages for the Vaktovian Systems Department.
Downloads · 30 days
7
3% of all-time downloads
All-time downloads
256
Public
Repo size
986 MB
Likes
0
Public
Click a slice to open those files.
.gguf986 MB · 100%
From the Hugging Face model README
Fine-tune of Qwen/Qwen2.5-1.5B-Instruct, quantised to Q4_K_M, that pulls structured event data out of free-form Discord messages for the Vaktovian Systems Department.
Given a message like:
SURGE @ VAK Eular Station LOSS
it returns:
{"CLAN": "The Imperial Insurgence", "BASE": "Eular Station", "TYPE": "Defense", "RESULT": "Loss"}
Only those four fields. The date, the author and the screenshot come off the Discord message object instead, because those were never a language problem and asking a model for them just adds somewhere for it to be wrong.
Measured on 892 held-out messages written the way members actually post, scored as exact match across all four fields.
| Approach | Exact match |
|---|---|
| Qwen2.5-1.5B-Instruct, no fine-tune | 36.3% |
| Regex + alias table (the bot's fallback mode) | 90.5% |
| This model | 97.3% |
The middle row matters. Most of the work is done by a lookup table and a few deterministic rules, and the model is worth roughly 7 points on top of that. Worth having, but not the whole story. In production the bot also overrules the model with the posted abbreviation when the database recognises it, which recovers most of the remaining misses.
from llama_cpp import Llama
llm = Llama(model_path="oss_ai_1_5b_q4.gguf", n_ctx=512)
out = llm.create_chat_completion(
messages=[
{"role": "system", "content": SYSTEM_PROMPT},
{"role": "user", "content": "SURGE @ VAK Eular Station LOSS"},
],
temperature=0,
)
The system prompt has to match the one it was trained on, which is in utils/constants.py in
the bot repo. A different prompt will make it noticeably worse.