Clevermation
Documentation

Vision & Reasoning

Multimodale Inputs und Reasoning-Effort über CleverRouter.

Vision

Multimodale Modelle akzeptieren Bilder als Teil des Messages-Arrays — URL oder base64. Vision-fähige Modelle haben das Capability-Flag vision (siehe Models).

vision.ts
const completion = await client.chat.completions.create({
  model: 'mistral/pixtral-large:eu',
  messages: [
    {
      role: 'user',
      content: [
        { type: 'text', text: 'Was siehst du in diesem Bild?' },
        {
          type: 'image_url',
          image_url: {
            url: 'https://example.com/invoice.png',
            detail: 'high',
          },
        },
      ],
    },
  ],
});

Für nicht-öffentliche Bilder als base64:

import { readFileSync } from 'node:fs';

const data = readFileSync('./invoice.png').toString('base64');

const completion = await client.chat.completions.create({
  model: 'openai/gpt-4o-mini',
  messages: [
    {
      role: 'user',
      content: [
        { type: 'text', text: 'Extrahiere Rechnungsnummer und Betrag.' },
        { type: 'image_url', image_url: { url: `data:image/png;base64,${data}` } },
      ],
    },
  ],
  response_format: { type: 'json_object' },
});

Limits

Max. 20 Bilder und 20 MB Gesamtgröße pro Request. Größere Workloads bitte mit base64-Chunking aufteilen.

Reasoning

Reasoning-Modelle (openai/o3-mini, anthropic/claude-3-7-sonnet:thinking) erzeugen interne Thinking-Tokens, bevor sie antworten. Steuere das Budget über reasoning_effort:

reason.ts
const completion = await client.chat.completions.create({
  model: 'openai/o3-mini',
  reasoning_effort: 'high', // 'low' | 'medium' | 'high'
  messages: [
    {
      role: 'user',
      content: 'Beweise: für jede Primzahl p > 2 gilt p² mod 24 = 1.',
    },
  ],
});

console.log(completion.usage?.completion_tokens_details?.reasoning_tokens);
EffortUse-CaseLatenz
lowValidierung, simple Refactors2–6s
mediumDefault für komplexe Tasks6–20s
highBeweise, Architektur-Reviews20–90s

Kosten

Thinking-Tokens werden wie Completion-Tokens abgerechnet. Setze low als Default und upgrade nur explizit.

CleverRouter mapt die Provider-Pendants automatisch: reasoning_effort für OpenAI o-Series, thinking.budget_tokens für Anthropic.

On this page

On this page