console

AI

AI is where your app's AI is set up and read back: the provider keys it calls with, the tools you price in credits, the aliases they run on, and every run and call. A new tool is five questions in your own words, and every level reads by the tool it belongs to — so you can check what a customer's AI use cost as quickly as you change a price.

The walk

The room

  1. Open AI under Setup: Tools, Provider keys and Aliases are one card each, a row per thing and a door to add one.

    Open AI under Setup: Tools, Provider keys and Aliases are one card each, a row per thing and a door to add one.

Provider keys

  1. Provider keys shows the keys Gemmein holds for your app: which key, when it was last used, and how many tools use it.

    Provider keys shows the keys Gemmein holds for your app: which key, when it was last used, and how many tools use it.
  2. Choose Add a provider key to paste one: it is stored for your app and never shown again.

    Choose Add a provider key to paste one: it is stored for your app and never shown again.

Tools

  1. Open a tool for its own page: the line your app writes, how it runs, what it has done and what it depends on.

    Open a tool for its own page: the line your app writes, how it runs, what it has done and what it depends on.
  2. Change this tool is a door on that page — the tool's own fields, exactly as your gemmein/ai/tools file has them.

  3. Choose Create a tool, say what it does and pick the shape of the answer: a sentence becomes the tool's name everywhere, and the line your app calls.

    Choose Create a tool, say what it does and pick the shape of the answer: a sentence becomes the tool's name everywhere, and the line your app calls.
  4. Who runs it offers only the providers whose key can do that step; one without a key yet says so and is picked anyway, to connect on the next step.

    Who runs it offers only the providers whose key can do that step; one without a key yet says so and is picked anyway, to connect on the next step.
  5. Choose the model: one of your key's own, an alias that repoints every tool on it together, or another model name pasted in.

    Choose the model: one of your key's own, an alias that repoints every tool on it together, or another model name pasted in.
  6. Say what the model should do: sent with every call, and never shown to a customer.

    Say what the model should do: sent with every call, and never shown to a customer.
  7. Price it in credits, per call or per a thousand tokens — held when a run starts, settled at what the provider used.

    Price it in credits, per call or per a thousand tokens — held when a run starts, settled at what the provider used.
  8. The last question is a review: what your app sends, what it answers, and the exact line your app writes. Create saves it to the same place the form does.

    The last question is a review: what your app sends, what it answers, and the exact line your app writes. Create saves it to the same place the form does.

Aliases

  1. Aliases shows the names your tools run on in place of a model, and how many tools are on each.

    Aliases shows the names your tools run on in place of a model, and how many tools are on each.
  2. Open an alias for Repoint it: move every tool that uses it to another model, in one change.

    Open an alias for Repoint it: move every tool that uses it to another model, in one change.

Runs

  1. Open Runs to follow every job a tool started: while none has run yet, its own empty state, newest first once one has.

    Open Runs to follow every job a tool started: while none has run yet, its own empty state, newest first once one has.

AI calls

  1. Open AI calls to see every call your app made — by tool, with what each tool answered, refused and cost.

    Open AI calls to see every call your app made — by tool, with what each tool answered, refused and cost.
  2. Open a call to read what was asked and what came back, for a tool set to keep them.

    Open a call to read what was asked and what came back, for a tool set to keep them.

What it refuses and why

These are the console's own words when a change can't be saved or a request can't go through.

  • name must be 1-40 lowercase letters, numbers or hyphens, starting with a letter or number

    A tool's name is what your app sends to call it, so it stays short and plain.

  • credits must be a whole number from 1 to 10,000

    Every call spends whole credits from a person's balance, so every tool has a price.

  • a tool runs on a pinned model OR an alias, not both — clear one

    A tool has one answer to what it runs on, so repointing an alias always moves it.

  • a generate or transcribe tool runs on replicate, fal, assemblyai, elevenlabs, runway or external (your own pipeline at a URL you name — it submits itself, no relay involved)

    A job and an answer-now call reach different providers, so each tool uses a provider built for its kind.

  • a metered generate or transcribe tool needs bounds.maxUnits — the ceiling one run may bill (its price is reserved when the run starts); a per-run tool (unit call) needs none

    A run holds its most expensive outcome before it starts, and the ceiling is what it holds.

  • bounds.deadlineMinutes must be a whole number from 1 to 1,440 — how long a run on your own pipeline may take before it expires (60 when unset); a Gemmein-executed tool has no say in it

    A deadline belongs to work your own pipeline does; runs on the other providers keep their own clock.

  • "fast" is what alt-text, listing-copy run on — point them elsewhere first

    An alias that tools still run on stays until those tools point somewhere else, so no tool is left with nothing to run on.

  • no replicate key is set for this app — paste one on the AI page (app.gemmein.com/ai)

    A tool can be saved before its key; its runs start once the key is stored, and its row says what it is waiting on.

What an AI tool is, and how your app calls one: The AI route.