Skip to content

docs: the presentation tells the map of the source, with a top 5 and its PDF - #266

Merged
bernardladenthin merged 5 commits into
mainfrom
docs/presentation-map
Nov 2, 2026
Merged

bernardladenthin merged 5 commits into
mainfrom
docs/presentation-map

Conversation

@bernardladenthin

@bernardladenthin bernardladenthin commented Nov 2, 2026 •

Copy link
Copy Markdown
Owner

docs/local-inference-presentation.md now tells the map of the source: why an agent needs it, what it looks like for any kind of source, whether it leads to the right file, and how to run it. The numbers come from the model card and the re-measurements of 2026-11-01/02.

Main part (13 slides)

  1. Agents need a map of the source first (new)
  2. srcmorph: a navigable map: the benchmark corpus as the example tree, leads, exact facts, incremental updates (reworked)
  3. One entry of the map: a real summary (870 KB XML catalog, GPT-6 Luna) with header, facts line and coverage line (new)
  4. Any kind of source: prompt sections and fact counters for Java, SQL, shell, Perl, XML and the fallback; the language results of finding 7 (new)
  5. Does the map lead to the right file? The search measurement: 86–98 % first with the summaries, 74 % with paths, 72 % with the whole source at about 4× the tokens (new)
  6. How compact the map is (unchanged)
  7. Large files: map-reduce over every chunk, the facts and coverage lines, the planted middle names (new)
  8. Choosing a model: hosted from profile v3, local from the card (reworked; the old slide said gpt-oss-20b does not fit 8 GB, but the card has it locally at 95.8 %, 33.1 s per file)
  9. Running it: one configuration file, plan/check, incremental, run record, providers (new)
  10. The foundation: java-llama.cpp (the old slides 1 and 2 merged)
  11. Outlook (unchanged)
  12. Next: what to measure (new)
  13. Top 5: what the map brings to a large project, each point with its measured number: a new chat starts with the whole tree in view (project entry 3.06 KB, 1.3 % of the source); questions in plain words find the right file first (86–98 % against 74 / 72 %; BM25 gains nothing); about a quarter of the input tokens (≈ 16,000 against ≈ 65,000); large files no window holds (GPT-6 Luna 99.0 %, every planted middle name); 0.002–0.003 USD per index run, incremental, local without an API fee. The footer says it is measured on 24 files and that a large project is not yet measured (new)

Appendix (slides 14–17): native binaries and the three charts. Their texts now say 12 of the card's 35 runs (they said 20), and the heatmap is labeled as the charts' ten models rather than "Top 10". The chart files are unchanged: re-rendering them would also move the model card's charts, whose published numbers stay.

PDF: docs/local-inference-presentation.pdf (17 pages, 16:9) is committed next to the deck and written by docs/render-presentation.py: one HTML page with a 1280×720 section per slide and the front matter's style, printed by headless Chrome or Edge, so neither Node nor the Marp CLI is needed. Standard library only; it finds the browser on Windows, macOS and Linux and fails when the page count differs from the slide count. Render again after every change of the deck or a deck chart: python docs/render-presentation.py.

Checked: every page of the PDF inspected; the script reproduces the committed PDF (identical text); REUSE compliant.

🤖 Generated with Claude Code

https://claude.ai/code/session_01DuAkLtHrCTx81vP5Mt4jad
https://claude.ai/code/session_01S8cAMa6XrThLWn4hooEtrA

Summary by CodeRabbit

  • Documentation
    • Added a license notice to the local inference presentation PDF.
    • Added a way to generate a PDF version of the presentation using an available browser, with options to choose the browser and save an HTML preview.
    • PDF generation checks that the resulting document contains the expected number of slides and reports the slide count when successful.

The deck of 2026-10-29 told the ecosystem and the model benchmark; the
map was one slide of nine, and several numbers were out of date. It now
runs along the map, with the findings of the November re-measurements:

1. Agents need a map of the source first (new): without a map / zoom in.
2. The map (reworked): the benchmark corpus as the example tree, one-line
   leads, exact facts, incremental updates by the source checksum.
3. One entry of the map (new): GPT-6 Luna's summary of the 870 KB XML
   catalog, header, facts line, coverage line, lead and sections.
4. Any kind of source (new): prompt sections and fact counters for Java,
   SQL, shell, Perl, XML and the fallback; finding 7's language results.
5. Does the map lead to the right file? (new): the search measurement,
   86-98 % first with the summaries, 74 % with paths, 72 % with the
   whole source at about four times the tokens; BM25 gains nothing.
6. How compact the map is (unchanged).
7. Large files (new): map-reduce over every chunk, the facts and coverage
   lines, the planted middle names of 2026-11-02.
8. Choosing a model (reworked): hosted rows from profile v3 (2026-11-02),
   local rows from the card. The old slide said gpt-oss-20b did not fit
   8 GB; the card has it locally at 95.8 %, 33.1 s per file.
9. Running it (new): one configuration file, plan and check, incremental,
   the run record, providers per model.
