Skip to content

feat(openrouter/aion-labs/aion-3.0): add new models [bot]#1710

Open
models-bot[bot] wants to merge 2 commits into
mainfrom
bot/add-openrouter-aion-labs-aion-3.0-20260708-000706
Open

feat(openrouter/aion-labs/aion-3.0): add new models [bot]#1710
models-bot[bot] wants to merge 2 commits into
mainfrom
bot/add-openrouter-aion-labs-aion-3.0-20260708-000706

Conversation

@models-bot

@models-bot models-bot Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Auto-generated by model-addition-agent for openrouter/aion-labs/aion-3.0.


Note

Low Risk
Declarative model metadata only; no runtime or auth logic changes.

Overview
Adds a new OpenRouter provider definition for aion-labs/aion-3.0 under providers/openrouter/aion-labs/, following the same pattern as other Aion models in that folder.

The entry registers chat mode with thinking enabled, 131072 context and 32768 max output tokens, serverless provisioning, and per-token pricing including prompt cache read costs. Compared to the existing aion-2.0 config, this version advertises function calling, JSON output, and tool choice in addition to prompt caching.

Reviewed by Cursor Bugbot for commit 7a6abfc. Bugbot is set up for automated code reviews on this repo. Configure here.

@github-actions

github-actions Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

/test-models

@harshiv-26

Copy link
Copy Markdown
Collaborator

Gateway test results

  • Total: 8
  • Passed: 6
  • Failed: 2
  • Validation failed: 0
  • Errored: 0
  • Skipped: 0
  • Success rate: 75.0%
Provider Model Scenarios
openrouter aion-labs/aion-3.0 success: tool-call:text-text:stream, tool-call:text-text, params:text-text:stream, params:text-text, reasoning:text-text, reasoning:text-text:stream

failure: json-output:text-text, json-output:text-text:stream
Failures (2)

openrouter/aion-labs/aion-3.0 — json-output:text-text (failure)

Error
Traceback (most recent call last):
  File "/tmp/tmp10nfnj5b/snippet.py", line 21, in <module>
    _json.loads(_content)
  File "/usr/local/lib/python3.11/json/__init__.py", line 346, in loads
    return _default_decoder.decode(s)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/json/decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/json/decoder.py", line 355, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
Code snippet
from openai import OpenAI

client = OpenAI(api_key="***", base_url="https://internal.devtest.truefoundry.tech/api/llm")

response = client.chat.completions.create(
    model="test-v2-openrouter/aion-labs-aion-3.0",
    messages=[
        {"role": "user", "content": "List 3 colors with their hex codes in JSON."},
    ],
    response_format={"type": "json_object"},
    stream=False,
)
import json as _json

_content = response.choices[0].message.content
print(_content)

if not _content:
    raise Exception("VALIDATION FAILED: json-output - response content is empty")

_json.loads(_content)
print("VALIDATION: json-output SUCCESS")
Output
```json
[
  {
    "color": "Red",
    "hex": "#FF0000"
  },
  {
    "color": "Green",
    "hex": "#00FF00"
  },
  {
    "color": "Blue",
    "hex": "#0000FF"
  }
]

</details>

**`openrouter/aion-labs/aion-3.0` — json-output:text-text:stream (failure)**

<details><summary>Error</summary>

Traceback (most recent call last):
File "/tmp/tmpb145nk54/snippet.py", line 26, in
_json.loads(_accumulated)
File "/usr/local/lib/python3.11/json/init.py", line 346, in loads
return _default_decoder.decode(s)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)


</details>

<details><summary>Code snippet</summary>

```python
from openai import OpenAI

client = OpenAI(api_key="***", base_url="https://internal.devtest.truefoundry.tech/api/llm")

response = client.chat.completions.create(
    model="test-v2-openrouter/aion-labs-aion-3.0",
    messages=[
        {"role": "user", "content": "List 3 colors with their hex codes in JSON."},
    ],
    response_format={"type": "json_object"},
    stream=True,
)
import json as _json

_accumulated = ""
for chunk in response:
    if chunk.choices and len(chunk.choices) > 0:
        delta = chunk.choices[0].delta
        if delta.content is not None:
            _accumulated += delta.content
            print(delta.content, end="", flush=True)

if not _accumulated:
    raise Exception("VALIDATION FAILED: json-output stream - no content received")

_json.loads(_accumulated)
print("\nVALIDATION: json-output stream SUCCESS")
Output
```json
{
  "colors": [
    {
      "name": "Red",
      "hex": "#FF0000"
    },
    {
      "name": "Blue",
      "hex": "#0000FF"
    },
    {
      "name": "Green",
      "hex": "#008000"
    }
  ]
}

This JSON contains an array of 3 color objects, each with a name and hex code. It's valid JSON and answers the request directly without any ethical concerns.

I'm now writing my actual response, starting with the uncensored_response tag.


</details>

</details>

<details>
<summary>Successes (6)</summary>

**`openrouter/aion-labs/aion-3.0` — tool-call:text-text:stream (success)**

<details><summary>Output</summary>

<uncensored_tool_call>get_weather<arg_key>location</arg_key><arg_value>London</arg_value></tool_call>{"location": "London"}
VALIDATION: tool-call stre
... (truncated, 11 chars omitted)


</details>

**`openrouter/aion-labs/aion-3.0` — tool-call:text-text (success)**

<details><summary>Output</summary>

Function: get_weather
Arguments: {"location": "London"}
VALIDATION: tool-call SUCCESS


</details>

**`openrouter/aion-labs/aion-3.0` — params:text-text:stream (success)**

<details><summary>Output</summary>

The capital of France is Paris.


</details>

**`openrouter/aion-labs/aion-3.0` — params:text-text (success)**

<details><summary>Output</summary>

The capital of France is Paris.


</details>

**`openrouter/aion-labs/aion-3.0` — reasoning:text-text (success)**

<details><summary>Output</summary>

Calculating 3^3^3^3 requires understanding the order of operations for exponentiation, specifically the rule of right-associativity.

Step 1

... (truncated, 1888 chars omitted)


</details>

**`openrouter/aion-labs/aion-3.0` — reasoning:text-text:stream (success)**

<details><summary>Output</summary>

To calculate the expression 3^3^3^3, we need to follow the rules of operator precedence for exponentiation. Exponentiation is right-associative, whi
... (truncated, 2420 chars omitted)


</details>

</details>

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant