Skip to content

feat: add Avian as a new LLM provider#10871

Open
avianion wants to merge 7 commits intocontinuedev:mainfrom
avianion:feat/add-avian-provider
Open

feat: add Avian as a new LLM provider#10871
avianion wants to merge 7 commits intocontinuedev:mainfrom
avianion:feat/add-avian-provider

Conversation

@avianion
Copy link

@avianion avianion commented Feb 27, 2026

Summary

Adds Avian as a new OpenAI-compatible LLM provider. Avian provides fast inference for top open-source models.

Available Models

Model Context Input $/M Output $/M
DeepSeek V3.2 164K $0.26 $0.38
Kimi K2.5 131K $0.45 $2.20
GLM-5 131K $0.30 $2.55
MiniMax M2.5 1M $0.30 $1.10

Changes (13 files)

File Change
core/llm/llms/Avian.ts New provider class extending OpenAI (13 lines)
core/llm/llms/index.ts Register in LLMClasses array
core/llm/autodetect.ts Add to PROVIDER_HANDLES_TEMPLATING
core/llm/toolSupport.ts Add tool support for avian models
packages/openai-adapters/src/types.ts Add z.literal("avian") to Zod schema
packages/openai-adapters/src/index.ts Add case "avian" to constructLlmApi
packages/llm-info/src/providers/avian.ts Model metadata (context lengths, regex)
packages/llm-info/src/index.ts Register in allModelProviders
gui/src/pages/AddNewModel/configs/models.ts 4 model packages
gui/src/pages/AddNewModel/configs/providers.ts Provider card with API key input
gui/public/logos/avian.png Provider logo (placeholder — will replace with official)
docs/customize/model-providers/more/avian.mdx Docs page with YAML/JSON config examples
docs/docs.json Sidebar nav entry

Usage

models:
  - model: deepseek/deepseek-v3.2
    provider: avian
    apiKey: <AVIAN_API_KEY>

Test plan

  • Provider appears in "Add New Model" UI
  • API key can be entered and saved
  • All 4 models are listed in model selector
  • Chat completions work with each model
  • Streaming works correctly
  • Tool/function calling works

cc @RomneyDa @sestinj — follows the same pattern as the z.AI provider PR (#10638). Happy to address any feedback!


Continue Tasks: ❌ 7 failed — View all


Summary by cubic

Add Avian as an OpenAI-compatible provider with streaming, tool calling, image support, and parallel generation for DeepSeek V3.2, Kimi K2.5, GLM-5, and MiniMax M2.5. Includes UI, docs, llm-info metadata, autodetect templating, and a normalized adapter base URL (https://api.avian.io/v1/).

  • New Features

    • OpenAI adapter for avian at https://api.avian.io/v1/; added LLM class and llm-info provider.
    • Enabled tool/function calling, image support, and parallel generation for supported models.
    • Provider card with API key input and official logo; four model packages in Add New Model.
    • Docs page and sidebar entry for configuration.
  • Migration

    • Set AVIAN_API_KEY or enter it in the UI.
    • Configure models with provider: "avian" (e.g., deepseek/deepseek-v3.2).

Written for commit 2ef98a3. Summary will update on new commits.

Add Avian (https://api.avian.io/v1) as an OpenAI-compatible provider
with support for DeepSeek V3.2, Kimi K2.5, GLM-5, and MiniMax M2.5
models. Auth via AVIAN_API_KEY environment variable.
@avianion avianion requested a review from a team as a code owner February 27, 2026 02:08
@avianion avianion requested review from Patrick-Erichsen and removed request for a team February 27, 2026 02:08
@dosubot dosubot bot added the size:L This PR changes 100-499 lines, ignoring generated files. label Feb 27, 2026
@github-actions
Copy link
Contributor

github-actions bot commented Feb 27, 2026

All contributors have signed the CLA ✍️ ✅
Posted by the CLA Assistant Lite bot.

Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 issue found across 13 files

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="packages/openai-adapters/src/index.ts">

<violation number="1" location="packages/openai-adapters/src/index.ts:107">
P2: Inconsistent trailing slash in Avian base URL - should use `/v1/` to match other providers and prevent endpoint resolution issues</violation>
</file>

Since this is your first cubic review, here's how it works:

  • cubic automatically reviews your code and comments on bugs and improvements
  • Teach cubic by replying to its comments. cubic learns from your replies and gets better over time
  • Add one-off context when rerunning by tagging @cubic-dev-ai with guidance or docs links (including llms.txt)
  • Ask questions if you need clarification on any suggestion

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

@avianion
Copy link
Author

I have read the CLA Document and I hereby sign the CLA

@avianion
Copy link
Author

Fixed the trailing slash issue flagged by cubic-dev — updated base URL to https://api.avian.io/v1/ for consistency with other providers (f3345db).

@avianion
Copy link
Author

avianion commented Mar 5, 2026

Friendly follow-up — this PR is still active and ready for review. Would appreciate a look when you get a chance! cc @sestinj

@avianion
Copy link
Author

avianion commented Mar 5, 2026

Friendly follow-up — this PR is still active and ready for review. All feedback has been addressed. Would appreciate a look when you get a chance! cc @sestinj

@avianion
Copy link
Author

avianion commented Mar 5, 2026

Hey @sestinj @RomneyDa — friendly follow-up on this PR. Avian is an OpenAI-compatible inference provider that's already live and powering apps like ISEKAI ZERO. This is a lightweight integration (standard OpenAI-compatible endpoint) and we're happy to address any feedback or make adjustments. Would love to get this merged if you have a moment to review. Thanks!

…an and tensorix)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@avianion
Copy link
Author

Merged latest upstream main to resolve merge conflicts. Kept both Avian and new Tensorix provider in autodetect.ts.

Copy link
Collaborator

@RomneyDa RomneyDa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@avianion can you check PROVIDER_HANDLES_TEMPLATING, PROVIDER_SUPPORTS_IMAGES, and other fields which will cause issues here? Look up e.g. "nebius" to see where needs to be added.

Also, looks like the logo might be just a green square?

@github-project-automation github-project-automation bot moved this from Todo to In Progress in Issues and PRs Mar 24, 2026
- Add "avian" to PROVIDER_SUPPORTS_IMAGES (enables image support for vision models)
- Add "avian" to PARALLEL_PROVIDERS (enables parallel generation)
- Replace placeholder logo (32x32 green square) with proper Avian logomark (512x512)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@avianion
Copy link
Author

Addressed feedback in d7f2f57:

  • Added avian to PROVIDER_SUPPORTS_IMAGES (enables image support for vision-capable models)
  • Added avian to PARALLEL_PROVIDERS (enables parallel generation)
  • Replaced the placeholder logo (was a 32x32 green square) with the proper Avian logomark (512x512, RGBA)

PROVIDER_HANDLES_TEMPLATING already had avian (line 75). Let me know if anything else needs attention!

@avianion
Copy link
Author

@RomneyDa All feedback has been addressed in commit d7f2f57 — added avian to PROVIDER_SUPPORTS_IMAGES and PARALLEL_PROVIDERS, confirmed PROVIDER_HANDLES_TEMPLATING already included it, and replaced the placeholder logo with the proper Avian logomark (512×512). Could you re-review when you get a chance? Thanks!

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

Labels

size:L This PR changes 100-499 lines, ignoring generated files.

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

2 participants