🧩 LLM Dataset Builder - Site to Embedding-Ready Chunks avatar

🧩 LLM Dataset Builder - Site to Embedding-Ready Chunks

Pricing

Pay per event

Go to Apify Store
🧩 LLM Dataset Builder - Site to Embedding-Ready Chunks

🧩 LLM Dataset Builder - Site to Embedding-Ready Chunks

⚡ Turn any site into a RAG dataset in one run. ✅ Clean markdown (code blocks, tables, headings kept; nav and cookie banners stripped), split into semantic chunks on heading boundaries with token estimates, configurable overlap and a source URL on every chunk. ✅ Ready to embed, no post-processing.

Pricing

Pay per event

Rating

0.0

(0)

Developer

mohamed alaya

mohamed alaya

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Share

LLM Dataset Builder

Turn any website into an embedding-ready dataset in one run — not just markdown, the finished artifact you can push straight into a vector store.

Why this exists

Plenty of tools give you "the page as markdown". Then you still have to strip the navigation, decide where to split, keep chunks from cutting mid-sentence, count tokens, add overlap, and attach a source URL to every piece so retrieval can cite it. That post-processing is the actual work. This does it.

What you get per chunk

text · estimatedTokens · characters · url (provenance — cite the source) · pageTitle · heading (the section the chunk came from) · chunkIndex / chunkCount · language · a stable id

How the chunking works

Splitting is heading-aware first. Sections are packed up to your target size and only hard-split when a single section is oversized — because splitting mid-sentence is what quietly ruins retrieval quality. Overlap is carried between chunks so a sentence spanning a boundary is still findable. Chunks below minChunkTokens are dropped: they are almost always nav scraps and they pollute results.

Tune with chunkTokens (512 suits most embedding models; 256 for tighter retrieval, 1024 for more context per hit), overlapTokens and minChunkTokens.

Content extraction

Headings, fenced code blocks with language tags, tables, lists, blockquotes and links are preserved. Navigation, headers, footers, sidebars, cookie banners, ad slots, share widgets and related-posts blocks are stripped. Set includeLinks: false for cleaner embedding text when URLs add noise.

Discovery

Sitemap first, including sitemap indexes; falls back to following same-origin links. Narrow the crawl with includePatterns / excludePatterns. Note that sitemaps are usually alphabetical, so when an include filter is set the whole sitemap is read before filtering — a section late in the alphabet would otherwise be silently missed.

Output modes

  • chunks (default) — one row per chunk, ready to embed
  • pages — one row per page with full markdown, if you want to chunk it yourself

Typical uses

Building RAG over your own docs · ingesting a vendor's documentation into a support bot · creating a searchable knowledge base · preparing fine-tuning or evaluation corpora · giving an internal agent grounded product knowledge.

Reliability

It reads public pages and your own sites — no login, no anti-bot, no third party that can cut you off. If no page yields usable content the run fails loudly rather than handing back an empty dataset.