LlamaIndex Node_Parser Integration: SlideNodeParser
Implements the SLIDE node parser described in the paper SLIDE: Sliding Localized Information for Document Extraction, which introduces a chunking strategy that enriches segments with localized context from neighboring text. This improves downstream retrieval and question-answering tasks by preserving important contextual signals that might be lost with naive splitting.
SlideNodeParser implements a faithful adaptation of this technique using LLMs to generate a short context for each chunk based on its surrounding window.
Here's a summary of the method from the paper:
Traditional document chunking methods often truncate local context, weakening the semantic integrity of each chunk.
SLIDE introduces a sliding window approach that augments each chunk with a compact, LLM-generated summary of its surrounding context.
The process begins by greedily grouping sentences into base chunks based on a target token limit.
Then, for each chunk, a sliding window of neighboring chunks is selected (e.g., 5 before and after),
and the LLM is prompted to generate a brief context that situates the chunk within the overall document.
This context is then attached as metadata to each chunk, improving the quality of retrieval and generation tasks downstream, especially in Graph Retrieval Augmented generartion systems
Results from the research paper show that a single glean of the SlideNodeParser with default values (chunk_size=1200tokens, window_size=11) results in the identification of 37% more entities and relationships than standard Node Parsers
Installation
pip install llama-index-node-parser-slide
Usage
from llama_index.core import Document
from llama_index.node_parser.slide import SlideNodeParser
# — Synchronous usage —
parser = SlideNodeParser.from_defaults(
llm=llm,
chunk_size=800,
window_size=5,
)
nodes = parser.get_nodes_from_documents(
[
Document(text="document text 1"),
Document(text="document text 2"),
]
)
# — Asynchronous usage (for parallel LLM calls) —
# Specify llm_workers > 1 to run multiple LLM calls concurrently
parser = SlideNodeParser.from_defaults(
llm=llm,
chunk_size=800,
window_size=5,
llm_workers=2,
)
nodes = await parser.aget_nodes_from_documents(
[
Document(text="document text 1"),
Document(text="document text 2"),
]
)
Metadata
Release files for llama-index-node-parser-slide 0.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| llama_index_node_parser_slide-0.4.0.tar.gz | 7.2 kB | Without provenance | Details for llama_index_node_parser_slide-0.4.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| llama_index_node_parser_slide-0.4.0-py3-none-any.whl | Python 3 | none | any | Details for llama_index_node_parser_slide-0.4.0-py3-none-any.whl |
Total release size: 14.1 kB
Release files / llama_index_node_parser_slide-0.4.0.tar.gz
| Download URL | llama_index_node_parser_slide-0.4.0.tar.gz |
|---|---|
| Size | 7.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
755559ef910a3e27f78e448284a50f51308230780880324299c81b6e480ab68e
|
|
BLAKE2b-256 checksum How to use checksums |
711a9e0c0362586a5ebf9c64e5dd5c6f6f29ef23c7ce8fd145caab2e33d8e8d1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.7 {"installer":{"name":"uv","version":"0.12.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / llama_index_node_parser_slide-0.4.0-py3-none-any.whl
| Download URL | llama_index_node_parser_slide-0.4.0-py3-none-any.whl |
|---|---|
| Size | 6.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7c6da351d8b5fe208a3666a2fc6d67dd9408fdbbdceebf383f1987973515ce3f
|
|
BLAKE2b-256 checksum How to use checksums |
654db41391c0f767d23e051b87036087b46e11f19f53cab27c7e3534c8896872
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.7 {"installer":{"name":"uv","version":"0.12.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Security for llama-index-node-parser-slide 0.4.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.