AI Assistant

A gelato-aware assistant that can rebalance recipes, suggest swaps, and auto-fill custom ingredients from a description or a barcode.

Gelato Maestro's AI features run on an external AI provider that you connect once in Settings. Once a provider is set up, two assistants become available:

The AI assistant icon in Gelato Maestro.
Look for the sparkle badge throughout the app — it marks AI-powered actions.
Read this first — the AI can be wrong Large language models occasionally invent values, misclassify ingredients, or balance a recipe in a way that's mathematically valid but culinarily strange. See When the AI is wrong below. Every value the AI proposes remains editable, and you always get a Keep / Discard review step before changes are committed.

Setting up an AI provider

Gelato Maestro does not run an AI model itself. You bring the brain: pick a provider, paste an API key (or sign in), and the assistants light up. Open Settings › AI Providers to get started.

The Add AI Provider sheet showing Provider, Setup, Name, API Key and Advanced sections.
The Add AI Provider sheet — pick a provider, follow the setup hint, paste your key (or sign in).

Which provider should I pick?

The same advice is shown inside the app, in the "New to AI? Start here" card on the AI Providers screen:

Supported providers

ProviderHow to sign inNotes
OpenAI SubscriptionSign in with your ChatGPT accountUses your existing Plus / Pro / Team plan. No API key.
OpenAIAPI key from platform.openai.comPay-per-request. You'll also need a payment method under Billing.
Google GeminiAPI key from aistudio.google.comHas a free tier. About $5 of credit covers heavy usage.
AnthropicAPI key from console.anthropic.comA Claude Pro subscription cannot be used — separate API key required.
MistralAPI key from console.mistral.aiRequires a payment method under Billing.

Step by step: add a provider

  1. Open Settings › AI Providers and tap Add AI provider.
  2. Pick a provider from the Provider picker. The Setup panel below updates with provider-specific instructions and a Get API Key link that opens the right page in your browser.
  3. Click Get API Key, create the key on the provider's site, and copy it.
  4. Paste the key into the API Key field. (For OpenAI Subscription, use the Sign in button instead.)
  5. Optional: rename the source in the Name field (e.g. "Personal Gemini"). Useful if you add multiple providers.
  6. Optional: open Advanced to pick a specific model and reasoning effort. The default is fine for most users.
  7. Tap Add. Gelato Maestro tests the connection by fetching the model list. If it succeeds, the provider appears in the list.
Your existing app login isn't a key Being signed into ChatGPT, Claude or Gemini in their own apps does not authorise other apps to use them. With the exception of OpenAI Subscription (which uses the OpenAI account login flow on purpose), every provider here needs an API key you create on the provider's website.

Subscription vs. API key

The Recipe Assistant

Once a provider is configured, the AI button becomes active inside Recipe Details. Open the assistant and you'll see a chat field with a placeholder like "Ask your assistant to help improve this recipe."

What it can do

The assistant is not a generic chatbot. It has direct access to your recipe through a small set of gelato-specific tools — it can read the current ingredients and KPIs and rewrite them in one go. Practical things you can ask:

How a conversation runs

  1. You write a request. The clearer the prompt, the better the result. Say what you want, what you want to avoid, and any constraints — a target weight, a flavour to preserve, ingredients you don't have on hand.
  2. The assistant works step by step, with empirical tools. It isn't free-styling: it uses the same balancing and analysis tools the app exposes to you. It reads the recipe, tries a change, checks the result, adjusts, and tries again. You can watch every step appear in the chat as it happens.
  3. You can pause and steer at any moment. If the assistant is heading in the wrong direction, stop it and send a new instruction — "actually keep the pistachio paste ratio where it is", "don't touch the milk powder", "go in a softer direction instead". It picks up from there with the new guidance.
  4. It finishes with a structured summary. The full proposed recipe — every ingredient with its ratio, the resulting gauges, and a short note on what changed and why.
  5. You decide. Tap Keep to commit the change to your recipe, or Discard to throw it away and leave the original untouched.
A summary card showing the final ingredient list and KPI gauges after the assistant finished.
The final summary card — every ingredient with its ratio, plus the resulting gauges. Use Keep to commit or Discard to revert.

Tips for good results

The Ingredient Assistant

When the Recipe Assistant needs an ingredient that doesn't exist in your library yet — or when you're creating a custom ingredient by hand — Gelato Maestro tries to fill in the composition fields for you. This is the Ingredient Assistant.

An ingredient with a provider pill showing the LLM used for the assistant.
The provider pill shows which AI model will be used when you send a prompt. You'll see one pill for each provider you've configured — for example, if you have both OpenAI and Google Gemini set up, two pills appear, and you tap the one you want to use. The same pill appears in both the Recipe Assistant and the Ingredient Assistant. Tap the chevron on a pill to open a menu and pick a different model from that provider.

What happens when a new ingredient is needed

  1. OpenFoodFacts lookup. The assistant searches OpenFoodFacts — a free global product database — by name.
  2. One clear match → the ingredient is created automatically with the OpenFoodFacts composition (water, sugars, fats, protein, fibre, calories).
  3. Several candidates → you see a choice card with 2–3 candidates ("Hazelnut paste — Generic", "Hazelnut paste — Brand X", …) and pick the closest match. The pick is then created from OpenFoodFacts.
  4. No OpenFoodFacts match, or OpenFoodFacts is unreachable → the AI is asked, in an isolated call, to estimate the composition. Returned values are validated (clamped 0–100%, totals checked) before the ingredient is created.
  5. If even the AI fallback fails to produce a valid composition, the assistant tells you and leaves the recipe unchanged.

What the assistant fills in

For a new custom ingredient the assistant fills the same fields you'd otherwise enter by hand in Adding or Editing an Ingredient:

Every value remains editable in the ingredient detail view. If the AI got something wrong — a fruit pulp marked as 100% water, a dairy product missing its MSNF — you can correct it on the spot.

OpenFoodFacts is the better source Whenever possible, prefer the OpenFoodFacts result over the AI fallback. OpenFoodFacts has real label data scanned by a community of millions; the AI has to estimate. The clearest way to get an OpenFoodFacts hit is to scan the product barcode with the barcode scanner on iOS or to use the exact product name printed on the label.

When the AI is wrong

Treat the AI as a capable but fallible assistant — not as a source of truth. The model can:

Built-in safety nets

Gelato Maestro tries to make AI mistakes recoverable rather than destructive:

Privacy When you use any of the supported providers (OpenAI, Anthropic, Gemini, Mistral), your prompts and the recipe data the assistant reads are sent to that provider's servers under their terms of service. Review the provider's privacy policy if this matters to you.

Switching, removing or editing a provider

Each provider you've added shows as a row in Settings › AI Providers. Tap a row to open the edit screen — you can rename it, replace the API key, pick a different default model, or remove it entirely. Removing a provider deletes the stored key from your device; no request is sent to the provider.

You can have multiple providers configured at the same time — for example an OpenAI subscription for everyday work and Google Gemini as a backup. All configured providers will be available in the assistant.