Models and providers
Kumkuat calls large language models through a single abstraction layer, so the model behind each feature can be chosen per workspace without any change on your side.
Per-feature selection
Workspace → Models exposes one selector for each feature that calls a model:
| Feature | Used for |
|---|---|
| Signals | Extracting statements against your themes |
| Audience reactions | Scorecards, chat, surveys and content testing |
| Alerts | Writing digests |
| Narrative analysis | The Narrative Testing Studio |
Each selector lists Google Gemini, OpenAI and Anthropic models. The workspace's choice overrides the platform default for that feature and for its background jobs. Most features default to Gemini; narrative analysis defaults to an Anthropic model, so a workspace that wants to avoid a provider must set that selector explicitly.
Providers
Calls are made over TLS from Kumkuat's cloud project. They use Kumkuat-managed provider accounts unless the workspace has added its own key for that provider (see Bring your own key), in which case they use yours. Gemini is used on the paid API tier and OpenAI through its API; neither trains on API content. Kumkuat trains no models of its own. Standard provider API retention applies; no zero-data-retention addendum is in place today. With your own key, your own provider agreement governs retention and training for the calls made with it.
Turning a provider off
Three layers exist, from the one you can see in the product to the strongest:
- Per-feature selection in your workspace, as above.
- Platform-level credential removal: Kumkuat's own provider credentials are held in a secret manager and injected into the running service. Removing a provider's credential means no call to that provider from any workspace can authenticate on Kumkuat's account, regardless of settings. Kumkuat can apply this fleet-wide on request. A workspace that has added its own key for that provider is unaffected, because its calls do not use Kumkuat's credential.
- Audit trail per call: every model call is recorded with the workspace, the user, the feature, the provider and the model. Kumkuat can produce a per-provider count of calls for your workspace over any period as evidence that the configuration held.
Bring your own key
Workspace settings → Models & provider keys lets an admin add a key for OpenAI, Google Gemini or Anthropic. This is per workspace, and it changes which account the provider bills, not which models are available.
- When a key is present, every call to that provider from this workspace uses it. That includes calls made while a user is in the app (chat, reactions, surveys, narrative tests, content drafts) and the background jobs the workspace schedules (signal extraction, document tagging, alert digests, retrieval embeddings, persona grounding). Kumkuat's own credential is not used for those calls.
- Providers without a key keep using Kumkuat-managed accounts. Adding only a Gemini key, for example, moves the Gemini calls and nothing else. To move everything, add a key for each provider your feature selectors use. Note that retrieval embeddings use OpenAI by default, so an OpenAI key covers them even if no feature selector names OpenAI.
- Keys are masked after saving. The settings page and the API return only the last four characters. Use Unset to remove a key; the next call to that provider returns to Kumkuat's account.
- Keys are not validated when saved. A wrong or revoked key fails on the first call that uses it, with the provider's own error in the feature that made the call. Test a new key with a quick chat or reaction.
- Keys are stored with the workspace settings in the workspace database (encrypted at rest, keyed to your workspace). They are never written to logs.
- Usage on your key is still recorded in Kumkuat's per-call audit (workspace, user, feature, provider, model), so the evidence in Turning a provider off above continues to work. Spend, however, appears on your provider account, not on Kumkuat's.
Web grounding in chat
Persona chat runs the configured model with web-search grounding on by default. It can be switched off for a workspace on request. See Audience Chat.