Skip to content

hfjev

Python and Node library that classifies Hugging Face dataset rows on typed Choice, Score and Noul dimensions using Jev.

ProjectbetaMIT

Overview

hfjev loads any Hugging Face dataset and classifies each row across semantic dimensions with TypeSafe Jev System One. It is aimed at people curating or auditing datasets who want per-row labels with probabilities instead of free-text LLM annotations. The library picks a default rubric pack based on the dataset domain (reviews, news, LLM tuning data, support) and runs all questions for a row in a single parallel System One call.

Users can override the defaults with their own Choice, Noul or Score primitives through adapt(), stream results row by row for live feeds, or use a CLI. Packages exist for both Python (PyPI) and JavaScript (npm), and an interactive web studio on GitHub Pages lets you import datasets or local CSV/JSON files, classify them, and export enriched data with scores and token telemetry. A bench folder compares fan-out execution latency.

What the decision model decides

TypeQuestionAnswers
Yes / noIs this about artificial intelligence?yes · no
ScoreRate story urgencyLow · Breaking
ChoiceDomain-specific label chosen by the auto-adapted rubric pack(inferred)—

How it works

  1. Load a Hugging Face dataset or local file by name
  2. Auto-select a domain rubric or supply custom dimensions with adapt()
  3. Send each row's text plus all questions in one parallel Jev call
  4. Collect per-answer probabilities, stream or batch
  5. Export enriched rows to CSV, JSON or JSONL

Strengths

  • One call per row covers every dimension, keeping cost and latency down
  • Probabilities per answer rather than generated text
  • Same API in Python and JavaScript, plus a no-install web studio

Caveats

  • Requires a TypeSafe API key and network access
  • Default domain packs may not match niche datasets without customisation

Getting started

`pip install hfjev` or `npm install hfjev`, then `hfjev cornell-movie-review-data/rotten_tomatoes --limit 5`.

At a glance

Type
Project
Status
beta
Language
Python, TypeScript
Runtime
Python library, Node library, CLI, browser studio
Has code
yes
License
MIT

Use cases and integrations

How curated lists describe it

  • Classify Hugging Face datasets across typed semantic dimensions with TypeSafe Jev System One. Auto-adapts evaluation rubrics to dataset domains (reviews, news, LLM tuning, support) and classifies rows in a single parallel System One call with calibrated probabilities.

    logicrw/awesome-jev-projects

Frequently asked questions

What does hfjev decide?

It answers typed questions about each dataset row, such as topic yes/no or an urgency score, and returns probabilities for each answer.

Can I define my own labels?

Yes. adapt() accepts your own Choice, Noul or Score dimensions and replaces the default domain pack.

Is there a way to try it without code?

Yes, the hosted studio at hemanth.github.io/hfjev lets you import, classify and export datasets in the browser.

Related projects

  • Polars library for parallel LLM inference that also asks Jev per-row Noul, Choice and Score questions through a native Rust layer.

    LibrarybetaPython
  • Python library with a TypeScript port that turns Jev questions into functions over lists and DataFrames, with caching and escalation.

    LibrarybetaPython, TypeScript
  • pandas and Polars .jev accessor for classifying, sentiment-scoring and grading DataFrame rows with Jev probabilities.

    DemobetaPython
  • Nushell plugin that asks Jev noul, choice and score questions about a state or each table row, returning typed answers to filter.

    PluginbetaRust
  • Python batching proxy that asks the same Jev questions about many states and streams answers back as Apache Arrow tables.

    ProxyprototypePython
  • Command-line tool for Laya typed decisions with presets, batch streaming, shortlisting, evaluation and a resident daemon.

    CLIbetaPython