diff --git a/src/components/markdown-viewer/index.less b/src/components/markdown-viewer/index.less index da9a6b6f..752071eb 100644 --- a/src/components/markdown-viewer/index.less +++ b/src/components/markdown-viewer/index.less @@ -118,6 +118,8 @@ img[src^="https://img.shields.io/"], img[src*="badge.svg"] { margin-bottom: 6px; + width: unset; + max-width: 100%; } video { diff --git a/src/locales/en-US/models.ts b/src/locales/en-US/models.ts index b6627fa3..33100acc 100644 --- a/src/locales/en-US/models.ts +++ b/src/locales/en-US/models.ts @@ -85,7 +85,7 @@ export default { 'models.form.backend.llamabox': 'For GGUF format models, supports Linux, macOS, and Windows.', 'models.form.backend.vllm': - 'For non-GGUF format models, supported only on Linux (amd64/x86_64).', + 'For non-GGUF format models, supported only on Linux.', 'models.form.backend.voxbox': 'For non-GGUF format audio models, supported only on NVIDIA GPUs and CPUs.', 'models.form.backend.mindie': diff --git a/src/locales/ja-JP/models.ts b/src/locales/ja-JP/models.ts index f85fe6a6..b7e829c6 100644 --- a/src/locales/ja-JP/models.ts +++ b/src/locales/ja-JP/models.ts @@ -83,8 +83,7 @@ export default { 'models.form.gpuselector': 'GPUセレクター', 'models.form.backend.llamabox': 'GGUF形式のモデル用(Linux、macOS、Windowsをサポート)。', - 'models.form.backend.vllm': - '非GGUF形式のモデル用。Linux(amd64/x86_64)のみ対応。', + 'models.form.backend.vllm': '非GGUF形式のモデル用。Linux のみ対応。', 'models.form.backend.voxbox': '非GGUF形式の音声モデル用。NVIDIA GPUおよびCPUのみ対応。', 'models.form.backend.mindie': diff --git a/src/locales/ru-RU/models.ts b/src/locales/ru-RU/models.ts index c658b4c1..35ddc2f9 100644 --- a/src/locales/ru-RU/models.ts +++ b/src/locales/ru-RU/models.ts @@ -85,7 +85,7 @@ export default { 'models.form.backend.llamabox': 'Для моделей формата GGUF. Поддержка Linux, macOS и Windows.', 'models.form.backend.vllm': - 'Для моделей не-GGUF формата, поддерживается только в Linux (amd64/x86_64).', + 'Для моделей не-GGUF формата, поддерживается только в Linux.', 'models.form.backend.voxbox': 'Для аудиомоделей не-GGUF формата, поддерживается только на GPU NVIDIA и CPU.', 'models.form.backend.mindie': diff --git a/src/locales/zh-CN/models.ts b/src/locales/zh-CN/models.ts index a265580e..1ceb662e 100644 --- a/src/locales/zh-CN/models.ts +++ b/src/locales/zh-CN/models.ts @@ -83,8 +83,7 @@ export default { 'models.form.gpuselector': 'GPU 选择器', 'models.form.backend.llamabox': '用于 GGUF 格式模型,支持 Linux, macOS 和 Windows。', - 'models.form.backend.vllm': - '用于非 GGUF 格式模型,仅支持 x86 Linux(amd64/x86_64)。', + 'models.form.backend.vllm': '用于非 GGUF 格式模型,仅支持 Linux。', 'models.form.backend.voxbox': '用于非 GGUF 格式的语音模型,仅支持 NVIDIA GPU 与 CPU。', 'models.form.backend.mindie': diff --git a/src/pages/llmodels/components/hf-model-file.tsx b/src/pages/llmodels/components/hf-model-file.tsx index ee8509dd..b3d73e8a 100644 --- a/src/pages/llmodels/components/hf-model-file.tsx +++ b/src/pages/llmodels/components/hf-model-file.tsx @@ -6,8 +6,6 @@ import { Empty, Select, Spin } from 'antd'; import _ from 'lodash'; import React, { forwardRef, - memo, - useCallback, useEffect, useImperativeHandle, useRef, @@ -119,7 +117,7 @@ const HFModelFile: React.FC = forwardRef((props, ref) => { } }; - const generateGroupByFilename = useCallback((list: any[]) => { + const generateGroupByFilename = (list: any[]) => { // general file const generalFileList = _.filter(list, (item: any) => { const parsed = parseFilename(item.path); @@ -163,7 +161,7 @@ const HFModelFile: React.FC = forwardRef((props, ref) => { ); return [...shardFileListResult, ...newGeneralFileList]; - }, []); + }; const hfFileFilter = (file: any) => { return filterRegGGUF.test(file.path) || _.includes(file.path, '.gguf'); @@ -228,7 +226,7 @@ const HFModelFile: React.FC = forwardRef((props, ref) => { } }; - const getEvaluateResults = useCallback(async (repoList: any[]) => { + const getEvaluateResults = async (repoList: any[]) => { try { checkTokenRef.current?.cancel?.(); checkTokenRef.current = createAxiosToken(); @@ -244,7 +242,7 @@ const HFModelFile: React.FC = forwardRef((props, ref) => { } catch (error) { return []; } - }, []); + }; const handleEvaluate = async (list: any[]) => { if (isDownload) { @@ -430,4 +428,4 @@ const HFModelFile: React.FC = forwardRef((props, ref) => { ); }); -export default memo(HFModelFile); +export default HFModelFile; diff --git a/src/pages/llmodels/components/model-card.tsx b/src/pages/llmodels/components/model-card.tsx index f74a476f..046b8573 100644 --- a/src/pages/llmodels/components/model-card.tsx +++ b/src/pages/llmodels/components/model-card.tsx @@ -5,7 +5,7 @@ import ThemeTag from '@/components/tags-wrapper/theme-tag'; import useRequestToken from '@/hooks/use-request-token'; import { DownOutlined, - FileTextOutlined, + FileMarkdownOutlined, RightOutlined } from '@ant-design/icons'; import { useIntl } from '@umijs/max'; @@ -49,7 +49,7 @@ const MarkDownTitle: React.FC<{ return ( - README.md + README.md {collapsed ? ( diff --git a/src/pages/resources/config/index.ts b/src/pages/resources/config/index.ts index da5fe8d5..fb780bdb 100644 --- a/src/pages/resources/config/index.ts +++ b/src/pages/resources/config/index.ts @@ -186,6 +186,27 @@ export const addWorkerGuide: Record = { --server-url ${params.server} --token ${params.token} --worker-ip ${params.workerip}`; } }, + corex: { + registerWorker(params: { + server: string; + tag: string; + token: string; + workerip: string; + }) { + return `docker run -d --name gpustack \\ + -v /lib/modules:/lib/modules \\ + -v /dev:/dev \\ + --privileged \\ + --cap-add=ALL \\ + --pid=host \\ + --restart=unless-stopped \\ + --network=host \\ + --ipc=host \\ + -v gpustack-data:/var/lib/gpustack \\ + gpustack/gpustack:${params.tag} \\ + --server-url ${params.server} --token ${params.token} --worker-ip ${params.workerip}`; + } + }, container: { getToken: 'docker exec -it ${gpustack_container_id} cat /var/lib/gpustack/token' @@ -198,6 +219,7 @@ export const containerInstallOptions = [ { label: 'Ascend CANN', value: 'npu' }, { label: 'Hygon DTK', value: 'dcu' }, { label: 'Moore Threads MUSA', value: 'musa' }, + { label: 'Iluvatar Corex', value: 'corex' }, { label: 'CPU', value: 'cpu' } ];