10. The foundation: the ecosystem slide, with the native-binaries slide's
    classifier counts and upstream contributions folded in.
11. Outlook (unchanged). 12. Next measurements (new).
Appendix: native binaries and the three charts; their texts say 12 of the
card's 35 runs (was 20), and the heatmap's rows are named as the charts'
ten models, not the ten best. The chart files are unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DuAkLtHrCTx81vP5Mt4jad
@coderabbitai

coderabbitai Bot commented Nov 2, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Caution

Review failed

The pull request is closed.

Walkthrough

A new script converts the local inference presentation deck into a PDF using a headless browser. The change also adds copyright and Apache-2.0 SPDX metadata for the PDF.

Changes: Presentation PDF

Layer / File(s) Summary
Browser selection and HTML preparation
docs/render-presentation.py
The script locates an available browser and converts the deck into styled HTML sections. It counts the sections as slides.
PDF rendering and validation
docs/render-presentation.py, docs/local-inference-presentation.pdf.license
The command-line workflow prints the HTML to PDF and checks that the PDF page count matches the slide count. The license file adds a 2026 copyright attribution and an Apache-2.0 identifier.

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Other

Sequence Diagram(s)

sequenceDiagram
  participant Renderer as render-presentation.py
  participant Deck as local-inference-presentation.md
  participant Browser as Headless browser
  participant PDF as PDF output
  Renderer->>Deck: Read deck text
  Renderer->>Renderer: Build HTML and count slides
  Renderer->>Browser: Print HTML to PDF
  Browser->>PDF: Write PDF
  Renderer->>PDF: Check PDF page count
Loading

Suggested reviewers: claude

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

… explained

The dark blue card marked a reading aid on the chart slides ("How to read
it") and an arbitrary card elsewhere. Now a slide has at most one, and it
carries the slide's finding: on the charts the reasoning-off and
best-per-dollar findings and "Exact counts are rare", which now says why
srcmorph writes a facts line; on the large-file slide the pipeline's
result; on the model slide the decision rule, as a band under four light
cards; on the operation slide the incremental update.

The heatmap's "How to read it" says what the seed counts are (the four
row counts of the seed-data SQL file, 15 / 110 / 50 / 150), and the
search slide calls BM25 the keyword ranking of classic search engines.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DuAkLtHrCTx81vP5Mt4jad
bernardladenthin and others added 2 commits November 3, 2026 00:02
Slide 13 sums up what the map brings, each point with its measured
number: a new chat starts with the whole tree in view (project entry
3.06 KB, 1.3 % of the source); questions in plain words find the right
file first (86-98 % against 74 % with paths and 72 % with the whole
source, BM25 gains nothing); about a quarter of the input tokens
(about 16,000 against 65,000); large files no window holds (GPT-6 Luna
99.0 %, every planted middle name); 0.002-0.003 USD per index run,
incremental in CI, local without an API fee. The footer says it is
measured on 24 files and that a large project is not yet measured.
The appendix moves to 14-17.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01S8cAMa6XrThLWn4hooEtrA
docs/local-inference-presentation.pdf is the deck as of 1c541cb, 17
pages at 16:9 (1280 x 720 px), slide 13 the top 5. Rendered with
headless Chrome's print-to-PDF from one HTML page built from the
Markdown: the front matter's style on 1280 x 720 sections, speaker
notes dropped, each SVG in a paragraph as Marp writes it, the chart
images from docs/ai-index-benchmark/modelcard/charts. Text stays text.
The PDF has to be rendered again when the deck changes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01S8cAMa6XrThLWn4hooEtrA
docs/render-presentation.py renders local-inference-presentation.md to
local-inference-presentation.pdf with headless Chrome or Edge, so the
PDF needs neither Node nor the Marp CLI: one HTML page with a 1280 x 720
section per slide, the front matter's style, the speaker notes dropped,
each SVG in a paragraph as Marp writes it, the charts resolved relative
to docs/. It finds the browser on Windows, macOS and Linux (or takes
--browser), keeps the HTML on --html, and fails when the PDF's page
count differs from the slide count. Standard library only.

The PDF is written again by the script; its text is identical to the
one of 71dbc57. The deck's header comment names the script and says to
render again after every change of the deck or a deck chart.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01S8cAMa6XrThLWn4hooEtrA
@bernardladenthin bernardladenthin changed the title docs: the presentation tells the map of the source docs: the presentation tells the map of the source, with a top 5 and its PDF Nov 2, 2026
@bernardladenthin
bernardladenthin merged commit 183b360 into main Nov 2, 2026
11 of 15 checks passed
@bernardladenthin
bernardladenthin deleted the docs/presentation-map branch November 2, 2026 23:15
@sonarqubecloud

sonarqubecloud Bot commented Nov 2, 2026

Copy link
Copy Markdown

This branch was successfully deployed

No deployments
startgate — f175b9f0 Deployed Nov 2, 2026 by bernardladenthin via Start gate (abort window) #564
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant