Skip to content
NHWe are part of the NETWORKERS HOME Group — Enterprise AI InfrastructurePart of the NETWORKERS HOME GroupVisit Networkers Home →
Ollalink
Get started

Models

Auth: X-NH-GPU-Key: <your GPU API key> · List: GET https://ai.ollalink.com/v1/models

  • Always on: loaded all the time; answers start at once.
  • On demand: loads on its first request and frees its memory afterwards, so the first call waits a few seconds.
Capability API Mode
live captions, realtime speech-to-text (14 languages) gpu-live, gpu-asr (live captions, speech-to-text) always on
Hindi and Chinese recordings gpu-asrhq (speech-to-text) always on
other-language recordings, speech → English, word timestamps gpu-asrhq on demand
fast file transcription gpu-transcribe on demand
text-to-speech (14 voices, 5 languages) gpu-tts (text-to-speech) always on
Hindi text-to-speech (20 voices) gpu-tts (text-to-speech) on demand
text translation (14 languages and Tamil) ai.ollalink.com/v1/translate (translation) always on
numbers to digits, embeddings ai.ollalink.com (text tools) always on
classification ai.ollalink.com/v1/classify always on
chat — chat, instructions, tool calls ai.ollalink.com/v1/chat/completions (chat and coding) always on
coding — coding tasks and tool calls same (chat and coding) always on
vision — vision and quick OCR same, with an image part (below) on demand
document OCR — PDF or image to markdown ai.ollalink.com/v1/ocr → job (below) always on
image generation and editing — qwen-image-2.1-turbo (default) ai.ollalink.com/v1/images/generations, /v1/images/edits (below) always on
image generation — flux2-klein-4b ai.ollalink.com/v1/images/generations (below) on demand
sound effects — stable-audio-3-small-sfx; instrumental music — stable-audio-3-small-music ai.ollalink.com/v1/audio/generations (below) on demand
speaker diarization gpu-transcribe.ollalink.com/v1/audio/diarization (below) on demand
songs with lyrics — music ai.ollalink.com/v1/music/generations → job (below) on demand

Send the image as an image part on POST https://ai.ollalink.com/v1/chat/completions with "model": "vision". It reads printed text, tables, charts and simple diagrams; the answer is in content.

  • For a PDF, render each page to an image and send one page per request. For tables, ask for markdown; for forms, ask for JSON.
  • Send small text at 2× size, and check identifiers such as serial numbers.
  • Not for Hindi (Devanagari) text — the words come out wrong; use document OCR for Hindi documents and speech-to-text for Hindi audio.
  • The first call loads the model; every request must finish within 100 seconds, so keep images at 1024 px or smaller.

POST https://ai.ollalink.com/v1/ocr turns a PDF or an image (.pdf, .png, .jpg, .jpeg, .webp, up to 25 MB) into markdown, page by page. More accurate than vision for whole documents, numbers, identifiers and Hindi. Send multipart with file, or JSON {"file": "<base64 or data: URI>", "file_name": "scan.pdf"}; optional pages ("1,3-4", up to 100 pages per request) and grounding (true adds each block’s position). OCR runs as a job:

  1. The POST answers 202 with {"id": "job_…", "model": "ocr", "status": "queued", "poll": "/v1/jobs/job_…"}.
  2. Poll GET https://ai.ollalink.com/v1/jobs/{id} every 2 seconds until status is done or failed.
  3. A done job carries markdown. Each page starts with <!-- page N -->; tables come back as HTML <table>. With "grounding": true it also carries blocks: per page number, a list of {"label", "bbox": [x0, y0, x1, y1], "text"}, with boxes in 0–1000 page coordinates.

A one-page document took about 9 seconds in our tests. If the job fails with “not enough free memory”, retry after a minute.

Terminal window
curl https://ai.ollalink.com/v1/ocr -H "X-NH-GPU-Key: $YOUR_GPU_KEY" -F file=@invoice.pdf -F grounding=true
curl https://ai.ollalink.com/v1/jobs/job_… -H "X-NH-GPU-Key: $YOUR_GPU_KEY"

POST https://ai.ollalink.com/v1/images/generations with JSON {"model", "prompt", "size", "seed"}:

Field Values
model qwen-image-2.1-turbo (default, always on; generation and editing) or flux2-klein-4b (on demand; generation only)
prompt 1–2,000 characters
size "WIDTHxHEIGHT", each side 256–1024 and a multiple of 32; default "1024x1024"
seed integer 0–2147483647; default 42 (same prompt, size and seed give the same picture)
n 1 (the only value)

The answer is JSON {"created", "model", "size", "seed", "seconds", "data": [{"b64_json": "<PNG as base64>"}]}.

