Quickstart

The tiyuvta inference API is OpenAI-compatible. If your code already uses the openai SDK, one line changes: the base URL.

1. Get a key

Request one at /access, then export it:

export TIYUVTA_API_KEY=sk-...

Keys are manually reviewed — usually issued within a day.

2. Point the SDK at the API

Base URL https://api.tiyuvta.ai/v1, model qwen3.6-27b.

tiyuvta — /v1/chat/completions
curl https://api.tiyuvta.ai/v1/chat/completions \
  -H "Authorization: Bearer $TIYUVTA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "qwen3.6-27b",
    "messages": [{"role": "user", "content": "hello"}]
  }'
import os
from openai import OpenAI

# change one line
client = OpenAI(
    base_url="https://api.tiyuvta.ai/v1",
    api_key=os.environ["TIYUVTA_API_KEY"],
)

r = client.chat.completions.create(
    model="qwen3.6-27b",
    messages=[{"role": "user", "content": "hello"}],
)
print(r.choices[0].message.content)
import OpenAI from "openai";

// change one line
const client = new OpenAI({
  baseURL: "https://api.tiyuvta.ai/v1",
  apiKey: process.env.TIYUVTA_API_KEY,
});

const r = await client.chat.completions.create({
  model: "qwen3.6-27b",
  messages: [{ role: "user", content: "hello" }],
});
console.log(r.choices[0].message.content);

3. That's the whole setup

A successful response is standard OpenAI shape. Two fields are worth noticing on your very first call: usage carries worker-truth token counts (the numbers you are billed by), and system_fingerprint carries the engine build — pin it and you will detect the day the engine changes underneath you.

Streaming (stream: true), tools, and response_format work with the stock SDK; the deliberate deviations are loud 400s, never silent — see Errors & limits. Two defaults to know: omitted temperature means 1.0 and omitted seed means fresh entropy per request — pass an explicit seed whenever you want reproducible output. Details in Determinism.

Topics

  • Determinism seed and temperature semantics, what the gates check, the one bounded exception
  • Constrained decoding response_format json_object and json_schema, cost, schema guidance
  • Caching the cross-request prefix cache, cache_salt isolation, cached_tokens accounting
  • Errors & limits honest 400s, error body shape, rate-limit headers, graceful drain
source of truth