feat: add Avian as a new LLM provider#10871
feat: add Avian as a new LLM provider#10871avianion wants to merge 8 commits intocontinuedev:mainfrom
Conversation
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.
|
All contributors have signed the CLA ✍️ ✅ |
There was a problem hiding this comment.
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-aiwith guidance or docs links (includingllms.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.
|
I have read the CLA Document and I hereby sign the CLA |
|
Fixed the trailing slash issue flagged by cubic-dev — updated base URL to |
|
Friendly follow-up — this PR is still active and ready for review. Would appreciate a look when you get a chance! cc @sestinj |
|
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 |
|
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>
|
Merged latest upstream main to resolve merge conflicts. Kept both Avian and new Tensorix provider in autodetect.ts. |
RomneyDa
left a comment
There was a problem hiding this comment.
@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?
- 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>
|
Addressed feedback in d7f2f57:
|
|
@RomneyDa All feedback has been addressed in commit d7f2f57 — added |
|
Hi @RomneyDa, just wanted to flag that all the feedback from your review has been addressed in commit d7f2f57:
The trailing slash on the base URL ( Would you mind taking another look when you get a chance? Thanks! |
|
@RomneyDa All your feedback has been addressed in commit d7f2f57:
Could you re-review when you get a chance? Thank you! |
- Add "avian" to provider enums in config-types, control-plane schema, and VS Code config_schema.json (with apiKey requirement + description) - Fix missing trailing slash in Avian LLM class apiBase, which caused new URL() to resolve endpoints incorrectly (e.g. /chat/completions instead of /v1/chat/completions) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
Addressed the remaining review feedback: Fixes in this update (a2f4b86):
Previously addressed (d7f2f57, f3345db):
CI note: The 7 failing "Continuous AI" checks all show "Agent encountered an error" — these are automated AI agent tasks on hub.continue.dev that appear to be experiencing internal errors, not issues caused by this PR's code changes. All actual CI checks (build, test, lint, prettier, core-checks, gui-checks, packages-checks, e2e tests) are passing. |
Summary
Adds Avian as a new OpenAI-compatible LLM provider. Avian provides fast inference for top open-source models.
Available Models
Changes (13 files)
core/llm/llms/Avian.tscore/llm/llms/index.tscore/llm/autodetect.tscore/llm/toolSupport.tspackages/openai-adapters/src/types.tspackages/openai-adapters/src/index.tspackages/llm-info/src/providers/avian.tspackages/llm-info/src/index.tsgui/src/pages/AddNewModel/configs/models.tsgui/src/pages/AddNewModel/configs/providers.tsgui/public/logos/avian.pngdocs/customize/model-providers/more/avian.mdxdocs/docs.jsonUsage
Test plan
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-infometadata, schema/VS Code config support, and autodetect templating.New Features
avianathttps://api.avian.io/v1/(fixed trailing-slash base URL); added LLM class andllm-infoprovider.Migration
AVIAN_API_KEYor enter it in the UI.provider: "avian"(e.g.,deepseek/deepseek-v3.2).Written for commit a2f4b86. Summary will update on new commits.