Know exactly what enters every run
Annotate images or text, inspect class balance and geometry warnings, then freeze a version. Every training run points back to the data it actually consumed.
Annotations · EDA · immutable versions
Orinth is an open-source studio for computer vision, NLP, and LLMs. Label, train, test, and serve — all in one app, on your own hardware.
Pronounced OR-inth /ˈɔːrɪnθ/. Runs on your own hardware — no account, and no data sent anywhere by default.
Turn PDFs, DOCX, Markdown, CSV, JSONL, and plain text into instruction pairs, question-answer records, or classification data. Review every generated row before it enters Dataset Studio.
Deterministic rules are the local default. LLM-assisted generation is opt-in, and every committed record keeps its source provenance—so the path from model output back to the original document stays visible.
Read the Data Recipes guidePDF · DOCX · MD · CSV · JSONL
Rules by default · LLM optional
Edit, approve, or exclude each row
Versioned dataset with provenance
The actual app UI — same layouts, same controls, same task-aware behavior — with the backend swapped for captured state. Build records from documents, draw an annotation, shape a model, replay training, compare it, run inference, then chat with it. Every interaction is live, but the compute is not.
Instruction recipe · documents become reviewable training records
PDF, DOCX, TXT, Markdown, CSV, or JSONL. Extraction stays local.
Turn PDFs, DOCX, Markdown, CSV, or JSONL into reviewable instruction records. Sources, generation, review, and commit stay traceable — with deterministic local fallback by default.
Each surface removes a place where context usually gets lost—from the exact dataset a run used to the individual prediction behind a test score.
Annotate images or text, inspect class balance and geometry warnings, then freeze a version. Every training run points back to the data it actually consumed.
Annotations · EDA · immutable versions
Build a model as a visual graph, inspect each node, catch invalid connections, and emit Keras or PyTorch without translating a whiteboard into boilerplate.
Visual graph · validation · code export
Follow epoch progress, live metrics, charts, and logs in one view. Replay a captured run to understand its trajectory before you compare or promote it.
Live metrics · logs · checkpoints
Metrics reshape around the task, model comparisons stay side by side, and every aggregate opens into the individual predictions that produced it.
Task-aware metrics · per-item review
Run an image or text item, tune only the controls that matter for its task, and keep confidence, overlays, timings, and prediction history together.
Adaptive controls · normalized output
Export to GGUF, serve it on your machine, and chat with sampler controls, visible thinking, and optional web search with inline citations.
Private serving · search · citations
Not a vision tool that also does text. Every task below shares the same projects, the same Dataset Studio, the same training and testing surfaces — and each is scored on the metrics that actually fit it.
Classification
One label per image. Bulk relabeling, class balance in EDA.
Accuracy · Macro F1 · MCC · AUC
Object detection
Boxes around objects. YOLO and COCO import, box editor.
mAP@50 · Precision · Recall
Segmentation
Pixel and polygon masks, drawn in the annotation editor.
Pixel Dice · IoU · mAP@50-95
Text classification
One label per record. Same splits, versions, and EDA as images.
Accuracy · Macro F1 · Weighted F1
Summarization
Source text with a reference summary, compared side by side.
ROUGE-1 · ROUGE-2 · ROUGE-L
Question answering
Context, question, and answer span, with per-row inspection.
Exact match · F1
Instruction fine-tuning
LoRA, QLoRA, full fine-tune, or continued pretraining.
Loss · Perplexity · Token accuracy
Export & serve
Adapter or checkpoint to GGUF, re-quantize, serve locally.
llm_adapter · llm_hf · llm_gguf
Chat
Sampler controls, a reasoning view, and web search with citations.
tok/s · time-to-first-token
One project can hold datasets from all three. A run records the dataset version it consumed, whichever modality it came from.
Local by default
One .dmg, no account, no telemetry by default. Datasets, weights, predictions, and logs live in local storage you can point at, back up, or delete.
One install · no sign-up
Every modality
Segmentation, detection, and classification for images. Classification, summarization, and question answering for text. LoRA and QLoRA fine-tuning for LLMs. One project holds all three.
CV + NLP + LLM
Every step
Dataset Studio, Training, Testing, Inference, and Chat are one continuous surface. An empty dataset points at upload; a finished run points at testing; a scored model points at inference.
Label → train → test → serve
Continuity is the organizing idea. You are never exporting a folder to hand to the next tool, because there is no next tool.
Projects
A project scopes its datasets, its runs, and the models promoted out of them, so image work and text work never bleed into each other.
Dataset Studio
Upload, label, annotate, split, preprocess, and version without rewriting the originals. Import from the Hugging Face Hub, or build a dataset from your own documents with Data Recipes.
Training
Start a task-compatible run from a frozen dataset version. Runs execute as subprocesses and stream epoch progress and logs, so a long fine-tune never blocks the API.
Testing
Score against a held-out split with task-aware metrics, stack models side by side in one comparison run, then read the per-item rows behind each number.
Inference
Run a single item and read the output with its overlays, class confidence, timings, and full run history. Every prediction is logged with its payload.
Chat
Export a fine-tuned model to GGUF, serve it locally, and hold a conversation with sampler controls, an optional system prompt, web search with citations, and a reasoning view.
Each of these is good at what it does. None of them covers three modalities across the full lifecycle, on your own machine, with a GUI.
| Tool | Modalities | Lifecycle | Runs where | Interface |
|---|---|---|---|---|
| Roboflow | CV only | Data → train | Cloud | GUI |
| Label Studio | Multi | Label only | Self-host | GUI |
| Weights & Biases | Multi | Tracking only | Cloud | GUI |
| Axolotl / Unsloth | LLM only | Fine-tune only | Local | CLI |
| LM Studio | LLM only | Chat only | Local | GUI |
| Orinth | CV + NLP + LLM | Label → train → test → serve | Local, cloud optional | GUI + CLI |
Comparison reflects each product’s primary, documented scope as of 2026. All are actively developed and may have moved.
The name
Orinth reads as a place. It carries orient — to find your bearings — and the -inth of labyrinth, the path through complexity.
Orinth is where you find your way from a folder of raw data to a model that works. Pronounced OR-inth /ˈɔːrɪnθ/.
Inference output is normalized across families, so the review surface keeps its shape when the model underneath changes.
| Family | Tasks | Notes |
|---|---|---|
| Ultralytics YOLO | Detection, instance segmentation | YOLO11 and YOLO26 families. Default confidence 0.65, inference IoU 0.7. |
| Keras Applications | Segmentation, classification | MobileNetV2, EfficientNet B0–B7, ResNet50, U-Net + Inception. Trained and served locally. |
| Hugging Face Transformers | Text classification, summarization, question answering | BERT, BART, and friends, fine-tuned locally. Gated repos need a HUGGINGFACE_HUB_TOKEN. |
| LLMs (Transformers + GGUF) | Instruction fine-tuning, serving, chat | LoRA, QLoRA, full fine-tune, or continued pretraining. Export to GGUF to serve and chat locally. |
Pick a Hugging Face base and a method — LoRA, QLoRA, full fine-tune, or continued pretraining. Orinth detects your accelerator (CUDA, Apple MPS, or CPU) and picks a matching backend, so the configuration you see is the one that runs.
Export the result to GGUF, serve it locally, and open a chat with sampler controls, a system prompt, web search with inline citations, and a view into the model’s reasoning. Completion tokens, tokens per second, and time-to-first-token are reported under every reply.
Read the LLM guide| Method | What it does |
|---|---|
| LoRA adapter | Trains a small tuned delta over the base. Light, and the recommended default. |
| QLoRA (4-bit) | Lowest VRAM; needs CUDA. On MPS or CPU it trains as plain LoRA. |
| Full fine-tune | Updates every weight. Heavy — prefer LoRA or QLoRA on a Mac or CPU. |
| Continued pretraining | LoRA over full text, for domain adaptation. |
Browse the Hub from the catalog and pull a dataset straight into a project, ready to annotate, split, and train.
Turn your own documents into an instruction dataset — deterministic by default, LLM-assisted when you supply a key.
A visual graph editor for model architectures, with Keras and PyTorch emitters.
Trained, reference, and uploaded models in one catalog — checkpoints, GGUF files, and LoRA adapters side by side.
Read split counts, class balance, and geometry warnings, then freeze a materialized version for a reproducible run.
A first-run walkthrough plus a per-page tour on every surface, so the workflow explains itself.
The studio is Apache 2.0 and complete on its own. Cloud and Enterprise add hosted GPUs, teams, and the controls a regulated environment needs — they never gate the local app.
Open source
The full studio, Apache 2.0. Every modality, every stage, on your hardware.
View the sourcemacOS .dmg
One universal build for Apple silicon and Intel. Drag to Applications and open.
DownloadHosted
GPU-backed runs and team workspaces for when the local machine runs out.
See pricingSelf-hosted
SSO/SAML, RBAC, audit logs, and air-gapped deployment for regulated environments.
Talk to usA FastAPI and SQLite backend, a Next.js frontend, and make targets that start both together with interleaved logs. Or skip all of it and open the macOS app.
git clone https://github.com/L007/orinth.git
cd orinth
# verify uv, pnpm, Python 3.11, Node
make doctor
# backend :8000 + frontend :3000
make devPoint it at a folder of images or text, and the workspace carries you through to a scored model you can serve.
Orinth is a research and engineering instrument for measuring model behavior. It produces model outputs for human review — it does not provide clinical diagnosis or autonomous decision-making.