diff --git a/src/locales/en-US/models.ts b/src/locales/en-US/models.ts
index 308e015c..86639a85 100644
--- a/src/locales/en-US/models.ts
+++ b/src/locales/en-US/models.ts
@@ -90,11 +90,11 @@ export default {
'models.form.backend.llamabox':
'For GGUF format models, supports Linux, macOS, and Windows.',
'models.form.backend.vllm':
- 'Built-in support for NVIDIA, AMD, Ascend, Hygon, Iluvatar, and MetaX devices.',
+ 'Built-in support for NVIDIA, AMD, Ascend, Hygon, Moore Threads, Iluvatar, MetaX, T-Head PPU devices.',
'models.form.backend.voxbox': 'Only supports NVIDIA GPUs and CPUs.',
'models.form.backend.mindie': 'Only supports Ascend NPUs.',
'models.form.backend.sglang':
- 'Built-in support for NVIDIA/AMD GPUs and Ascend NPUs.',
+ 'Built-in support for NVIDIA, AMD, Ascend, Moore Threads, MetaX, T-Head PPU devices.',
'models.form.search.gguftips':
'If using macOS or Windows as a worker, check GGUF (uncheck for audio models).',
'models.form.button.addlabel': 'Add Label',
diff --git a/src/locales/en-US/routes.ts b/src/locales/en-US/routes.ts
index d235c83b..303e2e09 100644
--- a/src/locales/en-US/routes.ts
+++ b/src/locales/en-US/routes.ts
@@ -23,5 +23,7 @@ export default {
'routes.form.metadata.icons': 'Icon',
'routes.form.metadata.uploadIcon': 'Upload Icon',
'routes.form.fallback.warning':
- 'Changes to fallback route target take effect after one minute.'
+ 'Changes to fallback route target take effect after one minute.',
+ 'routes.form.weight.tips':
+ 'Default weight is 100. A higher value means higher priority.'
};
diff --git a/src/locales/ja-JP/models.ts b/src/locales/ja-JP/models.ts
index dc8d9354..13b21fa8 100644
--- a/src/locales/ja-JP/models.ts
+++ b/src/locales/ja-JP/models.ts
@@ -91,11 +91,11 @@ export default {
'models.form.backend.llamabox':
'GGUF形式のモデル用(Linux、macOS、Windowsをサポート)。',
'models.form.backend.vllm':
- 'Built-in support for NVIDIA, AMD, Ascend, Hygon, Iluvatar, and MetaX devices.',
+ 'Built-in support for NVIDIA, AMD, Ascend, Hygon, Moore Threads, Iluvatar, MetaX, T-Head PPU devices.',
'models.form.backend.voxbox': 'Only supports NVIDIA GPUs and CPUs.',
'models.form.backend.mindie': 'Only supports Ascend NPUs.',
'models.form.backend.sglang':
- 'Built-in support for NVIDIA/AMD GPUs and Ascend NPUs.',
+ 'Built-in support for NVIDIA, AMD, Ascend, Moore Threads, MetaX, T-Head PPU devices.',
'models.form.search.gguftips':
'macOSまたはWindowsをワーカーとして使用する場合、GGUFをチェックしてください(音声モデルの場合はオフにしてください)。',
'models.form.button.addlabel': 'ラベルを追加',
@@ -357,10 +357,10 @@ export default {
// 55. 'models.form.generic_proxy.button': 'Generic Proxy',
// 56. 'models.accessControlModal.includeusers': 'Include Users',
// 57. 'models.table.genericProxy': 'Use the following path prefix, and set the model name in either the X-GPUStack-Model request header or the model field in the request body. All requests under this path prefix will be forwarded to the inference backend.'
-// 58. 'models.form.backend.vllm': 'Built-in support for NVIDIA, AMD, Ascend, Hygon, Iluvatar, and MetaX devices.',
+// 58. 'models.form.backend.vllm': 'Built-in support for NVIDIA, AMD, Ascend, Hygon, Moore Threads, Iluvatar, MetaX, T-Head PPU devices.',
// 59. 'models.form.backend.voxbox': 'Only supports NVIDIA GPUs and CPUs.',
// 60. models.form.backend.mindie': 'Only supports Ascend NPUs.',
-// 61. 'models.form.backend.sglang': 'Built-in support for NVIDIA/AMD GPUs and Ascend NPUs.',
+// 61. 'models.form.backend.sglang': 'Built-in support for NVIDIA, AMD, Ascend, Moore Threads, MetaX, T-Head PPU devices.',
// 62. 'models.form.backend_parameters.vllm.tips': 'For more details about {backend} parameters, see here.',
// 63. 'models.button.accessSettings.tips': 'Changes to access settings take effect after one minute.',
// 64. 'models.table.userSelection.tips': 'Admin users can access all models by default.',
diff --git a/src/locales/ja-JP/routes.ts b/src/locales/ja-JP/routes.ts
index d235c83b..303e2e09 100644
--- a/src/locales/ja-JP/routes.ts
+++ b/src/locales/ja-JP/routes.ts
@@ -23,5 +23,7 @@ export default {
'routes.form.metadata.icons': 'Icon',
'routes.form.metadata.uploadIcon': 'Upload Icon',
'routes.form.fallback.warning':
- 'Changes to fallback route target take effect after one minute.'
+ 'Changes to fallback route target take effect after one minute.',
+ 'routes.form.weight.tips':
+ 'Default weight is 100. A higher value means higher priority.'
};
diff --git a/src/locales/ru-RU/models.ts b/src/locales/ru-RU/models.ts
index e7bdcc2a..97591147 100644
--- a/src/locales/ru-RU/models.ts
+++ b/src/locales/ru-RU/models.ts
@@ -92,11 +92,11 @@ export default {
'models.form.backend.llamabox':
'Для моделей формата GGUF. Поддержка Linux, macOS и Windows.',
'models.form.backend.vllm':
- 'Встроенная поддержка устройств NVIDIA, AMD, Ascend, Hygon, Iluvatar и MetaX.',
+ 'Built-in support for NVIDIA, AMD, Ascend, Hygon, Moore Threads, Iluvatar, MetaX, T-Head PPU devices.',
'models.form.backend.voxbox': 'Поддерживает только GPU NVIDIA и CPU.',
'models.form.backend.mindie': 'Поддерживает только Ascend NPU.',
'models.form.backend.sglang':
- 'Встроенная поддержка GPU NVIDIA/AMD и Ascend NPU.',
+ 'Built-in support for NVIDIA, AMD, Ascend, Moore Threads, MetaX, T-Head PPU devices.',
'models.form.search.gguftips':
'Для воркеров на macOS/Windows отметьте GGUF (для аудиомоделей снимите).',
'models.form.button.addlabel': 'Добавить метку',
@@ -292,4 +292,6 @@ export default {
// 3. 'models.table.instance.benchmark': 'Run Benchmark'
// 2. 'models.form.enableModelRoute': 'Enable Model Route',
// 3. 'models.form.enableModelRoute.tips': 'Enable Model Route',
+// 4. 'models.form.backend.vllm': 'Built-in support for NVIDIA, AMD, Ascend, Hygon, Moore Threads, Iluvatar, MetaX, T-Head PPU devices.',
+// 5. 'models.form.backend.sglang': 'Built-in support for NVIDIA, AMD, Ascend, Moore Threads, MetaX, T-Head PPU devices.',
// ========== End of To-Do List ==========
diff --git a/src/locales/ru-RU/routes.ts b/src/locales/ru-RU/routes.ts
index d235c83b..303e2e09 100644
--- a/src/locales/ru-RU/routes.ts
+++ b/src/locales/ru-RU/routes.ts
@@ -23,5 +23,7 @@ export default {
'routes.form.metadata.icons': 'Icon',
'routes.form.metadata.uploadIcon': 'Upload Icon',
'routes.form.fallback.warning':
- 'Changes to fallback route target take effect after one minute.'
+ 'Changes to fallback route target take effect after one minute.',
+ 'routes.form.weight.tips':
+ 'Default weight is 100. A higher value means higher priority.'
};
diff --git a/src/locales/zh-CN/models.ts b/src/locales/zh-CN/models.ts
index e1590670..be78ec8f 100644
--- a/src/locales/zh-CN/models.ts
+++ b/src/locales/zh-CN/models.ts
@@ -89,10 +89,11 @@ export default {
'models.form.backend.llamabox':
'用于 GGUF 格式模型,支持 Linux, macOS 和 Windows。',
'models.form.backend.vllm':
- '内置支持 NVIDIA、AMD、昇腾、海光、天数智芯和沐曦设备。',
+ '内置支持 NVIDIA、AMD、昇腾、海光、摩尔线程、天数智芯、沐曦和平头哥 PPU 设备。',
'models.form.backend.voxbox': '仅支持 NVIDIA GPU 和 CPU。',
'models.form.backend.mindie': '仅支持昇腾 NPU。',
- 'models.form.backend.sglang': '内置支持 NVIDIA/AMD GPU 和昇腾 NPU。',
+ 'models.form.backend.sglang':
+ '内置支持 NVIDIA、AMD、昇腾、摩尔线程、沐曦和平头哥 PPU 设备。',
'models.form.search.gguftips':
'当 macOS 或 Windows 作节点时勾选 GGUF(搜索语音模型时取消勾选)',
'models.form.button.addlabel': '添加标签',
diff --git a/src/locales/zh-CN/routes.ts b/src/locales/zh-CN/routes.ts
index 3c824d22..f92c0a8f 100644
--- a/src/locales/zh-CN/routes.ts
+++ b/src/locales/zh-CN/routes.ts
@@ -22,5 +22,6 @@ export default {
'routes.form.metadata.languages': '语言',
'routes.form.metadata.icons': '图标',
'routes.form.metadata.uploadIcon': '上传图标',
- 'routes.form.fallback.warning': 'Fallback 路由目标的更改将在一分钟后生效。'
+ 'routes.form.fallback.warning': 'Fallback 路由目标的更改将在一分钟后生效。',
+ 'routes.form.weight.tips': '权重默认值为 100,数值越大,优先级越高。'
};
diff --git a/src/pages/_components/doc-link.tsx b/src/pages/_components/doc-link.tsx
new file mode 100644
index 00000000..672f8f14
--- /dev/null
+++ b/src/pages/_components/doc-link.tsx
@@ -0,0 +1,38 @@
+import IconFont from '@/components/icon-font';
+import { useIntl } from '@umijs/max';
+import { Button } from 'antd';
+import React from 'react';
+import styled from 'styled-components';
+
+const Wrapper = styled.div`
+ display: flex;
+ align-items: center;
+ flex-wrap: wrap;
+ .title {
+ margin-right: 8px;
+ }
+`;
+
+const DocLink: React.FC<{
+ link: string;
+ title?: React.ReactNode;
+}> = ({ link, title }) => {
+ const intl = useIntl();
+ return (
+
+ {title && {title}}
+
+
+ );
+};
+
+export default DocLink;
diff --git a/src/pages/llmodels/config/index.ts b/src/pages/llmodels/config/index.ts
index 25d2d08d..c2863bfb 100644
--- a/src/pages/llmodels/config/index.ts
+++ b/src/pages/llmodels/config/index.ts
@@ -418,7 +418,7 @@ export const getBackendParamsTips = (backend: string) => {
return {
backend: 'Ascend MindIE',
releases: '',
- link: 'http://docs.gpustack.ai/latest/user-guide/inference-backends/#parameters-reference_2',
+ link: 'https://docs.gpustack.ai/latest/user-guide/built-in-inference-backends/?h=parameters+reference#parameters-reference_2',
version: '1.0.0'
};
}
diff --git a/src/pages/llmodels/forms/advance-config.tsx b/src/pages/llmodels/forms/advance-config.tsx
index cbac98a8..94be4fd2 100644
--- a/src/pages/llmodels/forms/advance-config.tsx
+++ b/src/pages/llmodels/forms/advance-config.tsx
@@ -2,6 +2,8 @@ import LabelSelector from '@/components/label-selector';
import CheckboxField from '@/components/seal-form/checkbox-field';
import SealSelect from '@/components/seal-form/seal-select';
import { PageAction } from '@/config';
+import DocLink from '@/pages/_components/doc-link';
+import { genericReferLink } from '@/pages/model-routes/config';
import { useIntl } from '@umijs/max';
import { Form } from 'antd';
import _ from 'lodash';
@@ -156,9 +158,14 @@ const AdvanceConfig = () => {
style={{ marginBottom: 8 }}
>
+ }
label={intl.formatMessage({
id: 'models.form.generic_proxy'
})}
diff --git a/src/pages/llmodels/forms/backend-parameters-list.tsx b/src/pages/llmodels/forms/backend-parameters-list.tsx
index 0fc8139a..8e71546c 100644
--- a/src/pages/llmodels/forms/backend-parameters-list.tsx
+++ b/src/pages/llmodels/forms/backend-parameters-list.tsx
@@ -59,11 +59,6 @@ const BackendParametersList: React.FC = () => {
description={
backendParamsTips.link && (
- {backend === backendOptionsMap.ascendMindie && (
-
- {intl.formatMessage({ id: 'models.backend.mindie.310p' })}
-
- )}
= (props) => {
required
description={intl.formatMessage(
{ id: 'models.form.replicas.tips' },
- { api: `${window.location.origin}/${GPUSTACK_API_BASE_URL}` }
+ { api: `${window.location.origin}/${OPENAI_COMPATIBLE}` }
)}
min={0}
>
diff --git a/src/pages/maas-provider/config/index.ts b/src/pages/maas-provider/config/index.ts
index d42b75ca..53773269 100644
--- a/src/pages/maas-provider/config/index.ts
+++ b/src/pages/maas-provider/config/index.ts
@@ -44,3 +44,6 @@ export const rowActionList = [
}
}
];
+
+export const referLinkZh = `https://higress.cn/docs/latest/plugins/ai/api-provider/ai-proxy/?spm=36971b57.3562eb7c.0.0.31764f5f7uLs2F#%E6%8F%90%E4%BE%9B%E5%95%86%E7%89%B9%E6%9C%89%E9%85%8D%E7%BD%AE`;
+export const referLinkEn = `https://higress.cn/en/docs/latest/plugins/ai/api-provider/ai-proxy/?spm=36971b57.4a688c53.0.0.64ac436ewz1xGA`;
diff --git a/src/pages/maas-provider/forms/advance-config.tsx b/src/pages/maas-provider/forms/advance-config.tsx
index 6d342ece..1707a395 100644
--- a/src/pages/maas-provider/forms/advance-config.tsx
+++ b/src/pages/maas-provider/forms/advance-config.tsx
@@ -5,12 +5,10 @@ import YamlEditor from '@/pages/_components/yaml-editor';
import { useIntl } from '@umijs/max';
import { Button, Form } from 'antd';
import React, { forwardRef, useImperativeHandle } from 'react';
+import { referLinkEn, referLinkZh } from '../config';
import APIKeys from './api-keys';
import ProxyConfig from './proxy-config';
-const referLinkZh = `https://higress.cn/docs/latest/plugins/ai/api-provider/ai-proxy/?spm=36971b57.3562eb7c.0.0.31764f5f7uLs2F#%E6%8F%90%E4%BE%9B%E5%95%86%E7%89%B9%E6%9C%89%E9%85%8D%E7%BD%AE`;
-const referLinkEn = `https://higress.cn/en/docs/latest/plugins/ai/api-provider/ai-proxy/?spm=36971b57.4a688c53.0.0.64ac436ewz1xGA`;
-
const AdvanceConfig: React.FC<{
action: PageActionType;
ref?: any;
diff --git a/src/pages/model-routes/config/index.ts b/src/pages/model-routes/config/index.ts
index ab61272b..90e6c3e6 100644
--- a/src/pages/model-routes/config/index.ts
+++ b/src/pages/model-routes/config/index.ts
@@ -48,3 +48,5 @@ export const rowActionList = [
}
}
];
+
+export const genericReferLink = `https://docs.gpustack.ai/latest/user-guide/model-deployment-management/#enable-generic-proxy`;
diff --git a/src/pages/model-routes/forms/basic.tsx b/src/pages/model-routes/forms/basic.tsx
index 646b3eea..abd1aaf4 100644
--- a/src/pages/model-routes/forms/basic.tsx
+++ b/src/pages/model-routes/forms/basic.tsx
@@ -2,9 +2,11 @@ import CheckboxField from '@/components/seal-form/checkbox-field';
import SealInput from '@/components/seal-form/seal-input';
import useAppUtils from '@/hooks/use-app-utils';
import CategorySelect from '@/pages/_components/category-select';
+import DocLink from '@/pages/_components/doc-link';
import { categoryOptions } from '@/pages/llmodels/config';
import { useIntl } from '@umijs/max';
import { Form } from 'antd';
+import { genericReferLink } from '../config';
import { FormData } from '../config/types';
const Basic = () => {
@@ -61,9 +63,14 @@ const Basic = () => {
style={{ marginBottom: 8 }}
>
+ }
label={intl.formatMessage({
id: 'models.form.generic_proxy'
})}
diff --git a/src/pages/model-routes/forms/index.tsx b/src/pages/model-routes/forms/index.tsx
index a23f306c..8c16fdec 100644
--- a/src/pages/model-routes/forms/index.tsx
+++ b/src/pages/model-routes/forms/index.tsx
@@ -4,8 +4,9 @@ import { PageActionType } from '@/config/types';
import CollapsePanel from '@/pages/_components/collapse-panel';
import { useWrapperContext } from '@/pages/_components/column-wrapper/use-wrapper-context';
import ScrollSpyTabs from '@/pages/_components/scroll-spy-tabs';
+import { QuestionCircleOutlined } from '@ant-design/icons';
import { useIntl } from '@umijs/max';
-import { Form } from 'antd';
+import { Flex, Form, Tooltip } from 'antd';
import _ from 'lodash';
import {
forwardRef,
@@ -194,7 +195,18 @@ const AccessForm: React.FC = forwardRef((props, ref) => {
items={[
{
key: TABKeysMap.TARGETS,
- label: intl.formatMessage({ id: 'routes.form.target.title' }),
+ label: (
+
+ {intl.formatMessage({ id: 'routes.form.target.title' })}
+
+
+
+
+ ),
forceRender: true,
children:
}
diff --git a/src/pages/model-routes/forms/targets.tsx b/src/pages/model-routes/forms/targets.tsx
index 98028e0b..b6897a51 100644
--- a/src/pages/model-routes/forms/targets.tsx
+++ b/src/pages/model-routes/forms/targets.tsx
@@ -216,22 +216,22 @@ const TargetsForm = forwardRef((props, ref) => {
if (data.providerType === 'deployments') {
return (
-
-
-
+
+
+
{intl.formatMessage({ id: 'menu.models.deployment' })}
-
-
+
+
);
}
return (
-
-
-
+
+
+
{data.label}
-
-
+
+
);
};