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.

തത്സമയമാക്കുക · $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.