Build retail agents with open source models
Superlinked gives your agent one API to inspect shelf photos, read shelf labels and return cited stock checks.
Your shelf-replenishment agent
Review the shelf, identify the facing and return evidence.
Your store context
The product and inventory records your agent checks before it acts.
from pathlib import Pathfrom sie_sdk import SIEClientclient = SIEClient( api_key="API keysk-sie-…", base_url="https://api.superlinked.com",)image = {"data": Path(imagepharmacy-shelf.jpgbrowse).read_bytes(), "format": "jpeg"}result = client.extract( "modelIDEA-Research/grounding-dino-base", {"images": [image]}, labels=[ "labelempty shelf space", "labelout of stock sign", "labelprice tag", ],)for obj in result["objects"]: print(obj["label"], obj["score"], obj["bbox"])import { readFile } from 'node:fs/promises';
import { SIEClient } from '@superlinked/sie-sdk';
const client = new SIEClient('https://api.superlinked.com', {
apiKey: 'sk-sie-…',
});
const image = await readFile("pharmacy-shelf.jpg");
const result = await client.extract(
'IDEA-Research/grounding-dino-base',
{ images: [image] },
{ labels: ["empty shelf space","out of stock sign","price tag"] },
);
console.log(result.objects);images_bytes=$(base64 < 'pharmacy-shelf.jpg' | tr -d '\n')
curl https://api.superlinked.com/v1/extract/IDEA-Research%2Fgrounding-dino-base \
-H "Authorization: Bearer sk-sie-…" \
-H "Content-Type: application/json" \
-d "{\"items\":[{\"images\":[{\"data\":\"$images_bytes\",\"format\":\"jpeg\"}]}],\"params\":{\"labels\":[\"empty shelf space\",\"out of stock sign\",\"price tag\"]}}"Build the "Detect" 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: IDEA-Research/grounding-dino-base (SIE primitive: /extract). Keep the model id configurable.
Task
- Input: an uploaded image plus the object labels to find.
- Behaviour: return the named objects with confidence scores and bounding boxes
- 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.from pathlib import Pathfrom sie_sdk import SIEClientclient = SIEClient( api_key="API keysk-sie-…", base_url="https://api.superlinked.com",)image = {"data": Path(imagepharmacy-oos-sign.jpgbrowse).read_bytes(), "format": "jpeg"}result = client.extract( "modellightonai/LightOnOCR-2-1B", {"images": [image]},)print(result["entities"][0]["text"])import { readFile } from 'node:fs/promises';
import { SIEClient } from '@superlinked/sie-sdk';
const client = new SIEClient('https://api.superlinked.com', {
apiKey: 'sk-sie-…',
});
const image = await readFile("pharmacy-oos-sign.jpg");
const result = await client.extract(
'lightonai/LightOnOCR-2-1B',
{ images: [image] },
{ labels: [] },
);
console.log(result.entities[0].text);images_bytes=$(base64 < 'pharmacy-oos-sign.jpg' | tr -d '\n')
curl https://api.superlinked.com/v1/extract/lightonai%2FLightOnOCR-2-1B \
-H "Authorization: Bearer sk-sie-…" \
-H "Content-Type: application/json" \
-d "{\"items\":[{\"images\":[{\"data\":\"$images_bytes\",\"format\":\"jpeg\"}]}]}"Build the "OCR" 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: lightonai/LightOnOCR-2-1B (SIE primitive: /extract). Keep the model id configurable.
Task
- Input: an uploaded image containing text.
- Behaviour: return the text visible in the image
- 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.
[2043, 2137, 2666, 2540]- Finds the objects you name
- Returns a confidence score for each match

I am temporarily
out-of-stock
from our supplier
Please ask our friendly staff
for a substitute.
[name redacted]
- Reads text directly from images and photos
Compare models for this task
Your agent identifies the SKU behind the shelf gap
View on GitHub
I am temporarily out-of-stock from our supplier
Panadol Child · 5-12Yrs Elixir 100ml · 101760 · 10⁹⁹ - Product
- Panadol Children 5–12 Years Elixir, 100 mL
- SKU
- 101760
- State
- Supplier stockout
- Evidence
- Detection box + OCR crops
- Next check
- Verify on-hand stock and replenishment ETA
Deploy your way
Managed Cloud
Full compute toolkit for your agents with zero ops.
- No idle GPUs, pay for what you use
- Fits your stack: SDK, API, CLI, MCP
- Zero lock-in, self-host the same stack
- SOC 2 Type 2, US or EU data residency
no credit card required
Self-host with K8s
Easy & scalable deployment in your own cloud.
- Terraform to your cloud in minutes
- Apache-2.0, same engine as Cloud
- Scales to zero, no bill between jobs
- Per-tenant pools, no noisy neighbors
Deploy SIE to our AWS account with the superlinked/sie/aws Terraform module. Docs: superlinked.com/docs/deploymentDeploy SIE to our GCP project with the superlinked/sie/google Terraform module. Docs: superlinked.com/docs/deploymentDeploy SIE to our Azure AKS cluster via helm install. Requirements: superlinked.com/docs/deployment Run locally
Run the same models on your own machine.
- Runs on NVIDIA GPU or Apple Silicon
- One command, no Docker or cluster
- All 100+ Cloud models, fully offline
- Same SDK and IDs, no code changes
pip install "sie-server[local]" && sie-server servepip install "sie-server[local]" && sie-server serve --device cuda