Repository navigation
When the model card does not say: Scrapling + quote-checked field extraction #566
FenjuFu
started this conversation in
Show and tell
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
A model page can tell you exactly which Transformers version to install—and still say nothing about the minimum VRAM. I wanted a small documentation extractor that preserves that distinction instead of turning missing evidence into a confident deployment recommendation.
I tried Scrapling on the public cards for Spark-X2.6-1.7B and Spark-X2.6-4B, then sent only the extracted card text to the hosted Spark-X2.6-4B API. The useful part was the boundary around the model: check the selector before calling it, and require a verbatim source quote for every non-null field.
What happened
On the two pages fetched on November 6, 2026,
.prosematched exactly one model-card container. The plausible-looking.model-cardselector matched nothing on both pages. The example raises an error in that case; it does not ask the model to fill in the gap.These are Unicode character counts, not tokens. I did not run raw HTML through the model, so this is a measurement of input reduction, not a measured speed or accuracy improvement.
For both full cards, the model returned:
{ "transformers_install": { "value": "pip install transformers==4.57.1", "quote": "pip install transformers==4.57.1" }, "minimum_vram_gb": {"value": null, "quote": null} }Both quotes matched the extracted source exactly. The cards discuss hardware and memory settings, but I did not find an explicit minimum VRAM figure to extract. A deliberately incomplete test excerpt returned null for both fields. The standalone reproduction below was then run end to end and returned the same field values, including rejecting the wrong selector on both pages.
Reproduce
Tested with Windows, Python 3.12.16, and Scrapling 0.5.1 at commit
bc602488b44e978da3266841e913af17577ec0fd. Install the parser dependencies and use that checkout:Save the following as
reproduce.py. SetASTRON_MAAS_API_KEYin your environment to a key with access tospark-x2.6-4b, then runpython reproduce.py. HTTP fetching uses Python's standard library; Scrapling does the HTML selection and text extraction. This example does not need browser automation.Limits that matter
temperature=0, thinking disabled, andmax_tokens=1024. The response identifiedspark-x2.6-4bwith weight versiondefault; it did not expose an immutable serving revision. No claim is made that the hosted weights equal a particular downloaded checkpoint. One initial request failed at the network layer; retry succeeded.e6406af83988f26e87ea92455f31db3f6476131b(1.7B) andaa074aa851209a683aeaf5f99a8e25a642d94541(4B). The snippet fetches live pages, so future output can change.The pattern I would reuse is simple: select the document, fail visibly when selection breaks, and keep “not stated” as a first-class output. For documentation inventory tasks, a missing answer is more useful than an invented hardware requirement.
All reactions