Compare commits

..

2 Commits

Author SHA1 Message Date
69789fbd87 fix: remove models on novita that are no longer free 2026-10-19 16:16:10 -04:00
5dedf5fa07 feat: more models 2026-10-19 16:12:49 -04:00
3 changed files with 35 additions and 6 deletions

View File

@@ -190,7 +190,6 @@ impl Shortcut {
(P::OpenCode, "nemotron-3.5-super-vl-free".into()),
(P::Mistral, "mistral-medium-3.5".into()),
(P::Kilo, "inclusionai-ling-3-0-flash-free".into()),
(P::NovitaAi, "inclusionai/ling-3.0-flash-vl".into()),
(P::Kilo, "inclusionai-ling-3-0-flash-vl-free".into()),
(P::OpenRouter, "inclusionai/ling-3.0-flash-vl:free".into()),
(P::VercelAiGateway, "inclusionai/ling-3.0-flash-vl".into()),
@@ -199,10 +198,8 @@ impl Shortcut {
(P::Kilo, "poolside-laguna-s-2-1-free".into()),
(P::OpenRouter, "poolside/laguna-s-2.1:free".into()),
(P::VercelAiGateway, "stepfun/step-3.7-flash".into()),
(P::NovitaAi, "inclusionai/ling-3.0-flash-fin".into()),
(P::OpenRouter, "inclusionai/ling-3.0-flash-fin:free".into()),
(P::VercelAiGateway, "inclusionai/ling-3.0-flash-fin".into()),
(P::NovitaAi, "inclusionai/ling-3.0-flash-sante".into()),
(
P::OpenRouter,
"inclusionai/ling-3.0-flash-sante:free".into(),
@@ -240,9 +237,11 @@ impl Shortcut {
(P::NvidiaNim, "deepseek-ai/deepseek-v4.1-flash".into()),
(P::HuggingFace, "deepseek-ai/DeepSeek-V4.1-Flash".into()),
(P::OpenCode, "deepseek-v4.1-flash-free".into()),
(P::VercelAiGateway, "minimax/minimax-m3.1-flash".into()),
(P::OpenRouter, "minimax/minimax-m3.1-flash:free".into()),
(P::VercelAiGateway, "inclusionai/ling-3.1-flash".into()),
(P::HuggingFace, "inclusionAI/Ling-3.1-flash".into()),
(P::VercelAiGateway, "reflection/beam-free".into()),
(P::Ollama, "beam".into()),
(P::OpenCode, "beam-free".into()),
(P::VercelAiGateway, "xiaomi/mimo-v2.6-flash".into()),
@@ -270,6 +269,7 @@ impl Shortcut {
(P::HuggingFace, "zai-org/GLM-5.3".into()),
(P::CloudflareWorkersAi, "@cf/zai-org/glm-5.3".into()),
(P::Mistral, "zai-glm-5-3".into()),
(P::VercelAiGateway, "deepseek/deepseek-v4.1-flash-1017".into()),
(P::OpenCode, "muse-spark-1.3-contributor-free".into()),
(P::NvidiaNim, "moonshotai/kimi-k3".into()),
(P::HuggingFace, "moonshotai/Kimi-K3".into()),

View File

@@ -63,6 +63,7 @@ enum Provider {
Mistral,
NvidiaNim,
OpenRouter,
VercelAiGateway,
}
impl Shortcut {
@@ -72,9 +73,16 @@ impl Shortcut {
match self {
S::CodestralEmbed2505 => vec![(P::Mistral, "codestral-embed-2505".into())],
S::CohereEmbedV4_0 => vec![(P::Cohere, "embed-v4.0".into())],
S::CohereEmbedV5_0Fast => vec![(P::Cohere, "embed-v5.0-fast".into())],
S::CohereEmbedV5_0Pro => vec![(P::Cohere, "embed-v5.0-pro".into())],
S::CohereEmbedV4_0 => vec![(P::Cohere, "embed-v4.0".into()),
(P::VercelAiGateway, "cohere/embed-v4.0".into())],
S::CohereEmbedV5_0Fast => vec![
(P::Cohere, "embed-v5.0-fast".into()),
(P::VercelAiGateway, "cohere/embed-v5.0-fast".into()),
],
S::CohereEmbedV5_0Pro => vec![
(P::Cohere, "embed-v5.0-pro".into()),
(P::VercelAiGateway, "cohere/embed-v5.0-pro".into()),
],
S::GeminiEmbedding2 => vec![(P::GoogleAiStudio, "gemini-embedding-2".into())],
S::Lfm2_5Embedding350M => {
vec![(P::OpenRouter, "liquid/lfm-2.5-embedding-350m:free".into())]
@@ -201,6 +209,18 @@ pub async fn create_embeddings(
.build()
})
.collect(),
Provider::VercelAiGateway => state
.app_args
.vercel_ai_gateway_api_key
.iter()
.cloned()
.map(|api_key| {
Upstream::builder()
.url("https://ai-gateway.vercel.sh/v1/embeddings".parse().expect("TODO"))
.api_key(api_key)
.build()
})
.collect(),
};
if let Ok(upstreams) = Vec1::try_from(upstreams) {

View File

@@ -33,6 +33,7 @@ pub struct V1SystemOnePath;
pub enum Shortcut {
S,
M,
L,
}
#[derive(Debug, Clone)]
@@ -52,6 +53,7 @@ impl Shortcut {
match self {
S::S => {
vec![
(P::VercelAiGateway, "perplexity/pplx-decider-flash-v1.2".into()),
(P::LiquidAi, "d1:free".into()),
(P::CloudflareWorkersAi, "clef-omni".into()),
(P::CloudflareWorkersAi, "clef-flash".into()),
@@ -65,10 +67,17 @@ impl Shortcut {
S::M => {
vec![
(P::OpenCode, "jev-1.13-free".into()),
(P::VercelAiGateway, "perplexity/pplx-decider-v1.2".into()),
(P::CloudflareWorkersAi, "clef".into()),
(P::OpenRouter, "inception/mercury-decide:free".into()),
]
}
S::L => {
vec![
(P::VercelAiGateway, "liquid/d1-ultra".into())
]
}
}
}
}