Editing: POST https://ai.ollalink.com/v1/images/edits as multipart with image (the picture to edit, up to 20 MB) and prompt, optional size and seed; only qwen-image-2.1-turbo edits. Same JSON answer.

Image and audio generation share capacity; when it is busy, a request gets 503 — retry shortly. A flux2-klein-4b request takes about 40 seconds, because the default image model is reloaded before it answers. While a song (music) is generating, image requests wait and may get 503 busy; retry.

Terminal window
curl https://ai.ollalink.com/v1/images/generations -H "X-NH-GPU-Key: $YOUR_GPU_KEY" -H "Content-Type: application/json" \
-d '{"prompt": "a network operations centre at night, wide shot", "size": "1024x576"}' \
| python -c "import sys, json, base64; open('image.png', 'wb').write(base64.b64decode(json.load(sys.stdin)['data'][0]['b64_json']))"

Generated pictures can get text, counts and diagram details wrong — check them before you use them.

POST https://ai.ollalink.com/v1/audio/generations with JSON {"model", "prompt", "duration", "seed"} returns the audio file itself (audio/wav, 44.1 kHz stereo, 16-bit).

Field Values
model stable-audio-3-small-sfx (sound effects) or stable-audio-3-small-music (instrumental music, the default)
prompt 1–2,000 characters describing the sound
duration 1–120 seconds; default 30
seed integer 0–2147483647; default 42
response_format "wav" (the only value)

Headers: X-Audio-Duration (seconds of audio) and X-Generation-Seconds (time on our side). A request takes about 30–40 seconds whatever the duration, because the default image model is reloaded before it answers. Busy → 503, retry shortly. For songs with sung lyrics, use music.

Terminal window
curl https://ai.ollalink.com/v1/audio/generations -H "X-NH-GPU-Key: $YOUR_GPU_KEY" -H "Content-Type: application/json" \
-d '{"model": "stable-audio-3-small-sfx", "prompt": "footsteps on gravel", "duration": 5, "seed": 43}' --output effect.wav

POST https://gpu-transcribe.ollalink.com/v1/audio/diarization as multipart, with file (any audio or video, up to 100 MB) and optional response_format (json, the default, or rttm). Up to 8 speakers.

Terminal window
curl https://gpu-transcribe.ollalink.com/v1/audio/diarization \
-H "X-NH-GPU-Key: $YOUR_GPU_KEY" -F file=@meeting.wav

The answer lists speakers and segments (start, end, speaker). Diarization gives speaker turns only, with no words; combine it with file transcription by time. Brief speakers can be missed — check speaker counts on important recordings.

POST https://ai.ollalink.com/v1/music/generations with {"style", "lyrics", "seed" (optional)}. Lyrics need section tags: [Intro] [Verse] [Chorus] [Bridge] [Outro]. Music runs as a job:

  1. The POST answers 202 with {"id": "job_…", "status": "queued", "poll": "/v1/jobs/job_…"}.
  2. Poll GET https://ai.ollalink.com/v1/jobs/{id} every few seconds. status goes queued → running → done or failed.
  3. Download the song from GET /v1/jobs/{id}/content?format=m4a (small) or ?format=flac (48 kHz stereo).

Jobs are kept for 24 hours; only the key that created a job can read it. The music model’s licence is non-commercial only — do not use generated songs commercially. While a song is generating, image generation waits; a song of about a minute took about two minutes in our tests. Sending "model": "stable-audio-3-small-music" to this route returns an instrumental clip straight away instead (audio generation).

Terminal window
curl https://ai.ollalink.com/v1/music/generations -H "X-NH-GPU-Key: $YOUR_GPU_KEY" -H "Content-Type: application/json" \
-d '{"style": "upbeat electronic pop, female vocal", "lyrics": "[Verse]\nRouters hum along the line\n[Chorus]\nOpen wide", "seed": 42}'
curl -o song.m4a "https://ai.ollalink.com/v1/jobs/job_…/content?format=m4a" -H "X-NH-GPU-Key: $YOUR_GPU_KEY"
Status Meaning
400 bad request: unknown model, empty messages, an empty or undecodable file, a size, duration or seed out of range
401 / 403 wrong key / no key
503 busy the model is busy; retry after Retry-After
503 unavailable the model could not load or is not answering; retry shortly
404 on /v1/jobs/{id} unknown or expired job, or a job made with a different key
409 on /v1/jobs/{id}/content the job is not done yet

Usage: chat, coding and vision in tokens, document OCR in pages, images 1 per picture, audio generation and music in seconds of audio, diarization in seconds of audio.