We use cookies to enhance your experience, provide personalised content, and analyse our traffic; see our Cookie Policy.
openai/o1The original reasoning model, kept for compatibility
o1 thinks before answering and was the first OpenAI model to do so, but at 36 credits per 1K input it is now the most expensive chat model on Tchavi and has no tool or streaming support. o3 and the GPT-5 tiers do the same job for far less.
Explicit thinking traces
Strong at arithmetic and proofs
Long problem statements supported
Reads images and PDFs in the same request as your text
Solve this problem step by step: a merchant sells 3 items...
Yes. Top up your Tchavi account with Orange Money, MTN MoMo, M-Pesa or another mobile money operator. No bank card is needed. Credits land as soon as the payment is confirmed and are deducted as you use them.
Yes. Keep your current OpenAI SDK, just change the base URL to Tchavi's (shown in the API tab) and use your Tchavi key. The rest of your code stays the same.
import Tchavi from '@tchavi/sdk';
const client = new Tchavi({ apiKey: 'API_KEY' });
const response = await client.chat.completions.create({
model: 'o1',
messages: [
{
"role": "user",
"content": "Hello!"
}
],
});
console.log(response.choices[0].message.content);
console.log('Credits used:', response.tchavi.credits_used);Every parameter this model accepts on the API. Check the SDK for full typings.
modelRequiredID of the chat model (e.g. `o1`).
messagesRequiredConversation messages. Each item has a `role` (system/user/assistant) and a `content` that's either a plain string or an array of content blocks (`text`, `image_url`, `document_url`).
temperature1Sampling temperature between 0 and 2. Higher values = more random.
max_tokensMaximum number of tokens to generate in the response.
max_completion_tokensOpenAI alias for `max_tokens`. Either field works; if both are sent, `max_completion_tokens` wins.
reasoning_effortReasoning depth on OpenAI o-series / GPT-5 reasoning models. Values `"low"`, `"medium"`, `"high"`. Silently ignored by non-reasoning OpenAI models.
top_p1Nucleus sampling: only tokens in the top `top_p` probability mass are considered.
seedInteger seed for deterministic output. The same seed + identical request yields the same completion when supported by the provider. OpenAI honours it; Anthropic ignores.
n1Number of completions to generate in one call. Defaults to 1; each extra completion is billed.
stopUp to 4 sequences where the API will stop generating further tokens.
frequency_penalty0Between -2.0 and 2.0. Positive values penalize tokens that have appeared frequently.
presence_penalty0Between -2.0 and 2.0. Positive values encourage the model to talk about new topics.
userEnd-user identifier passed to the upstream provider for abuse / moderation tracking. Should be stable per end-user.
logit_biasPer-token logit bias `{ "<tokenId>": <-100..100>, ... }`. OpenAI-specific; Anthropic ignores silently.
messages[].content[].image_urlAttach an image on a user message. Pass a content block `{ "type": "image_url", "image_url": { "url": ... } }`. PNG / JPEG / WebP, up to 4 per request. Only models with `supportsImageInput: true` accept this block (e.g. `gpt-4o`, `claude-opus-4-7`).
messages[].content[].document_urlAttach a PDF on a user message. Pass a content block `{ "type": "document_url", "document_url": { "url": ... } }`. Up to 5 PDFs per request. Only models with `supportsDocuments: true` accept this block (e.g. `claude-sonnet-4-6`, `gpt-4.1`).
Estimated over 30 days, for a typical message: ~500 input + ~150 output tokens, billed to the thousandth of a credit.