@@ -0,0 +1,63 @@
+{
+ "name": "Avian",
+ "id": "avian",
+ "type": "openai-compat",
+ "api_key": "$AVIAN_API_KEY",
+ "api_endpoint": "https://api.avian.io/v1",
+ "default_large_model_id": "moonshotai/kimi-k2.5",
+ "default_small_model_id": "deepseek/deepseek-v3.2",
+ "models": [
+ {
+ "id": "deepseek/deepseek-v3.2",
+ "name": "DeepSeek V3.2",
+ "cost_per_1m_in": 0.28,
+ "cost_per_1m_out": 0.42,
+ "cost_per_1m_in_cached": 0.014,
+ "cost_per_1m_out_cached": 0,
+ "context_window": 164000,
+ "default_max_tokens": 65000,
+ "can_reason": false,
+ "supports_attachments": false,
+ "options": {}
+ },
+ {
+ "id": "moonshotai/kimi-k2.5",
+ "name": "Kimi K2.5",
+ "cost_per_1m_in": 0.45,
+ "cost_per_1m_out": 2.2,
+ "cost_per_1m_in_cached": 0.225,
+ "cost_per_1m_out_cached": 0,
+ "context_window": 262000,
+ "default_max_tokens": 65536,
+ "can_reason": true,
+ "supports_attachments": false,
+ "options": {}
+ },
+ {
+ "id": "z-ai/glm-5",
+ "name": "GLM-5",
+ "cost_per_1m_in": 0.95,
+ "cost_per_1m_out": 2.55,
+ "cost_per_1m_in_cached": 0.2,
+ "cost_per_1m_out_cached": 0,
+ "context_window": 205000,
+ "default_max_tokens": 65536,
+ "can_reason": true,
+ "supports_attachments": false,
+ "options": {}
+ },
+ {
+ "id": "minimax/minimax-m2.5",
+ "name": "MiniMax M2.5",
+ "cost_per_1m_in": 0.3,
+ "cost_per_1m_out": 1.1,
+ "cost_per_1m_in_cached": 0.15,
+ "cost_per_1m_out_cached": 0,
+ "context_window": 200000,
+ "default_max_tokens": 131072,
+ "can_reason": false,
+ "supports_attachments": false,
+ "options": {}
+ }
+ ]
+}
@@ -87,6 +87,9 @@ var ioNetConfig []byte
//go:embed configs/qiniucloud.json
var qiniuCloudConfig []byte
+//go:embed configs/avian.json
+var avianConfig []byte
+
// ProviderFunc is a function that returns a Provider.
type ProviderFunc func() catwalk.Provider
@@ -117,6 +120,7 @@ var providerRegistry = []ProviderFunc{
miniMaxChinaProvider,
ioNetProvider,
qiniuCloudProvider,
+ avianProvider,
}
// GetAll returns all registered providers.
@@ -240,3 +244,7 @@ func ioNetProvider() catwalk.Provider {
func qiniuCloudProvider() catwalk.Provider {
return loadProviderFromConfig(qiniuCloudConfig)
}
+
+func avianProvider() catwalk.Provider {
+ return loadProviderFromConfig(avianConfig)
+}
@@ -46,6 +46,7 @@ const (
InferenceProviderMiniMaxChina InferenceProvider = "minimax-china"
InferenceProviderIoNet InferenceProvider = "ionet"
InferenceProviderQiniuCloud InferenceProvider = "qiniucloud"
+ InferenceProviderAvian InferenceProvider = "avian"
)
// Provider represents an AI provider configuration.
@@ -115,6 +116,7 @@ func KnownProviders() []InferenceProvider {
InferenceProviderMiniMax,
InferenceProviderMiniMaxChina,
InferenceProviderQiniuCloud,
+ InferenceProviderAvian,
}
}