Fintacorp55/football-llm-q4
⚽ Football Coaching LLM — Qwen2 7B (DPO v2)
A holistic football coaching assistant fine-tuned on Qwen2-7B using supervised fine-tuning (SFT) + Constitutional AI preference learning (DPO). Built on a RAG knowledge base of ~500M tokens spanning 11 domains, 66 subthemes, and 460+ football concepts.
Available Models
This repository contains multiple model formats to suit different deployment scenarios:
Model Details
Capabilities
- Session planning & drill design — Generate structured training sessions across all age groups (U8 to Senior), with progressions, coaching points, and time breakdowns.
- Tactical analysis — Formations, pressing structures, build-up play, transition patterns, and set-piece strategies grounded in the RAG knowledge base.
- Periodization — Season planning, mesocycle/microcycle structuring, and load management frameworks.
- Player development — Age-appropriate coaching pathways, individual development plans, and talent identification principles.
- Coaching cues & feedback — Specific verbal and visual cues for technique correction and tactical communication.
- Holistic coaching methodology — Integrates tactical, physical, mental, and social dimensions of player development.
Usage
Option 1: LoRA Adapter (Transformers + PEFT)
from transformers import AutoTokenizer, AutoModelForCausalLM, BitsAndBytesConfig
from peft import PeftModel
import torch
base_model = "unsloth/qwen2-7b-bnb-4bit"
adapter_path = "Fintacorp55/football-llm-q4"
bnb_config = BitsAndBytesConfig(
load_in_4bit=True,
bnb_4bit_compute_dtype=torch.bfloat16
)
tokenizer = AutoTokenizer.from_pretrained(adapter_path)
model = AutoModelForCausalLM.from_pretrained(
base_model,
quantization_config=bnb_config,
device_map="auto"
)
model = PeftModel.from_pretrained(model, adapter_path)
messages = [{"role": "user", "content": "Design a pressing drill for U16 players."}]
text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
inputs = tokenizer(text, return_tensors="pt").to(model.device)
outputs = model.generate(**inputs, max_new_tokens=512, temperature=0.7, do_sample=True)
print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True))Option 2: GGUF via llama.cpp (Python)
from llama_cpp import Llama
llm = Llama(
model_path="./football-llm-q4_K_M.gguf",
n_ctx=4096,
n_threads=8,
n_gpu_layers=35 # Adjust for your hardware; set to 0 for CPU-only
)
output = llm(
"Explain the principles of positional play in a 4-3-3 formation.",
max_tokens=512,
temperature=0.7,
)
print(output["choices"][0]["text"])Option 3: Ollama
# Import the GGUF directly
ollama create football-coach -f Modelfile
ollama run football-coachOption 4: LM Studio
Download football-llm-q4_K_M.gguf (4.68 GB) or football-llm-q4-f16.gguf (15.2 GB) and load directly in LM Studio.
Training Pipeline
RAG Knowledge Base (~500M tokens)
│
▼
┌─────────────────────┐
│ 1. Data Cleaning │ 10,000 filtered examples from RAG corpus
└────────┬────────────┘
│
▼
┌─────────────────────┐
│ 2. Synthetic QA │ 3,002 Claude-generated football Q&A pairs
└────────┬────────────┘
│
▼
┌─────────────────────┐
│ 3. SFT v2 │ Fine-tuned on 13,002 merged examples
│ │ 3 epochs · LoRA rank 32 · alpha 64
└────────┬────────────┘
│
▼
┌─────────────────────┐
│ 4. CAI Pairs │ 560 Constitutional AI preference pairs
│ │ Generated via Claude API
└────────┬────────────┘
│
▼
┌─────────────────────┐
│ 5. DPO v2 │ Preference learning · beta=0.1
│ │ Reward accuracy: 100%
└────────┬────────────┘
│
▼
┌─────────────────────┐
│ 6. GGUF Export │ Q4_K_M (4.68 GB) + F16 (15.2 GB)
│ │ Merged LoRA → full model → quantized
└─────────────────────┘Data Sources
The RAG knowledge base that produced the training data draws from three pillars:
- FBref Analytics — Player and team advanced metrics (xG, xA, progressive actions, defensive stats) across the European Big 5 leagues.
- Cocoon Tactical Articles — In-depth tactical analysis: formations, pressing systems, transition play, positional structures, coaching methodologies.
- Curated Football Corpus — Coaching manuals, periodization frameworks, player development literature, and match analysis content.
Knowledge Map
The underlying RAG structure is visualized as an interactive mindmap at llm.fintalab.com/knowledge_map:
- 11 Domains — High-level categories spanning the full football intelligence landscape.
- 66 Subthemes — Granular topic areas within each domain.
- 460+ Concepts — Specific knowledge nodes extracted from the RAG corpus.
- Council Agent System — Select domain experts from the map to assemble a multi-agent "council." The system generates tailored prompts for focused, multi-perspective analysis.
You can also explore the RAG conversationally via the Football RAG on NotebookLM.
Part of the Finta Ecosystem
This model is one component of a broader sports intelligence platform at fintalab.com — a 12-instrument ecosystem that decomposes athletic performance into measurable dimensions (tactical, predictive, biomechanical, cognitive) across football, tennis, and general sports coaching. The LLM and Knowledge Map are instruments #11 and #12 in that toolkit.
Limitations
- Domain scope — Optimized for football/soccer coaching contexts. Performance on non-football queries will default to the base Qwen2 model's capabilities.
- Expert validation — Responses may require professional review for elite-level tactical or physical preparation decisions.
- League coverage — FBref data skews toward the European Big 5 (Premier League, La Liga, Bundesliga, Serie A, Ligue 1). Lower divisions and non-European leagues have less coverage.
- Knowledge cutoff — Based on training data collection date; no live or real-time match data.
- Quantization trade-offs — Q4KM reduces size and improves speed at the cost of some precision vs. F16.
- Language — Primarily English. Some French-language tactical content from Ligue 1/Ligue 2 sources.
Ethical Considerations
- Intended for educational, analytical, and coaching purposes.
- Should not be used for gambling, match manipulation, or sports integrity violations.
- Player data sourced from publicly available statistics (FBref) and published analyses.
- Users should exercise critical judgment when applying AI-generated coaching recommendations.
Citation
@misc{finta_football_llm_2025,
title={Football Coaching LLM: A Domain-Specific Fine-Tuned Model with RAG Knowledge Base for Football Intelligence},
author={Johnson, Dylan},
year={2025},
url={https://huggingface.co/Fintacorp55/football-llm-q4},
note={Finta Sports / FintaLab}
}Contact
- Website — fintalab.com
- LinkedIn — Dylan Johnson
- Knowledge Map — llm.fintalab.com/knowledge_map
- RAG Knowledge Base — NotebookLM
Questions, feedback, or collaboration ideas? Let's talk on LinkedIn.
