|
|
@@ -1050,21 +1050,31 @@ class OpenAICompatService:
|
|
|
)
|
|
|
else:
|
|
|
# 云端模型处理
|
|
|
- api_url = "https://dashscope.aliyuncs.com/api/v1/services/embeddings/multimodal-embedding/multimodal-embedding"
|
|
|
+ # 根据模型类型选择端点:多模态 embedding vs 文本 embedding
|
|
|
+ is_multimodal = "multimodal" in model.model_code.lower()
|
|
|
+ if is_multimodal:
|
|
|
+ api_url = "https://dashscope.aliyuncs.com/api/v1/services/embeddings/multimodal-embedding/multimodal-embedding"
|
|
|
+ payload = {
|
|
|
+ "model": model.model_code,
|
|
|
+ "input": {
|
|
|
+ "texts": texts
|
|
|
+ },
|
|
|
+ "parameters": {
|
|
|
+ "text_type": "query"
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else:
|
|
|
+ api_url = "https://dashscope.aliyuncs.com/api/v1/services/embeddings/text-embedding/text-embedding"
|
|
|
+ payload = {
|
|
|
+ "model": model.model_code,
|
|
|
+ "input": texts
|
|
|
+ }
|
|
|
+ if request.dimensions:
|
|
|
+ payload["dimensions"] = request.dimensions
|
|
|
headers = {
|
|
|
"Content-Type": "application/json",
|
|
|
"Authorization": f"Bearer {effective_api_key}"
|
|
|
}
|
|
|
-
|
|
|
- payload = {
|
|
|
- "model": model.model_code,
|
|
|
- "input": {
|
|
|
- "texts": texts
|
|
|
- },
|
|
|
- "parameters": {
|
|
|
- "text_type": "query"
|
|
|
- }
|
|
|
- }
|
|
|
if request.dimensions:
|
|
|
payload["parameters"]["dimension"] = request.dimensions
|
|
|
|