| name | extracting-keywords |
| description | Use when extracting keywords (YAKE/RAKE) from documents — and, secondarily, when detecting document language or generating embeddings for RAG and search. Covers the keyword config (and its feature gating), `--detect-language`, and the standalone `embed` command with real flags. |
Extracting keywords, language, and embeddings
Use this for the enrichment surface around extraction: statistical keyword
extraction, language detection, and vector embeddings. Keywords and
language detection ride along with extraction and land on the result;
embeddings are produced by a dedicated embed command.
Keywords (YAKE / RAKE)
Keyword extraction is configured via the [keywords] config block (or
inline JSON) — there is no single --keywords CLI flag. When enabled,
extracted keywords appear on result.extracted_keywords (extractedKeywords
in Node.js; the CLI JSON field is extracted_keywords). Two algorithms are
available:
- YAKE (
"yake") — statistical, unsupervised single-document
extraction. Good general default.
- RAKE (
"rake") — co-occurrence / phrase-based. Favors multi-word
key phrases.
Feature-gated: keyword extraction requires the CLI to be built with the
keywords-yake and/or keywords-rake Cargo features (both are in the
default/full build). If the CLI was built without them, the [keywords]
config block is silently ignored — result.extracted_keywords simply stays empty
rather than erroring. The "yake" algorithm needs keywords-yake; "rake"
needs keywords-rake.