Skip to content
Source companionPublic source reviewed

Classify CSV Data with Jev and DuckDB

An audited input file and a clear integration checklist. The accompanying browser CSV checker is a local input utility, not the DuckDB extension. The browser Content demo is a separate teaching exercise, not an equivalent implementation.

Use caseTurn CSV, documents, or search results into reviewable data

Source · Hamilton UlmerSome code6 min

A source-first companion to Hamilton Ulmer’s DuckDB example, with a safe preparation checklist.

Source · Hamilton Ulmer · X companion

2026-09-21 · Editorial update; no live model call

Copying a large table from a database into a separate prompt loses IDs, filters and context. The community idea here is to bring row classification closer to the data. This guide stops short of installing an unverified extension and instead prepares a small, inspectable input and output contract.

  • Basic familiarity with tables and stable primary keys.
  • A local CSV or an authorized copy of a database extract.

Image from Hamilton Ulmer’s original X post. The post is linked; this is not a JevLog test result.

Image from Hamilton Ulmer’s original X post. The post is linked; this is not a JevLog test result.

Follow the X link in Sources. Identify the current repository, installation instructions, license and supported database version. The source post could not be fetched directly during this review, so no extension name or installation command is guessed here.

Export only the ID and text you need. Do not send an entire production table, credentials or unrelated fields. Record the number of selected rows before any classification step.

Open the CSV input checker and choose a non-production export with a stable ID and text column. Inspect headers, missing text, uneven rows, duplicate IDs, and repeated content locally in your browser. The tool does not silently delete duplicates; two customers can report the same issue.

A semantic cache may reuse matching text under the same conditions, but every original ID still needs its own result.

4. Define an output that can be joined back

Section titled “4. Define an output that can be joined back”

Require the original ID, a permitted label, the model version and an explicit error or review state. Preserve failed rows. A classifier result should never be accepted merely because the number of returned rows looks plausible.

On a small non-sensitive test set, measure reading, request time, retries, writing and manual correction separately. This package does not provide a Jev/DuckDB extension or claim a speedup. Follow the original project for actual integration work.

Practice sample: download reading_list.csv for local use; not a live run here.

An audited input file and a clear integration checklist. The accompanying browser CSV checker is a local input utility, not the DuckDB extension. The browser Content demo is a separate teaching exercise, not an equivalent implementation.

  • You can identify the input, its source, and the fields that leave your system.
  • Original identities, failed rows, uncertain cases and human corrections remain visible.
  • You distinguish an offline fixture, an author demo and a live evaluation you ran yourself.

Not necessarily. Inspect the extension’s network behavior.