# AI Model Service FAQ

Frequently asked questions about the Sunrise AI Model Service, hosted open-source LLMs, API access, subscriptions, and inference.

For product documentation, see [Sunrise AI Model Service](../../maas/index.md).

---

## Questions

==- How do I troubleshoot Cursor integration with Sunrise Model Service?
To use Cursor with Sunrise Model Service, you need to:

1. Set the **Override OpenAI Base URL** to `https://maas.ai.sunrise.ch/v1` in Cursor Settings → Models → API Keys.
2. Use a **Sunrise Model Service API key** (not an OpenAI key) in the OpenAI API Key field.
3. Add the model name from the [Active Models](../../maas/active-models.md) list. For the best Cursor experience, use `inference-glm5` or `inference-qwen3-vl-235b` as they fully support **Agent**, **Chat**, and **Plan** modes.

If you're still having issues:
- Check that both toggles are enabled (green) in Cursor's API Keys section.
- Ensure your API key starts with `sk-` and has access to the model you're trying to use.
- Verify the base URL ends with `/v1` (not `/cursor` or other suffixes).

For step-by-step instructions, see the [Cursor Integration Guide](../../maas/model-service-integrations/integrate-maas-with-cursor.md).

==- How do I call a model through the Sunrise Model Service API?
Every active model is exposed through an [OpenAI-compatible API](https://platform.openai.com/docs/api-reference/introduction) at `https://maas.ai.sunrise.ch/`. To send an inference request you need three things: a **Base URL**, a **Model Name** from the [Active Models](../../maas/active-models.md) table (for example, `inference-llama4-maverick`), and an **API Key** passed in the `Authorization: Bearer YOUR_API_KEY` header. You can use standard OpenAI client libraries in Python, Node.js, or cURL, just point the client at the Sunrise base URL and swap in your model name and key.

==- Can I try the models before committing to a paid plan?
Yes. The free **Evaluation** plan gives you 1 million tokens for 30 days with access to the full model catalogue through a single API key, no credit card and no monthly commitment. When you need ongoing API access, move to the **Base LLM API** plan (CHF 50/month). See [Subscription Plans](../../maas/subscriptions/index.md) for full plan details.

==- What is the difference between the Evaluation, Base LLM API, and Additional LLM Credits plans?
The three plans serve different stages of usage:

- **Evaluation**, Free for 30 days. Includes 1M tokens to test 20+ open-weight models with one API key. No credit card required. Ideal for trying model quality before you buy.
- **Base LLM API**, CHF 50/month (excl. VAT). Includes 50 credits per month, access to all models, a basic SLA, and the ability to create multiple API keys that share one credit pool. This is the paid plan for ongoing production or development use.
- **Additional LLM Credits**, CHF 1 per credit per month (excl. VAT). Adds recurring monthly credits to an active Base LLM API subscription. Requires provisioning against your Base LLM API key after purchase.

See [Subscription Plans](../../maas/subscriptions/index.md) for a full comparison.

==- Can I create multiple API keys on one Base LLM API subscription?
Yes. One **Base LLM API** subscription lets you create as many API keys as you need. All keys draw from the same shared credit pool, including any credits added through **Additional LLM Credits** top-ups provisioned against that subscription.

==- Do unused credits roll over to the next billing period?
No. Credits are non-transferable and expire at the end of each billing period. At monthly renewal, your allowance is reset to the plan amount, unused credits from the previous period are not carried forward.

**Example:** If your plan includes 1,000 credits and you use 900 in a month, the remaining 100 expire when the billing period ends. On renewal you receive 1,000 credits again, not 1,100. Your subscription renews and bills each month regardless of how much of the allowance you used.

==- What happens when I run out of credits?
Credits are your monthly inference budget. When your shared credit pool reaches zero, inference requests fail until your allowance increases.

- **Wait for renewal**, if your subscription is still active, your allowance resets at the start of the next billing period.
- **Add a top-up**, purchase and provision [Additional LLM Credits](../../maas/model-service-guides/how-to-add-additional-llm-credits.md) at any time to restore capacity for the current period.

==- How do I add more credits to my Base LLM API subscription?
Purchase an **Additional LLM Credits** subscription from the [Sunrise Console](https://portal.ai.sunrise.ch), choose how many credits to add each month, then provision it against your Base LLM API **Sunrise API Key** from the **Subscriptions** page. The credits are added to that subscription's shared pool. Step-by-step instructions are in [How to add LLM Credits](../../maas/model-service-guides/how-to-add-additional-llm-credits.md).

==- Can I add credits for a single month only?
Yes. **Additional LLM Credits** renew automatically each month, but you can use them as a one-time top-up: purchase the subscription, provision it against your Base LLM API key, then [cancel the Additional LLM Credits subscription](../../maas/model-service-guides/how-to-cancel-a-model-service-subscription.md). You can use the purchased credits for the remainder of that billing period. The top-up will not renew the following month.

==- Where are models hosted and how is usage billed?
Models are curated open-source LLMs hosted entirely on **Swiss sovereign infrastructure**, served with [vLLM](https://vllm.ai/) for optimized inference. Usage is billed per token: each model has its own input and output credit rates per million tokens, listed in the [Active Models](../../maas/active-models.md) table. One credit equals CHF 1 of inference capacity. Credits are consumed based on the number of tokens processed, and different models consume credits at different rates. Billing is predictable and tied to actual token volume rather than fixed per-request pricing.

==- Where can I see the health of the models?
A status dashboard shows the health of all models: [https://status.ai.sunrise.ch/](https://status.ai.sunrise.ch/)

==- Is my inference data stored or used to train models?
No. Sunrise Model Service is designed for private inference on Swiss sovereign infrastructure. On both the **Evaluation** and **Base LLM API** plans, inference data is not stored, shared, or logged. Prompts and model responses are processed in real time and are not used to train underlying models. Customer data submitted for inference is processed within tenant boundaries. For security and data-processing details, see the [Model Service architecture guide](../../maas/architecture.md).

==- What are guardrailed (-GRC) models?
Some active models are available in two variants through the same API: the standard model and a guardrailed variant with a `-GRC` suffix (Governance, Risk & Compliance). Use the same base URL and API key, only the model name changes. The `-GRC` variant screens every request at the gateway before it reaches the model, blocking high-risk content (such as violence or leaked credentials) and masking sensitive identifiers (such as emails or phone numbers). Use `-GRC` when you need content safety and data filtering enforced in production; use the standard variant for research, evaluation, or internal tools where you want raw model behaviour.

==- Can I connect Sunrise MaaS to third-party tools like Cursor or OpenCode?
Yes. Because Sunrise exposes an OpenAI-compatible API, many existing tools and SDKs work by pointing them at the Sunrise base URL (`https://maas.ai.sunrise.ch/`) and supplying your Sunrise API key. Step-by-step guides are available for [Cursor](../../maas/model-service-integrations/integrate-maas-with-cursor.md) and [OpenCode](../../maas/model-service-integrations/integrate-maas-with-opencode.md). See [Model Service Integrations](../../maas/model-service-integrations/index.md) for the full list.

==- How do I cancel my Model Service subscription?
You can cancel any Model Service subscription at any time from the **Subscriptions** page in the [Sunrise Console](https://portal.ai.sunrise.ch). Open the three-dot menu on the subscription row and select **Cancel**. See [How to cancel a Model Service Subscription](../../maas/model-service-guides/how-to-cancel-a-model-service-subscription.md) for step-by-step instructions.

==- What causes token limits to be exceeded?
The most common causes include:

- Excessive context passed through MCP (Model Context Protocol)
- Tool-calling loops, where each tool result is injected back into the prompt
- Long conversation history that is continuously appended without truncation
- Large prompts or system instructions
- Token estimation mismatches due to tokenizer differences or fields added late in the request pipeline

When combined, these factors can quickly exceed the model's context window.

==- Why do we sometimes see a 400 Bad Request error related to tokens when using Sunrise Business AI Assistant or MaaS-based LLMs?
A **400 Bad Request** error related to tokens typically occurs when the total estimated input tokens exceed the model's context window.

Sunrise' AI gateway (LiteLLM) performs a protective pre-check before sending the request to the model. If the request would exceed the model's allowed context window, LiteLLM rejects the request early to avoid unnecessary compute usage. This situation can result in zero or negative tokens remaining for the model's response, which triggers the error.
===
