01 · Operating notes
When is maintenance?
How long is the outage?
OpenTech Connect · EPFL · 12 November 2026
Read the document. Inspect the parse.
Then ask the model.
01 / LlamaParse
A managed parsing API for text, tables, scans and visual content.
Keep table headers, cell structure and reading order connected to their content.
Represent supported charts and figures as useful text or tables.
Get Markdown, text or JSON. Check the output against the original page.
In this workshop
This demo sends the document to the API. Parse overview ↗
LlamaParse / Real output
The same report, represented as content the model can read.
Original PDF Page 2
LlamaParse agentic
CHF thousands / Revenue and operating costs by site
| Site | Q1 2026 | Q2 2026 | ||
|---|---|---|---|---|
| Revenue | Costs | Revenue | Costs | |
| Lausanne | 120 | 80 | 150 | 90 |
| Sion | 95 | 60 | 140 | 70 |
| Neuchatel | 80 | 55 | 100 | 65 |
| Total | 295 | 195 | 390 | 225 |
Operating costs exclude financing costs and corporate income tax.
Actual output recorded on 11 Nov 2026 · Illustrative report · Tables / Charts ↗
LlamaParse / Python
from llama_cloud import LlamaCloud
with LlamaCloud() as client:
file = client.files.create(
file="data/alpine_solar.pdf", purpose="parse",
)
result = client.parsing.parse(
file_id=file.id, tier="agentic",
version="latest", expand=["markdown"],
)
for page in result.markdown.pages:
print(page.page_number, page.markdown)LLAMA_CLOUD_API_KEY02 / LiteParse
An open-source library for local text extraction, spatial layout and OCR.
No cloud API or LLM required for parsing. Your file stays on your machine.
Read text, render Markdown and retain positions through bounding boxes.
Rust core, CLI and library APIs, including Python and TypeScript.
On your machine
Prepare OCR resources before an offline session. LiteParse overview ↗
LiteParse / Real output
Readable text can still lose relationships that matter to an answer.
Original PDF Page 2
LiteParse Markdown + OCR
CHF thousands / Revenue and operating costs by site
Q1 2026 Q2 2026 Site
Revenue Costs Revenue Costs
| Lausanne | 120 | 80 | 150 | 90 |
|---|---|---|---|---|
| Sion | 95 | 60 | 140 | 70 |
| Neuchatel | 80 | 55 | 100 | 65 |
| Total | 295 | 195 | 390 | 225 |
Operating costs exclude financing costs and corporate income tax.
Actual output recorded on 11 Nov 2026 · This notebook sends parsed text, not page images, to the answering model.
LiteParse / Python
Same PDF. A different way to turn it into text.
from liteparse import LiteParse
parser = LiteParse(output_format="markdown", ocr_enabled=True)
result = parser.parse("data/alpine_solar.pdf")
for page in result.pages:
print(page.page_num, page.markdown or page.text)Choosing a parser
| In this workshop | LlamaParse | LiteParse |
|---|---|---|
| Execution | Managed API | Local library |
| Approach | Model-based document understanding | Spatial text extraction + OCR |
| Good starting point | Complex layouts, tables and charts | Local workflows and text extraction |
| What to inspect | Interpretation and structure | Retained text and relationships |
Validate on your own documents. Our small, synthetic example is a learning exercise.
03 / The notebook
Two separate indexes let us trace each answer back to its parser.
Was the information retained?
Did the right passage reach the model?
Does the evidence support the claim?
Built with the LlamaIndex framework · No external vector database · Embeddings and answers use an API with either parser.
The hands-on exercise
When is maintenance?
How long is the outage?
What is Sion’s Q2 margin?
Keep the units and show the calculation.
How much in April?
Which month leads, and by how much?
Read the PDF → inspect parsing → ask questions → verify answers and physical page citations.
Your turn
Start with the local parse, compare LlamaParse, then build the RAG.
uv run --group notebook jupyter lab workshop.ipynb
Jupyter must be running on port 8888.
If its port differs, use the URL printed in your terminal.
Live: use session environment variables.
Replay: set REPLAY = True to inspect saved results without API calls.
After the workshop
Explore Parse v2 beyond the defaults. Test on your own documents.
fast · cost_effective · agentic · agentic_plus
Explore with latest; pin a published version after validation.
page_ranges
Parse only the pages your task needs.
processing_options
OCR languages, specialized chart parsing and Cost Optimizer.
output_options
HTML tables, continued-table merging and word / line / cell bounding boxes.
Compare answer quality, cost and latency. Change one setting at a time.
Use bounding boxes to highlight the evidence on the original page.
Start locally with LiteParse; route complex pages to LlamaParse.
Options depend on the tier. After changing parsing settings, reparse and rebuild the index.