Text and tabular modalities

Text and tabular projects sit alongside computer vision in the same product.

Project types

Type

Modality

Annotate

text_classification

text

Class buttons

ner

text

Character span list

tabular_classification

tabular

Class buttons on rows

tabular_regression

tabular

Numeric target value

Create these from New Project. Document/OCR remains planned.

Import

  • Text: POST /api/projects/{id}/import/text — JSONL ({"text","label"?,"spans"?}) or CSV

  • Tabular: POST /api/projects/{id}/import/tabular — CSV with header + optional label / numeric column

UI: project → Import.

Samples API

Method

Path

GET/POST

/api/projects/{id}/samples

GET/PATCH

/api/samples/{id}

POST

/api/projects/{id}/samples/splits

PATCH body can set class_id / class_name, spans, or value.

Export

POST /api/projects/{id}/export with format: jsonl (text) or csv (tabular).

Canonical export (GET /api/projects/{id}/canonical) returns modality-aware samples.

Training adapters

Optional installs:

pip install "oneopen-ml-studio[tabular]"   # scikit-learn
pip install "oneopen-ml-studio[nlp]"       # transformers + datasets
  • POST /api/projects/{id}/adapters/prepare — write prepared CSV / HF JSONL

  • POST /api/projects/{id}/adapters/train — sklearn LogisticRegression / Ridge; Hugging Face returns prepared artifacts (full Trainer not in-process)

YOLO /train and YOLO/COCO export return 400 on text/tabular projects.