Documentation

Guides, tutorials, and frequently asked questions

Bring Your Own AI Backend: Anthropic, OpenAI, Doubao, Gemini or Ollama | Loopal

Frequently asked questions

Can I use my own API key instead of platform credits?
Yes. Bring your own Anthropic, OpenAI, Doubao or Gemini key, or point it at your own Ollama server.
What happens if I do nothing?
It uses platform credits out of the box, so it works without any setup.
What does running my own backend change?
Your requests go where you chose rather than to a provider the app selected for you. Platform models relay through the vendor's servers to a model provider, a key you bring goes straight to that provider, and an Ollama server never touches those servers at all.
What can it do with permissions?
Read your schedule, create reminders, and answer location-aware questions — each capability can be turned off on its own under Capabilities.
Do I need an account to use my own key or my own Ollama server?
No. Signing in is required only for Platform models, because the credit balance is held against your account. Bring a key or connect your own Ollama and the assistant works signed out.
Why was my own model rejected?
Because the assistant needs tool calling. A model that cannot call the tools Loopal requires is refused before any request is sent, with a message saying so — and Loopal tests exactly the model you picked rather than silently substituting another.

The short answer

Loopal is a Chinese keyboard whose assistant can run on four kinds of backend, and choosing between them is a switch rather than a project. Out of the box it uses platform credits, with no account and no API key to set up. You can paste in your own Anthropic, OpenAI, Doubao (Volcengine Ark) or Gemini key, or point it at an Ollama server on your own LAN.

What changes is where the request goes and who pays for it. Platform models are relayed through the vendor's servers to a model provider and spent as credits. A key you bring goes straight to that provider. An Ollama server never touches those servers at all.

Why you are here

Two kinds of person land here. The first already pays for Claude or ChatGPT and does not want a keyboard app subscription on top of that. The second runs a model at home and is tired of the phone routing around their own server to somebody else's cloud.

Underneath both is the question nobody asks out loud: I type every private thought into this thing — who reads the ones I send?

Three specific answers. Ordinary typing never leaves the device: Pinyin candidates and handwriting recognition run locally, no network access at all. Only when you deliberately summon the assistant and send it a message does the text of that message go to an inference backend — and which backend that is, is yours to pick. That last part is what separates a keyboard with an assistant in it from an assistant app with a text box around it.

The backends, grouped by who pays for them

The picker groups backends into three sections, honestly about who carries the cost.

PLATFORM MODELS. Turnkey: anonymous device authentication, no account and no API key, models routed by scene automatically. This is the path that spends credits, and until you sign in its row reads "Signed-in models billed to your account".

CLOUD PROVIDERS. Anthropic (Claude models), OpenAI (OpenAI models), Doubao (Volcengine Ark models) and Gemini (Google Gemini models), each with your own key. Requests go to that provider directly. No credit balance and no account — you pay that provider on its own billing page.

SELF-HOSTED. Ollama, on "your server address and port". The only option whose request never leaves your network.

What platform credits actually cost

Platform models are the only option that costs its owner money, so the only one with prices attached.

  • Loopal Pro, monthly or yearly — anchored at $9.99/month or $99.99/year in the US. Its description is precise about what you are buying: "More platform model use, new skills first."
  • Three credit top-ups, consumable and valid for one year: 200 credits for $2.99, 550 for $6.99 with a 10% bonus, and 1,200 for $12.99 with a 20% bonus.

There is no free trial, deliberately: the free allowance is the trial, and a seven-day trial on top of it would blur "credits ran out" and "trial ended" into one churn event.

The backend page carries a gauge labelled "Credits this period", reading remaining over granted, plus a line for balance outside this period's allowance — your top-ups and anything granted to you. When a call cannot be paid for, the message is exact: "Not enough credit for one call of this model. Pick a cheaper model or top up," with a Top up button next to it. Two other gateway failures have their own wording rather than a generic error: "Platform models are not enabled for this app yet," and "No platform model is available right now."

If you already pay Anthropic or OpenAI, bringing your own key costs nothing extra and skips all of that.

Pointing it at an Ollama box

