geti-annotating-and-managing-labels
Skill1.4k starsChanged 17 days agoApache-2.0View on GitHub
Create projects, manage labels, and annotate media in the Geti application via its REST API. Use when a user wants to create a project with a task type and label set, add/edit/remove labels, upload images or videos, draw or set annotations (classification labels, bounding boxes, polygons) on media or video frames, review dataset statistics, or prepare a dataset so it is trainable.
1 other project uses a version of this.
Trending
More talk lately.about the whole repository
Most recently taken up by
- open-edge-platform/getiword for word, first seen Oct 8, 2026
Who's talking about open-edge-platform/training_extensions
- open-edge-platform/geti“Serve tiff media as png”GitHub · Oct 29, 2026 · 1 reactions
- open-edge-platform/geti“Update licensing logic & content”GitHub · Oct 6, 2026 · 1 reactions
- open-edge-platform/geti“Resumable TUS uploads”GitHub · Oct 5, 2026 · 1 reactions
- open-edge-platform/geti“chore: Verify that other languages follows english translation keys”GitHub · Oct 2, 2026 · 1 reactions
- open-edge-platform/geti“Update projects page layout”GitHub · Sep 18, 2026 · 1 reactions
The biggest 5 of 50 mentions linking to the repository that our crawl found. Each line is their own headline.
See all 50
Talked about on GitHub (50 times).
On GitHub · 50
- Oct 29, 2026Serve tiff media as png — open-edge-platform/geti1 reaction · 3 comments
- Oct 6, 2026Update licensing logic & content — open-edge-platform/geti1 reaction · 3 comments
- Oct 5, 2026Resumable TUS uploads — open-edge-platform/geti1 reaction · 3 comments
- Oct 2, 2026chore: Verify that other languages follows english translation keys — open-edge-platform/geti1 reaction · 2 comments
- Sep 18, 2026Update projects page layout — open-edge-platform/geti1 reaction · 3 comments
45 more on GitHub
- Sep 15, 2026Drop 2 custom hooks in favor of usehook-ts native ones — open-edge-platform/geti1 reaction · 2 comments
- Sep 15, 2026Drop uuid package in favor of native crypto package — open-edge-platform/geti1 reaction · 2 comments
- Sep 2, 2026Show media skeleton while scrolling — open-edge-platform/geti1 reaction · 2 comments
- Aug 28, 2026Remove onnx encoder file from the build — open-edge-platform/geti1 reaction · 3 comments
- Aug 27, 2026[Language support] add Chinese (zh-CN/HK/MO/TW) UI support - PART 2 — open-edge-platform/geti1 reaction · 13 comments
- Aug 21, 2026Fix segmentation contour label offset — open-edge-platform/geti1 reaction · 3 comments
- Jul 31, 2026Failed jobs visualisation — open-edge-platform/geti1 reaction · 4 comments
- Jul 23, 2026Remove H-CLS and Rotated Det — open-edge-platform/geti1 reaction · 4 comments
- Jun 29, 2026Add EdgeCrafter Model — open-edge-platform/geti1 reaction · 9 comments
- Jun 5, 2026Update numberfield visualisation — open-edge-platform/geti1 reaction · 2 comments
- Jun 4, 2026Add 3 dots flashing for dataset import dialogs — open-edge-platform/geti1 reaction · 2 comments
- May 17, 2026Fix flaky BDD test - export cls dataset — open-edge-platform/geti1 reaction
- May 15, 2026fix: Consistent size of metric graphs — open-edge-platform/geti1 reaction · 2 comments
- Apr 29, 2026Change primary metric to mAP@0.5 for detection / segmentation — open-edge-platform/geti1 reaction
- Apr 29, 2026Add ONNX model support to OVEngine for test/predict — open-edge-platform/geti1 reaction · 2 comments
- Apr 29, 2026feat: Show deleted weights badge when model's weights are deleted — open-edge-platform/geti1 reaction · 2 comments
- Apr 24, 2026feat: Upload date filter — open-edge-platform/geti1 reaction · 7 comments
- Apr 22, 2026Move unit tests to overflow runner — open-edge-platform/geti1 reaction · 3 comments
- Apr 16, 2026Fix layout issues on train model dialog — open-edge-platform/geti1 reaction · 2 comments
- Apr 13, 2026BMG card not detected in Docker container: extra_render_args limited to first XPU — open-edge-platform/geti1 reaction · 1 comment
- Mar 26, 2026fix: Display placeholder when project thumbnail is not available — open-edge-platform/geti1 reaction · 2 comments
- Mar 18, 2026feat(training configuration): Add learning parameters [PART 12] — open-edge-platform/geti1 reaction · 2 comments
- Feb 17, 2026fix: SAM tool, dataset revision created at, models page — open-edge-platform/geti1 reaction · 2 comments
- Feb 5, 2026chore: Improve models screen [PART 1] — open-edge-platform/geti1 reaction · 3 comments
- Jan 29, 2026Renovate config update — open-edge-platform/anomalib1 reaction · 1 comment
- Jan 27, 2026Set multiprocessing method in OTXDataModule — open-edge-platform/geti1 reaction · 1 comment
- Jan 20, 2026Cleanup unnecessary OTX entities — open-edge-platform/geti1 reaction · 1 comment
- Jan 19, 2026feat(models): Model training flow — open-edge-platform/geti1 reaction · 2 comments
- Dec 13, 2025Add RFDetr model for Object Detection and Instance Segmentation — open-edge-platform/geti1 reaction · 5 comments
- Oct 24, 2025Refactoring: Event Bus & services decoupling — open-edge-platform/geti1 reaction · 2 comments
- Oct 20, 2025Integrate model statistics — open-edge-platform/geti1 reaction · 2 comments
- Oct 16, 2025Hide/focus annotations — open-edge-platform/geti1 reaction · 2 comments
- Aug 27, 2025Classification Dataset refactor — open-edge-platform/geti1 reaction · 1 comment
- Jun 13, 2025Inconsistent license headers + docstrings — open-edge-platform/geti1 reaction · 1 comment
- Apr 14, 2025🔧 Update Python version to 3.12 across workflow files and configuration — open-edge-platform/geti1 reaction
- Nov 6, 2026Take drawing tool bounds from the media ROI instead of the image — open-edge-platform/geti0 reactions · 2 comments
- Nov 6, 2026Refactor magnetic lasso tests — open-edge-platform/geti0 reactions · 2 comments
- Nov 5, 2026Cleanup deprecated fields from previous api extension — open-edge-platform/geti0 reactions · 3 comments
- Nov 2, 2026Design for OME-TIFF support on the backend (OME-Zarr ready) — open-edge-platform/geti0 reactions · 4 comments
- Nov 1, 2026test: Verify FMeasure confidence threshold retention — open-edge-platform/geti0 reactions · 2 comments
- Oct 31, 2026feat: Add High-Speed IOU tracker — open-edge-platform/geti0 reactions
- Oct 28, 2026Keep windows desktop logs in Intel\Geti\logs — open-edge-platform/geti0 reactions · 3 comments
- Oct 23, 2026Add translation for Hindi language — open-edge-platform/geti0 reactions · 2 comments
- Oct 23, 2026Add translation for German language — open-edge-platform/geti0 reactions · 2 comments
- Oct 19, 2026docs(assistant): Feature design document for chat assistant — open-edge-platform/geti0 reactions
Other versions1 project uses a version of this.
Word for word · 1
- open-edge-platform/geti★ 1.4k100% same
Edited · 0
None found.
Wrote their own version · 0
None found.
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository18 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- .github/copilot-instructions.mdCopilot instructions
- geti-backend-devSkill
- geti-docs-updateSkill
- geti-import-export-datasetsSkill
- geti-openapi-syncSkill
- geti-runtime-configuring-inference-pipelineSkill
- geti-runtime-running-live-inferenceSkill
- geti-ui-devSkill
- geti-using-the-pipelineSkill
- geti-library-devSkill
- getitune-discovering-modelsSkill
- getitune-exporting-a-modelSkill
- getitune-optimizing-a-modelSkill
- getitune-preparing-datasetsSkill
- getitune-running-inferenceSkill
- getitune-training-a-modelSkill
The file
Files
Geti Application: Annotating & Managing Labels
Set up the labeled data that training needs: create a project bound to a
task type, curate its labels, upload media, and attach annotations
to media items and video frames — all through the Geti REST API. This skill is
about using the API, not changing backend code (use geti-backend-dev for
that).
These endpoints are served by a running Geti instance; how it was launched
does not matter (Docker container, Windows MSIX app, install script, or
just run-server from application/backend/ for development). Ask the user for
their base URL rather than assuming one — https://localhost:7860 is only the
default for a local deployment, the port is configurable and remote instances
use a different host. See application/docs/install.md for the deployment
modes. The authoritative API reference is the spec the instance serves; fetch it
as JSON from /api/openapi.json (the /api/docs page is only an HTML viewer
for humans). Read endpoint paths and payloads from there rather than from any
checked-in Markdown, which may be out of date. If no instance is running and you
have the sources, generate the spec with just gen-api-spec --output-path
openapi.json from application/backend/.
Task/label background is application/docs/labels.md.
When to Use
- User wants to create a project and define its initial labels.
- User needs to add, rename/recolor, or remove labels on an existing project.
- User wants to upload images/videos and annotate them.
- User needs to set classification labels, bounding boxes, or polygons on media or specific video frames.
- User wants to check whether a dataset is annotated enough to train.
Key concepts
- Task type is fixed per project. A project addresses one task (classification, detection, instance segmentation); it cannot change after creation. Supported annotation shapes follow the task type.
- Labels belong to the project. Labels have an immutable UUID plus editable
attributes (name, color, hotkey). They cannot be reparented to another
project.
exclusive_labelsmarks whether labels are mutually exclusive (e.g. multiclass classification). - Annotations attach to dataset items. For videos, annotations target a
specific
frame_index.
Create and configure a project
flowchart LR
A[Create project + labels] --> B[Upload media]
B --> C[Annotate media / frames]
C --> D[Check dataset statistics]- Create a project with a task type and initial labels.
POST /api/projectswithname,task.task_type(classification/detection/instance_segmentation),task.exclusive_labels, andtask.labels[].- Done when:
GET /api/projects/<id>returns the project with its labels.
- Manage labels on an existing project.
PATCH /api/projects/<id>/labelswithlabels_to_add[],labels_to_edit[],labels_to_remove[].- Done when:
GET /api/projects/<id>reflects the updated label set.
Upload media
- Upload an image or video:
POST /api/projects/<id>/dataset/media(binary). This creates the corresponding dataset item. - List media (paginated, filterable):
GET /api/projects/<id>/dataset/mediawith query params likelimit,offset,annotation_status,labels[],subsets[],sort_by,sort_direction. - Fetch a media file or thumbnail:
GET /api/projects/<id>/dataset/media/<media_id>/binaryand/thumbnail. TIFF and high bit depth images are returned as 8-bit PNG; add?raw=trueto/binaryto get the original file. - Delete media:
DELETE .../media/<media_id>or bulk delete withDELETE .../mediaandmedia_ids[].
Annotate media
- Set / update annotations on a media item:
POST /api/projects/<id>/dataset/media/<media_id>/annotationswithannotations[](shapes + labels), optionalsubset(train/val/test), andframe_indexfor videos. - Get annotations:
GET .../annotations(passframe_indexfor videos). - Delete annotations:
DELETE .../annotations(passframe_indexfor videos). - Video frames: list annotated frames with
GET .../media/<media_id>/framesusingframe_index_from/frame_index_to.
Match shapes to the project task type:
| Task type | Annotation shape |
| Classification | image-level label(s) |
| Detection | bounding box + label |
| Instance segmentation | polygon + label |
Verify the dataset is trainable
- Dataset items:
GET /api/projects/<id>/dataset/items(filter byannotation_status,labels[],subsets[]). - Statistics:
GET /api/projects/<id>/dataset/statisticsfor media and annotation counts. - Done when: at least 3 annotated items exist in your dataset, although
annotating several more is recommended for better results — then launch a
trainjob (seegeti-using-the-pipeline).
Notes
- To bring in an already-annotated dataset instead of annotating from scratch,
use
geti-import-export-datasets. - The API spec at
/api/openapi.jsonis the only authoritative source for endpoint paths and payloads. To add or change endpoints, usegeti-backend-devandgeti-openapi-sync.
Related skills
geti-import-export-datasets— import an existing annotated dataset instead of manual annotation.geti-using-the-pipeline— the end-to-end project → train → deploy workflow.geti-backend-dev— change the project/label/media/annotation endpoints.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

