OVH AI Endpoints

Qwen3.5-9B
Context window262K tokens
Free budgetfree · 2/min per IP tokens/mo
Requests / min2 RPM
Anonymous tier is 2 req/min warning
OVH AI Endpoints anonymous mode is documented at 2 req/min per IP per model (observed even stricter across models). The 400 req/min authenticated tier requires a Public Cloud project with a payment method, so the catalog ships the keyless path. Treat as a breadth/fallback tier, not a throughput tier.
No API key required info
Routes anonymously — the catalog ships a keyless sentinel row and calls work with no account or key.

HuggingFace Router

Qwen/Qwen3.5-9B
Context window262K tokens
Free budget$0.10/mo credit tokens/mo
Rate limitsnot published
Small $0.10/month routed credit warning
HuggingFace Inference Providers grants only ~$0.10/month of routed credit on the free tier (PRO is $2/month). Enough for light experimentation; exhausts quickly. Credits apply only to HF-routed requests.

Get this model the moment it changes

Limits move, models get replaced, better ones launch. Premium routers see this page's data live. Free routers see last month's.

Canlıya geç · $19/yr →

Use it

FreeLLMAPI is a self-hosted router you run yourself. Install it, paste in your free OVH AI Endpoints key, and Qwen3.5-9B answers on an OpenAI-compatible endpoint at http://localhost:3001/v1. No credit card, no hosted middleman: your prompts and your provider keys never leave your machine.

Install the router (macOS, Linux, WSL)
curl -fsSL https://freellmapi.co/install.sh | bash
Install the router (Windows PowerShell)
iwr -useb https://freellmapi.co/install.ps1 | iex
Call Qwen3.5-9B with curl
curl http://localhost:3001/v1/chat/completions \
  -H "Authorization: Bearer freellmapi-your-unified-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "Qwen3.5-9B",
    "messages": [{"role": "user", "content": "Say hi in five words."}]
  }'
The same request in Python (openai)
from openai import OpenAI

client = OpenAI(
    base_url="http://localhost:3001/v1",
    api_key="freellmapi-your-unified-key",
)

resp = client.chat.completions.create(
    model="Qwen3.5-9B",
    messages=[{"role": "user", "content": "Say hi in five words."}],
)
print(resp.choices[0].message.content)

The router answers on /v1/chat/completions and every other OpenAI surface, plus the Anthropic Messages API, so existing clients need only a new base_url. Swap the model id for auto and the router picks the best free model that is still under its limits. Full reference: docs/api.md.