Compare commits
2 Commits
b9daf9d6bf
...
69789fbd87
| Author | SHA1 | Date | |
|---|---|---|---|
| 69789fbd87 | |||
| 5dedf5fa07 |
@@ -190,7 +190,6 @@ impl Shortcut {
|
|||||||
(P::OpenCode, "nemotron-3.5-super-vl-free".into()),
|
(P::OpenCode, "nemotron-3.5-super-vl-free".into()),
|
||||||
(P::Mistral, "mistral-medium-3.5".into()),
|
(P::Mistral, "mistral-medium-3.5".into()),
|
||||||
(P::Kilo, "inclusionai-ling-3-0-flash-free".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::Kilo, "inclusionai-ling-3-0-flash-vl-free".into()),
|
||||||
(P::OpenRouter, "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()),
|
(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::Kilo, "poolside-laguna-s-2-1-free".into()),
|
||||||
(P::OpenRouter, "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::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::OpenRouter, "inclusionai/ling-3.0-flash-fin:free".into()),
|
||||||
(P::VercelAiGateway, "inclusionai/ling-3.0-flash-fin".into()),
|
(P::VercelAiGateway, "inclusionai/ling-3.0-flash-fin".into()),
|
||||||
(P::NovitaAi, "inclusionai/ling-3.0-flash-sante".into()),
|
|
||||||
(
|
(
|
||||||
P::OpenRouter,
|
P::OpenRouter,
|
||||||
"inclusionai/ling-3.0-flash-sante:free".into(),
|
"inclusionai/ling-3.0-flash-sante:free".into(),
|
||||||
@@ -240,9 +237,11 @@ impl Shortcut {
|
|||||||
(P::NvidiaNim, "deepseek-ai/deepseek-v4.1-flash".into()),
|
(P::NvidiaNim, "deepseek-ai/deepseek-v4.1-flash".into()),
|
||||||
(P::HuggingFace, "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::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::OpenRouter, "minimax/minimax-m3.1-flash:free".into()),
|
||||||
(P::VercelAiGateway, "inclusionai/ling-3.1-flash".into()),
|
(P::VercelAiGateway, "inclusionai/ling-3.1-flash".into()),
|
||||||
(P::HuggingFace, "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::Ollama, "beam".into()),
|
||||||
(P::OpenCode, "beam-free".into()),
|
(P::OpenCode, "beam-free".into()),
|
||||||
(P::VercelAiGateway, "xiaomi/mimo-v2.6-flash".into()),
|
(P::VercelAiGateway, "xiaomi/mimo-v2.6-flash".into()),
|
||||||
@@ -270,6 +269,7 @@ impl Shortcut {
|
|||||||
(P::HuggingFace, "zai-org/GLM-5.3".into()),
|
(P::HuggingFace, "zai-org/GLM-5.3".into()),
|
||||||
(P::CloudflareWorkersAi, "@cf/zai-org/glm-5.3".into()),
|
(P::CloudflareWorkersAi, "@cf/zai-org/glm-5.3".into()),
|
||||||
(P::Mistral, "zai-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::OpenCode, "muse-spark-1.3-contributor-free".into()),
|
||||||
(P::NvidiaNim, "moonshotai/kimi-k3".into()),
|
(P::NvidiaNim, "moonshotai/kimi-k3".into()),
|
||||||
(P::HuggingFace, "moonshotai/Kimi-K3".into()),
|
(P::HuggingFace, "moonshotai/Kimi-K3".into()),
|
||||||
|
|||||||
@@ -63,6 +63,7 @@ enum Provider {
|
|||||||
Mistral,
|
Mistral,
|
||||||
NvidiaNim,
|
NvidiaNim,
|
||||||
OpenRouter,
|
OpenRouter,
|
||||||
|
VercelAiGateway,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Shortcut {
|
impl Shortcut {
|
||||||
@@ -72,9 +73,16 @@ impl Shortcut {
|
|||||||
|
|
||||||
match self {
|
match self {
|
||||||
S::CodestralEmbed2505 => vec![(P::Mistral, "codestral-embed-2505".into())],
|
S::CodestralEmbed2505 => vec![(P::Mistral, "codestral-embed-2505".into())],
|
||||||
S::CohereEmbedV4_0 => vec![(P::Cohere, "embed-v4.0".into())],
|
S::CohereEmbedV4_0 => vec![(P::Cohere, "embed-v4.0".into()),
|
||||||
S::CohereEmbedV5_0Fast => vec![(P::Cohere, "embed-v5.0-fast".into())],
|
(P::VercelAiGateway, "cohere/embed-v4.0".into())],
|
||||||
S::CohereEmbedV5_0Pro => vec![(P::Cohere, "embed-v5.0-pro".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::GeminiEmbedding2 => vec![(P::GoogleAiStudio, "gemini-embedding-2".into())],
|
||||||
S::Lfm2_5Embedding350M => {
|
S::Lfm2_5Embedding350M => {
|
||||||
vec![(P::OpenRouter, "liquid/lfm-2.5-embedding-350m:free".into())]
|
vec![(P::OpenRouter, "liquid/lfm-2.5-embedding-350m:free".into())]
|
||||||
@@ -201,6 +209,18 @@ pub async fn create_embeddings(
|
|||||||
.build()
|
.build()
|
||||||
})
|
})
|
||||||
.collect(),
|
.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) {
|
if let Ok(upstreams) = Vec1::try_from(upstreams) {
|
||||||
|
|||||||
@@ -33,6 +33,7 @@ pub struct V1SystemOnePath;
|
|||||||
pub enum Shortcut {
|
pub enum Shortcut {
|
||||||
S,
|
S,
|
||||||
M,
|
M,
|
||||||
|
L,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone)]
|
||||||
@@ -52,6 +53,7 @@ impl Shortcut {
|
|||||||
match self {
|
match self {
|
||||||
S::S => {
|
S::S => {
|
||||||
vec![
|
vec![
|
||||||
|
(P::VercelAiGateway, "perplexity/pplx-decider-flash-v1.2".into()),
|
||||||
(P::LiquidAi, "d1:free".into()),
|
(P::LiquidAi, "d1:free".into()),
|
||||||
(P::CloudflareWorkersAi, "clef-omni".into()),
|
(P::CloudflareWorkersAi, "clef-omni".into()),
|
||||||
(P::CloudflareWorkersAi, "clef-flash".into()),
|
(P::CloudflareWorkersAi, "clef-flash".into()),
|
||||||
@@ -65,10 +67,17 @@ impl Shortcut {
|
|||||||
S::M => {
|
S::M => {
|
||||||
vec![
|
vec![
|
||||||
(P::OpenCode, "jev-1.13-free".into()),
|
(P::OpenCode, "jev-1.13-free".into()),
|
||||||
|
(P::VercelAiGateway, "perplexity/pplx-decider-v1.2".into()),
|
||||||
(P::CloudflareWorkersAi, "clef".into()),
|
(P::CloudflareWorkersAi, "clef".into()),
|
||||||
(P::OpenRouter, "inception/mercury-decide:free".into()),
|
(P::OpenRouter, "inception/mercury-decide:free".into()),
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
S::L => {
|
||||||
|
vec![
|
||||||
|
(P::VercelAiGateway, "liquid/d1-ultra".into())
|
||||||
|
]
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user