Tag your entity types 61% better than AWS Comprehend, 99% cheaper
SIE is the open-source inference engine serving NuNER Zero-span. Give the model your own entity types and get each match at its exact position, without labelling examples or training a model.
SIE · NuNER Zero-span
Every entity foundHe studied physics at the University of Heidelberg , the University of Lausanne , and , ultimately , the Humboldt University of Berlin under Max Planck .
CrossNER science (MIT licence) ↗Fixed-type detectors answer in their own types, not yours
He studied physics at the University of Heidelberg , the University of Lausanne , and , ultimately , the Humboldt University of Berlin under Max Planck .
Asked for: discipline, university, scientist and 14 more types
AWS Comprehend
Answers in ORGANIZATION and PERSON- ORGANIZATION
- University of Heidelberg
- University of Lausanne
- Humboldt University of Berlin
- Planck
- PERSON
- Max
spaCy en_core_web_trf
Answers in ORG and PERSON- ORG
- the University of Heidelberg
- the University of Lausanne
- the Humboldt University of Berlin
- PERSON
- Max Planck
Keep the spans each reply typed university
AWS Comprehend finds 0 of 3spaCy finds 0 of 3
- AWS Comprehend Custom types require labelled training examples
Annotations
“For plain-text annotations, provide at least three annotated input documents and at least 25 annotations per entity.”
Read on
61% better at entity tagging than AWS Comprehend, 99% cheaper
- Tested
- 652 sentences across seven public entity datasets
- Scored
- Exact span and type micro-F1; best recorded LLM settings; mapped incumbent types
- Prices
- Serverless and list prices; AWS first tier, 300-character minimum
Get typed spans and exact offsets
from sie_sdk import SIEClientclient = SIEClient(api_key="API keysk-sie-…")result = client.extract( "modelnumind/NuNER_Zero-span", {"text": "textHe studied physics at the University of Heidelberg , the University of Lausanne , and , ultimately , the Humboldt University of Berlin under Max Planck ."}, labels=[ "labelmiscellaneous", "labelorganisation", "labelperson", "labelcountry", "labellocation", "labelevent", "labelaward", "labeluniversity", "labelacademic journal", "labelastronomical object", "labelchemical compound", "labelchemical element", "labeldiscipline", "labelenzyme", "labelprotein", "labelscientist", "labeltheory", ], options={"threshold":0.5},)for span in result["entities"]: print(span["label"], span["text"])import { SIEClient } from '@superlinked/sie-sdk';
const client = new SIEClient(undefined, { apiKey: 'sk-sie-…' });
const result = await client.extract(
'numind/NuNER_Zero-span',
{ text: "He studied physics at the University of Heidelberg , the University of Lausanne , and , ultimately , the Humboldt University of Berlin under Max Planck ." },
{ labels: ["miscellaneous","organisation","person","country","location","event","award","university","academic journal","astronomical object","chemical compound","chemical element","discipline","enzyme","protein","scientist","theory"], adapterOptions: {"threshold":0.5} },
);
console.log(result.entities);curl https://api.superlinked.com/v1/extract/numind%2FNuNER_Zero-span \
-H "Authorization: Bearer sk-sie-…" \
-H "Content-Type: application/json" \
-d "{\"items\":[{\"text\":\"He studied physics at the University of Heidelberg , the University of Lausanne , and , ultimately , the Humboldt University of Berlin under Max Planck .\"}],\"params\":{\"labels\":[\"miscellaneous\",\"organisation\",\"person\",\"country\",\"location\",\"event\",\"award\",\"university\",\"academic journal\",\"astronomical object\",\"chemical compound\",\"chemical element\",\"discipline\",\"enzyme\",\"protein\",\"scientist\",\"theory\"],\"options\":{\"threshold\":0.5}}}"Build the "Named entities" capability into my app using the Superlinked Inference Engine (SIE).
Context
- SIE is an OpenAI-style inference API. Python SDK: `from sie_sdk import SIEClient`; TypeScript: `@superlinked/sie-sdk`.
- Base URL: https://api.superlinked.com (or my regional endpoint). Auth: Bearer key from env `SIE_API_KEY` (never hard-code it).
- Model: numind/NuNER_Zero-span (SIE primitive: /extract). Keep the model id configurable.
Task
- Input: a block of text.
- Behaviour: return the named entities found in the text with their types
- Call the selected SIE primitive once per request and map the response into your domain type.
Deliverables
- A typed client wrapper, an application-level function for this task, error handling for timeouts/empty input, and unit tests with a stubbed client.
- Wire it into my existing stack (ask me which framework if unclear) and add a short usage example.Spanstart–end
Tag your own entity types wherever your text lives
Serverless API
We host the models; you call one API.
- No idle GPUs, pay for what you use
- Fits your stack: SDK, API, CLI, MCP
- Self-host the same open-source engine
- SOC 2 Type 2, US or EU data residency
- Create an account to try Serverless
Self-hosted (Kubernetes)
Your data stays in your cloud, backed by our engineers.
- Terraform modules for your cloud
- Apache-2.0, same engine as Serverless
- GPU workers scale to zero between jobs
- Separate worker pools for each tenant
Deploy SIE to our AWS account with the superlinked/sie/aws Terraform module. Docs: superlinked.com/docs/deployment.Deploy SIE to our Google Cloud project with the superlinked/sie/google Terraform module. Docs: superlinked.com/docs/deployment.Deploy SIE to our Azure subscription with the superlinked/sie/azure Terraform module. Docs: superlinked.com/docs/deployment.Deploy SIE to our Alibaba Cloud account with the superlinked/sie/alicloud Terraform module. Docs: superlinked.com/docs/deployment. Run locally
The open-source server on your own machine.
- Runs on your NVIDIA GPU
- One container, no cluster
- Process your data fully offline
- Same SDK and model IDs as Serverless
docker run --gpus all -p 8080:8080 ghcr.io/superlinked/sie-server:latest-cuda12-default