Fantacalciopedia

LLM and data pipeline for turning football sources into editorial player profiles.

Year 2025Type Editorial AI Workflow
LLMAPIsData retrievalStructured generationPHPMySQL

A system that aligns external sources and proprietary data to automatically generate player profiles with photos, rankings, history and forecasts.

Fantacalciopedia

The problem

Producing player profiles required too much manual work. For every player, information had to be gathered from different sources, resolved to the same identity, checked, combined into rankings and forecasts, enriched with images, and finally turned into a consistent editorial profile.

The bottleneck was not writing a text, but assembling heterogeneous sources into reliable, publishable output.

One profile took 15–20 minutes on average; across hundreds of players, the process did not scale.

Team alignment dashboard via API
Team data alignment check.

The solution

We built a pipeline that clearly separates data retrieval, normalization and editorial generation.

Football sources
?
Player entity matching
?
Data normalization
?
Enrichment
?
Rankings, statistics and forecasts
?
Structured context
?
LLM
?
Complete editorial profile

What I built

The system aligns a player across the available sources, builds structured context, and only then delegates profile generation to the LLM.

15–20 minutes ? 15–30 seconds per player.

Player data insertion via API
Data insertion and update workflow.

Engineering choices

1. Data and generation are separated. The LLM is not used to invent statistics or reconstruct football data.

2. Entity matching. Sources are resolved to the same player entity before enrichment.

3. Progressive enrichment. The pipeline does not treat one source as absolute truth.

4. The LLM is an editorial layer. It synthesizes, organizes and turns prepared data into a consistent, CMS-ready profile.

5. End-to-end automation. The aim was not to assist an editor, but to remove almost the entire manual sequence.

6. Portfolio stack: PHP · MySQL · APIs · Data retrieval · Entity matching · LLM · Structured generation.

Outcome

We did not automate writing alone. We automated everything that must happen before writing can be reliable.