The Ollama form is two fields — Host or IP, with a LAN address as the placeholder (192.168.1.20), and Port, placeholder 11434, Ollama's default. An API Key field exists and is marked optional. Three things about it are unusual, and each is deliberate.

  1. Plain HTTP is allowed here, and only here. A home Ollama server is almost always unencrypted on a private address, and every keyboard extension ships permitting arbitrary network loads so it can reach yours. For any other provider a credential over plain HTTP is refused outright — and on Ollama itself, configuring an API key requires an HTTPS address.
  2. Both keyboard extensions declare local-network access to reach the server you configure, not just the host app. The assistant runs inside the keyboard, so the keyboard is the thing that has to open the socket.
  3. The phone has to be on that network. From a café, 192.168.1.20 resolves to nothing, and the failure is reported rather than quietly rerouted through a cloud model.

Select a model, test, and the form reads "Connection succeeded. Models are available." The save button then reads "Save and use."

Which models it accepts, and what fails

This decides whether bring-your-own works for you at all, and it is stricter than most "BYO API key" checkboxes.

Your model must support tool calling. The assistant reads your calendar, creates reminders and answers location questions, so it calls tools. A model declared incapable of the tools required here is refused before a single request leaves the phone, with a message that says exactly why: "This model does not support the tools required by Loopal." Point an Ollama server at an embedding model and you meet this immediately.

It tests the model you chose — and only that model. If that model fails its probe, the failure is what you get: a backend quietly answering from a neighbouring model while displaying a different name would be lying about what it is.

Not every backend exposes a model list. Where one does, the picker lists it and badges what each model can do: Vision for a model that accepts image input, Web search for one that runs its own search. Where it does not, you are told so — "This backend does not expose a model list. Enter a model ID and test again." The credential states have their own copy too: "The credential was rejected" and "No usable model was found."

The keyboard needs Full Access before any of it works. That is an iOS requirement rather than a product choice: the keyboard must be allowed to reach the network and sync with the main app. After you connect a backend the app says exactly that — "Enable Allow Full Access for the Loopal keyboard in System Settings" — and until you switch to the keyboard once, a second state says access has not been verified yet.

Where the settings actually live

One honest oddity: the Inference backend page explains only what is running and how much credit is left. The full provider list — platform models, the four cloud providers, Ollama — sits behind a gesture: tap the page title five times in a row, with no gap longer than 1.5 seconds between taps, or the count restarts. It is a registered route (app://agent-backend-switch), not a hidden view controller.

What Loopal does differently, and where it stops

The differentiator is not the length of the provider list. It is that the backend is a first-class row with a real connection test, and that failures name the actual cause — credential rejected, no usable model, tool calling unsupported, not enough credit — instead of a spinner. And the privacy story is told per backend rather than as one marketing sentence: on Ollama, "your messages never leave your network" is literally true; on a key you bring, they leave your network and arrive at a company with its own retention policy.

The limits, stated plainly:

  • It is not on the App Store yet. Gateway states like "not enabled for this app yet" exist in the build — what an in-development product looks like from the inside.
  • Bring-your-own-backend is about inference only. It does not touch the separate OAuth connectors — Gmail, Notion, Slack and the rest — which are a separate grant with its own revocation.
  • Capabilities are independent of the backend. Calendar, Reminders and Location are three separate switches, and turning one off means the assistant can no longer read that information. Choosing Ollama does not imply any of them.
  • Memory curation is a background model call, scheduled to run as a deferrable background task while the device is idle, with a "curate now" button for the same call on demand. If you pay per call, background work is model work too.
  • Conversations stay on the device, in storage shared between the main app and the keyboard. "Clear all conversations" removes every one of them at once, and that cannot be undone.

If you are deciding this in the next ten minutes

  • You already pay for a cloud model → bring the key. No account, no credits, no second bill. Check that the model supports tool calling first.
  • You run a server at home → point it at Ollama on port 11434, and accept that the keyboard reaches it only while the phone is on that network.
  • You want to decide nothing → Loopal's platform credits work out of the box with no account and no API key, and the gauge tells you what is left before you are cut off.
  • You are typing things you would never paste into a web search → Ollama is the one configuration where the assistant's requests stay inside your network.

Whatever you pick, the typing itself stays local. When Loopal ships, the download link will be on the product page.