chore: add iluvatar corex in add worker

This commit is contained in:
jialin
2025-07-04 15:42:03 +08:00
parent 5866634b3f
commit 28994cb9da
8 changed files with 35 additions and 15 deletions
@@ -118,6 +118,8 @@
img[src^="https://img.shields.io/"], img[src*="badge.svg"] img[src^="https://img.shields.io/"], img[src*="badge.svg"]
{ {
margin-bottom: 6px; margin-bottom: 6px;
width: unset;
max-width: 100%;
} }
video { video {
+1 -1
View File
@@ -85,7 +85,7 @@ export default {
'models.form.backend.llamabox': 'models.form.backend.llamabox':
'For GGUF format models, supports Linux, macOS, and Windows.', 'For GGUF format models, supports Linux, macOS, and Windows.',
'models.form.backend.vllm': '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': 'models.form.backend.voxbox':
'For non-GGUF format audio models, supported only on NVIDIA GPUs and CPUs.', 'For non-GGUF format audio models, supported only on NVIDIA GPUs and CPUs.',
'models.form.backend.mindie': 'models.form.backend.mindie':
+1 -2
View File
@@ -83,8 +83,7 @@ export default {
'models.form.gpuselector': 'GPUセレクター', 'models.form.gpuselector': 'GPUセレクター',
'models.form.backend.llamabox': 'models.form.backend.llamabox':
'GGUF形式のモデル用(Linux、macOS、Windowsをサポート)。', 'GGUF形式のモデル用(Linux、macOS、Windowsをサポート)。',
'models.form.backend.vllm': 'models.form.backend.vllm': '非GGUF形式のモデル用。Linux のみ対応。',
'非GGUF形式のモデル用。Linuxamd64/x86_64)のみ対応。',
'models.form.backend.voxbox': 'models.form.backend.voxbox':
'非GGUF形式の音声モデル用。NVIDIA GPUおよびCPUのみ対応。', '非GGUF形式の音声モデル用。NVIDIA GPUおよびCPUのみ対応。',
'models.form.backend.mindie': 'models.form.backend.mindie':
+1 -1
View File
@@ -85,7 +85,7 @@ export default {
'models.form.backend.llamabox': 'models.form.backend.llamabox':
'Для моделей формата GGUF. Поддержка Linux, macOS и Windows.', 'Для моделей формата GGUF. Поддержка Linux, macOS и Windows.',
'models.form.backend.vllm': 'models.form.backend.vllm':
'Для моделей не-GGUF формата, поддерживается только в Linux (amd64/x86_64).', 'Для моделей не-GGUF формата, поддерживается только в Linux.',
'models.form.backend.voxbox': 'models.form.backend.voxbox':
'Для аудиомоделей не-GGUF формата, поддерживается только на GPU NVIDIA и CPU.', 'Для аудиомоделей не-GGUF формата, поддерживается только на GPU NVIDIA и CPU.',
'models.form.backend.mindie': 'models.form.backend.mindie':
+1 -2
View File
@@ -83,8 +83,7 @@ export default {
'models.form.gpuselector': 'GPU 选择器', 'models.form.gpuselector': 'GPU 选择器',
'models.form.backend.llamabox': 'models.form.backend.llamabox':
'用于 GGUF 格式模型,支持 Linux, macOS 和 Windows。', '用于 GGUF 格式模型,支持 Linux, macOS 和 Windows。',
'models.form.backend.vllm': 'models.form.backend.vllm': '用于非 GGUF 格式模型,仅支持 Linux。',
'用于非 GGUF 格式模型,仅支持 x86 Linuxamd64/x86_64)。',
'models.form.backend.voxbox': 'models.form.backend.voxbox':
'用于非 GGUF 格式的语音模型,仅支持 NVIDIA GPU 与 CPU。', '用于非 GGUF 格式的语音模型,仅支持 NVIDIA GPU 与 CPU。',
'models.form.backend.mindie': 'models.form.backend.mindie':
@@ -6,8 +6,6 @@ import { Empty, Select, Spin } from 'antd';
import _ from 'lodash'; import _ from 'lodash';
import React, { import React, {
forwardRef, forwardRef,
memo,
useCallback,
useEffect, useEffect,
useImperativeHandle, useImperativeHandle,
useRef, useRef,
@@ -119,7 +117,7 @@ const HFModelFile: React.FC<HFModelFileProps> = forwardRef((props, ref) => {
} }
}; };
const generateGroupByFilename = useCallback((list: any[]) => { const generateGroupByFilename = (list: any[]) => {
// general file // general file
const generalFileList = _.filter(list, (item: any) => { const generalFileList = _.filter(list, (item: any) => {
const parsed = parseFilename(item.path); const parsed = parseFilename(item.path);
@@ -163,7 +161,7 @@ const HFModelFile: React.FC<HFModelFileProps> = forwardRef((props, ref) => {
); );
return [...shardFileListResult, ...newGeneralFileList]; return [...shardFileListResult, ...newGeneralFileList];
}, []); };
const hfFileFilter = (file: any) => { const hfFileFilter = (file: any) => {
return filterRegGGUF.test(file.path) || _.includes(file.path, '.gguf'); return filterRegGGUF.test(file.path) || _.includes(file.path, '.gguf');
@@ -228,7 +226,7 @@ const HFModelFile: React.FC<HFModelFileProps> = forwardRef((props, ref) => {
} }
}; };
const getEvaluateResults = useCallback(async (repoList: any[]) => { const getEvaluateResults = async (repoList: any[]) => {
try { try {
checkTokenRef.current?.cancel?.(); checkTokenRef.current?.cancel?.();
checkTokenRef.current = createAxiosToken(); checkTokenRef.current = createAxiosToken();
@@ -244,7 +242,7 @@ const HFModelFile: React.FC<HFModelFileProps> = forwardRef((props, ref) => {
} catch (error) { } catch (error) {
return []; return [];
} }
}, []); };
const handleEvaluate = async (list: any[]) => { const handleEvaluate = async (list: any[]) => {
if (isDownload) { if (isDownload) {
@@ -430,4 +428,4 @@ const HFModelFile: React.FC<HFModelFileProps> = forwardRef((props, ref) => {
); );
}); });
export default memo(HFModelFile); export default HFModelFile;
+2 -2
View File
@@ -5,7 +5,7 @@ import ThemeTag from '@/components/tags-wrapper/theme-tag';
import useRequestToken from '@/hooks/use-request-token'; import useRequestToken from '@/hooks/use-request-token';
import { import {
DownOutlined, DownOutlined,
FileTextOutlined, FileMarkdownOutlined,
RightOutlined RightOutlined
} from '@ant-design/icons'; } from '@ant-design/icons';
import { useIntl } from '@umijs/max'; import { useIntl } from '@umijs/max';
@@ -49,7 +49,7 @@ const MarkDownTitle: React.FC<{
return ( return (
<MkdTitle onClick={onCollapse}> <MkdTitle onClick={onCollapse}>
<span> <span>
<FileTextOutlined className="m-r-2 text-tertiary" /> README.md <FileMarkdownOutlined className="m-r-2 text-tertiary" /> README.md
</span> </span>
<span> <span>
{collapsed ? ( {collapsed ? (
+22
View File
@@ -186,6 +186,27 @@ export const addWorkerGuide: Record<string, any> = {
--server-url ${params.server} --token ${params.token} --worker-ip ${params.workerip}`; --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: { container: {
getToken: getToken:
'docker exec -it ${gpustack_container_id} cat /var/lib/gpustack/token' 'docker exec -it ${gpustack_container_id} cat /var/lib/gpustack/token'
@@ -198,6 +219,7 @@ export const containerInstallOptions = [
{ label: 'Ascend CANN', value: 'npu' }, { label: 'Ascend CANN', value: 'npu' },
{ label: 'Hygon DTK', value: 'dcu' }, { label: 'Hygon DTK', value: 'dcu' },
{ label: 'Moore Threads MUSA', value: 'musa' }, { label: 'Moore Threads MUSA', value: 'musa' },
{ label: 'Iluvatar Corex', value: 'corex' },
{ label: 'CPU', value: 'cpu' } { label: 'CPU', value: 'cpu' }
]; ];