Engy
Engy is an inference platform that serves open-weight models over an OpenAI-compatible API. The LLMTR catalog carries two Engy models; both are called on /v1/chat/completions with the engy/ prefix, exactly as the catalog lists them.
| Model | Context | Input / Cache read / Output ($/1M) |
|---|---|---|
engy/kimi-k3-engy |
1,113,088 | 1.95 / 0.195 / 9.75 |
engy/deepseek-v4.1-flash-1017-engy |
1,048,576 | 0.03 / 0.006 / 0.12 |
Repeated prompt prefixes can be served from a cache; those tokens bill at the cache-read rate in the table. The other providers serving the same model are listed on each model page, in the menu next to the provider name.
curl "$LLMTR_BASE_URL/v1/chat/completions" \ -H "Authorization: Bearer llmtr-your_key" \ -H "Content-Type: application/json" \ -d '{ "model": "engy/kimi-k3-engy", "messages": [ { "role": "system", "content": "Answer briefly and clearly." }, { "role": "user", "content": "Summarise the obligations in this contract clause in three points." } ], "max_tokens": 4096 }'Both models support tool/function calling and streaming.
Reasoning
Section titled “Reasoning”Both models reason by default, and those tokens bill as output. To turn reasoning off, append :fast to the model id (engy/deepseek-v4.1-flash-1017-engy:fast) or send "reasoning": false in the request. With it off, no reasoning tokens are produced or billed.
reasoning_effort is not supported on these models; a request that sends it is refused with 400 invalid_request.
If an answer returns with finish_reason: "length", raise max_tokens and retry.
Image input
Section titled “Image input”Both models accept images. Images go in an image_url part as a base64 data URL. An https:// image URL is not accepted; LLMTR refuses the request with 400 unsupported_input before it reaches the provider, and it is not billed.
IMAGE_B64=$(base64 -w0 invoice.png)curl "$LLMTR_BASE_URL/v1/chat/completions" \ -H "Authorization: Bearer llmtr-your_key" \ -H "Content-Type: application/json" \ -d '{ "model": "engy/deepseek-v4.1-flash-1017-engy", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "What is the total amount on this invoice?" }, { "type": "image_url", "image_url": { "url": "data:image/png;base64,'"$IMAGE_B64"'" } } ] } ], "max_tokens": 2048 }'Tool calling
Section titled “Tool calling”On engy/deepseek-v4.1-flash-1017-engy, tool_choice honours auto, required and a named function.
On engy/kimi-k3-engy, required and a named function are honoured on most requests, but this is not guaranteed: the answer can come back without a tool call or with a different tool. On this model, check the tool_calls field and the name of the function called in the response, and retry the request if the call you expect is missing.
On engy/deepseek-v4.1-flash-1017-engy, tool_choice: "none" with tools attached is refused with 400 unsupported_input; to turn tool use off on that model, leave the tools field out entirely.