Skip to content

Commit ec85e4d

Browse files
committed
✨ Model config now shows provider icon based on the base url of the models
🐛 Bugfix: optimize the model batch add logic to eliminate the name inconsistency (won't work for existing models) 🐛 Bugfix: knowledge base selection tag size abnormal
1 parent 0e73955 commit ec85e4d

File tree

18 files changed

+323
-155
lines changed

18 files changed

+323
-155
lines changed

backend/services/model_management_service.py

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121
from services.model_health_service import embedding_dimension_check
2222
from utils.model_name_utils import (
2323
add_repo_to_name,
24-
split_display_name,
2524
split_repo_name,
2625
sort_models_by_id,
2726
)
@@ -50,8 +49,10 @@ async def create_model_for_tenant(user_id: str, tenant_id: str, model_data: Dict
5049
model_data["model_name"] = model_name
5150

5251
if not model_data.get("display_name"):
53-
model_data["display_name"] = split_display_name(
54-
model_data.get("model_name", ""))
52+
model_data["display_name"] = add_repo_to_name(
53+
model_repo=model_data.get("model_repo", ""),
54+
model_name=model_data.get("model_name", "")
55+
)
5556

5657
# Use NOT_DETECTED status as default
5758
model_data["connect_status"] = model_data.get(
@@ -147,10 +148,12 @@ async def batch_create_models_for_tenant(user_id: str, tenant_id: str, batch_pay
147148
for model in model_list:
148149
_, model_name = split_repo_name(
149150
model["id"]) if model.get("id") else ("", "")
150-
model_display_name = split_display_name(model.get("id", ""))
151+
model_repo, model_name_only = split_repo_name(
152+
model.get("id", "")) if model.get("id") else ("", "")
153+
model_display_name = add_repo_to_name(model_repo, model_name_only)
151154
if model_name:
152155
existing_model_by_display = get_model_by_display_name(
153-
provider + "/" + model_display_name, tenant_id)
156+
model_display_name, tenant_id)
154157
if existing_model_by_display:
155158
# Check if max_tokens has changed
156159
existing_max_tokens = existing_model_by_display.get(

backend/services/model_provider_service.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
from consts.provider import SILICON_GET_URL, ProviderEnum
1010
from database.model_management_db import get_models_by_tenant_factory_type
1111
from services.model_health_service import embedding_dimension_check
12-
from utils.model_name_utils import split_repo_name, split_display_name
12+
from utils.model_name_utils import split_repo_name, add_repo_to_name
1313

1414
logger = logging.getLogger("model_provider_service")
1515

@@ -83,7 +83,7 @@ async def prepare_model_dict(provider: str, model: dict, model_url: str, model_a
8383

8484
# Split repo/name once so it can be reused multiple times.
8585
model_repo, model_name = split_repo_name(model["id"])
86-
model_display_name = split_display_name(model["id"])
86+
model_display_name = add_repo_to_name(model_repo, model_name)
8787

8888
# Build the canonical representation using the existing Pydantic schema for
8989
# consistency of validation and default handling.
@@ -93,7 +93,7 @@ async def prepare_model_dict(provider: str, model: dict, model_url: str, model_a
9393
model_type=model["model_type"],
9494
api_key=model_api_key,
9595
max_tokens=model["max_tokens"],
96-
display_name=f"{provider}/{model_display_name}"
96+
display_name=model_display_name
9797
)
9898

9999
model_dict = model_obj.model_dump()

frontend/app/[locale]/setup/knowledges/components/knowledge/KnowledgeBaseList.tsx

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -154,32 +154,34 @@ const KnowledgeBaseList: React.FC<KnowledgeBaseListProps> = ({
154154
{selectedIds.length > 0 && (
155155
<div className="flex flex-wrap gap-1.5 mt-2 mb-1">
156156
{selectedIds.map((id) => {
157-
const kb = knowledgeBases.find((kb) => kb.id === id)
157+
const kb = knowledgeBases.find((kb) => kb.id === id);
158158
return kb ? (
159159
<span
160160
key={id}
161-
className="inline-flex items-center justify-center bg-blue-100 text-blue-800 rounded text-[8px] font-medium group"
162-
style={{ maxWidth: 'fit-content', padding: '1px 3px' }}
161+
className="inline-flex items-center justify-center bg-blue-100 text-blue-800 rounded text-sm font-medium group"
162+
style={{ maxWidth: "fit-content", padding: "2px 6px" }}
163163
>
164164
<span
165165
className="truncate"
166166
style={{
167-
maxWidth: '150px',
168-
...KB_LAYOUT.KB_NAME_OVERFLOW
167+
maxWidth: "150px",
168+
...KB_LAYOUT.KB_NAME_OVERFLOW,
169169
}}
170170
title={kb.name}
171171
>
172172
{kb.name}
173173
</span>
174174
<button
175-
className="ml-1.5 text-blue-600 hover:text-blue-800 flex-shrink-0"
175+
className="ml-1.5 text-blue-600 hover:text-blue-800 flex-shrink-0 text-sm leading-none"
176176
onClick={() => onSelect(id)}
177-
aria-label={t('knowledgeBase.button.removeKb', { name: kb.name })}
177+
aria-label={t("knowledgeBase.button.removeKb", {
178+
name: kb.name,
179+
})}
178180
>
179181
×
180182
</button>
181183
</span>
182-
) : null
184+
) : null;
183185
})}
184186
</div>
185187
)}

frontend/app/[locale]/setup/models/components/model/ModelAddDialog.tsx

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -651,8 +651,8 @@ export const ModelAddDialog = ({ isOpen, onClose, onSuccess }: ModelAddDialogPro
651651
<div className="mt-2 ml-6 flex items-center">
652652
<span>{t('model.dialog.label.currentlySupported')}</span>
653653
{form.isBatchImport && (
654-
<Tooltip title="SiliconCloud">
655-
<img src="/siliconcloud-color.png" alt="SiliconCloud" className="h-4 ml-1.5" />
654+
<Tooltip title="SiliconFlow">
655+
<img src="/siliconflow.png" alt="SiliconFlow" className="h-4 ml-1.5" />
656656
</Tooltip>
657657
)}
658658
{form.type === 'llm' && !form.isBatchImport && (
@@ -661,13 +661,13 @@ export const ModelAddDialog = ({ isOpen, onClose, onSuccess }: ModelAddDialogPro
661661
<img src="/openai.png" alt="OpenAI" className="h-4 ml-1.5" />
662662
</Tooltip>
663663
<Tooltip title="Kimi">
664-
<img src="/kimi-color.png" alt="Kimi" className="h-4 ml-1.5" />
664+
<img src="/kimi.png" alt="Kimi" className="h-4 ml-1.5" />
665665
</Tooltip>
666666
<Tooltip title="Deepseek">
667-
<img src="/deepseek-color.png" alt="Deepseek" className="h-4 ml-1.5" />
667+
<img src="/deepseek.png" alt="Deepseek" className="h-4 ml-1.5" />
668668
</Tooltip>
669669
<Tooltip title="Qwen">
670-
<img src="/qwen-color.png" alt="Qwen" className="h-4 ml-1.5" />
670+
<img src="/qwen.png" alt="Qwen" className="h-4 ml-1.5" />
671671
</Tooltip>
672672
<span className="ml-1.5">...</span>
673673
</>
@@ -678,7 +678,7 @@ export const ModelAddDialog = ({ isOpen, onClose, onSuccess }: ModelAddDialogPro
678678
<img src="/openai.png" alt="OpenAI" className="h-4 ml-1.5" />
679679
</Tooltip>
680680
<Tooltip title="Qwen">
681-
<img src="/qwen-color.png" alt="Qwen" className="h-4 ml-1.5" />
681+
<img src="/qwen.png" alt="Qwen" className="h-4 ml-1.5" />
682682
</Tooltip>
683683
<Tooltip title="Jina">
684684
<img src="/jina.png" alt="Jina" className="h-4 ml-1.5" />
@@ -692,10 +692,10 @@ export const ModelAddDialog = ({ isOpen, onClose, onSuccess }: ModelAddDialogPro
692692
{form.type === 'vlm' && !form.isBatchImport && (
693693
<>
694694
<Tooltip title="Qwen">
695-
<img src="/qwen-color.png" alt="Qwen" className="h-4 ml-1.5" />
695+
<img src="/qwen.png" alt="Qwen" className="h-4 ml-1.5" />
696696
</Tooltip>
697697
<Tooltip title="Deepseek">
698-
<img src="/deepseek-color.png" alt="Deepseek" className="h-4 ml-1.5" />
698+
<img src="/deepseek.png" alt="Deepseek" className="h-4 ml-1.5" />
699699
</Tooltip>
700700
<span className="ml-1.5">...</span>
701701
</>

frontend/app/[locale]/setup/models/components/model/ModelDeleteDialog.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -211,8 +211,8 @@ export const ModelDeleteDialog = ({
211211
case MODEL_SOURCES.SILICON:
212212
return (
213213
<img
214-
src="/siliconcloud-color.png"
215-
alt="Silicon"
214+
src="/siliconflow.png"
215+
alt="SiliconFlow"
216216
className="w-5 h-5"
217217
/>
218218
);

0 commit comments

Comments
 (0)