mirror of
https://github.com/fawney19/Aether.git
synced 2026-09-03 09:50:21 +08:00
feat: add embedding and rerank support
This commit is contained in:
@@ -17,8 +17,14 @@ pub(crate) fn models_api_format(request_context: &GatewayPublicRequestContext) -
|
||||
"openai:responses" => Some("openai:responses"),
|
||||
"openai:responses:compact" => Some("openai:responses:compact"),
|
||||
"openai:image" => Some("openai:image"),
|
||||
"openai:embedding" => Some("openai:embedding"),
|
||||
"openai:rerank" => Some("openai:rerank"),
|
||||
"claude:messages" => Some("claude:messages"),
|
||||
"gemini:generate_content" => Some("gemini:generate_content"),
|
||||
"gemini:embedding" => Some("gemini:embedding"),
|
||||
"jina:embedding" => Some("jina:embedding"),
|
||||
"jina:rerank" => Some("jina:rerank"),
|
||||
"doubao:embedding" => Some("doubao:embedding"),
|
||||
_ => None,
|
||||
}
|
||||
}
|
||||
@@ -32,6 +38,14 @@ const MODELS_CROSS_FORMAT_QUERY_API_FORMATS: &[&str] = &[
|
||||
"gemini:generate_content",
|
||||
];
|
||||
|
||||
const MODELS_EMBEDDING_QUERY_API_FORMATS: &[&str] = &[
|
||||
"openai:embedding",
|
||||
"jina:embedding",
|
||||
"gemini:embedding",
|
||||
"doubao:embedding",
|
||||
];
|
||||
const MODELS_RERANK_QUERY_API_FORMATS: &[&str] = &["openai:rerank", "jina:rerank"];
|
||||
|
||||
pub(super) fn models_query_api_formats(api_format: &str) -> &'static [&'static str] {
|
||||
match crate::ai_serving::normalize_api_format_alias(api_format).as_str() {
|
||||
"openai:chat"
|
||||
@@ -40,6 +54,10 @@ pub(super) fn models_query_api_formats(api_format: &str) -> &'static [&'static s
|
||||
| "claude:messages"
|
||||
| "gemini:generate_content" => MODELS_CROSS_FORMAT_QUERY_API_FORMATS,
|
||||
"openai:image" => &["openai:image"],
|
||||
"openai:embedding" | "jina:embedding" | "gemini:embedding" | "doubao:embedding" => {
|
||||
MODELS_EMBEDDING_QUERY_API_FORMATS
|
||||
}
|
||||
"openai:rerank" | "jina:rerank" => MODELS_RERANK_QUERY_API_FORMATS,
|
||||
_ => &[],
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user