You've been given a personal API key to a fast hosted LLM. Any tool that speaks the OpenAI API works. You need exactly two values:
| Base URL | https://ava-ai.duckdns.org/v1 |
|---|---|
| API key | the sk-… key you received privately |
| Name | Type | Notes |
|---|---|---|
gpt-oss-120b | chat | default — fastest, 131k context |
gpt-oss-120b-alt3 | chat | same model, alternate route — try if the default is ever down or slow |
llama-3.1-8b | chat | small + very cheap — drafts, summaries, bulk work |
gpt-oss-20b | chat | smaller gpt-oss — cheapest chat option |
llama-3.3-70b | chat | capable 70B generalist |
qwen3.6-27b | chat + vision | newer Qwen, reads images — ⚠ pricier output |
zai-glm-4.7 | chat | ⚠ premium coder/agents — drains budget ~5× faster |
gemma-4-31b | chat + vision | reads images/screenshots — mid-price |
Flash-2-RCV | chat + vision | reasoning/coding/vision — rate-limited, best for lighter use |
bge-small-en-v1.5 | embeddings | 384 dimensions |
Use gpt-oss-120b by default — it's the fastest. More models are
added as we grow; call /v1/models anytime for the current list. All
spend on every model counts against the same personal budget.
Any chat app that supports a custom OpenAI-compatible provider works:
https://ava-ai.duckdns.org/v1 · API key: your keygpt-oss-120b by hand), then
pick it in a new chatMost of these read an OpenAI-compatible endpoint from environment variables:
OPENAI_BASE_URL=https://ava-ai.duckdns.org/v1 OPENAI_API_KEY=sk-YOUR-KEY
If yours uses a config file instead, point its base URL and API key at the same two values. Note: some tools only show models you list explicitly — they do not auto-discover them. If your model list comes up empty, declare the ones you want:
gpt-oss-120b gpt-oss-120b-alt3 gpt-oss-20b llama-3.1-8b llama-3.3-70b qwen3.6-27b zai-glm-4.7 gemma-4-31b Flash-2-RCV
curl https://ava-ai.duckdns.org/v1/chat/completions \
-H "Authorization: Bearer sk-YOUR-KEY" \
-H "Content-Type: application/json" \
-d '{"model":"gpt-oss-120b","messages":[{"role":"user","content":"hello"}]}'
from openai import OpenAI
client = OpenAI(base_url="https://ava-ai.duckdns.org/v1", api_key="sk-YOUR-KEY")
r = client.chat.completions.create(model="gpt-oss-120b",
messages=[{"role": "user", "content": "hello"}])
print(r.choices[0].message.content)
Your key has a monthly dollar budget and a rate limit (30 requests/min,
2 parallel). Check where you stand anytime at
ava-ai.duckdns.org/usage — paste your key, nothing is stored.
If you hit your budget you'll get a clear quota exceeded error;
message the admin for a bump or wait for the monthly reset.