Add CUDA Graph inference acceleration support

This commit is contained in:
RVC-Boss
2026-07-20 22:34:58 +08:00
parent f748ba4c48
commit b3f54df1be
26 changed files with 735 additions and 181 deletions

View File

@@ -1,5 +1,5 @@
{
"人声提取激进程度": "Vocal extraction aggressiveness",
{
"人声提取激进程度": "Vocal extraction aggressiveness",
"%s → 成功": "%s → Success",
"%s运行中请先停止该任务": "%s is running; stop it before starting another task",
"%s进程已终止": "The %s process has been terminated",
@@ -49,8 +49,8 @@
"[索引训练][失败] 聚类失败,将使用原始特征继续\n%s": "[Index training][Failed] Clustering failed; continuing with the original features\n%s",
"[索引训练][失败] 请先进行特征提取": "[Index training][Failed] Extract features first",
"ckpt处理": "ckpt Processing",
"index文件路径不可包含中文": "The index file path cannot contain Chinese characters",
"pth文件路径不可包含中文": "The .pth file path cannot contain Chinese characters",
"index文件路径不可包含中文": "The index file path cannot contain Chinese characters",
"pth文件路径不可包含中文": "The .pth file path cannot contain Chinese characters",
"rmvpe卡号配置以-分隔输入使用的不同进程卡号,例如0-0-1使用在卡0上跑2个进程并在卡1上跑1个进程": "Enter the GPU index(es) separated by '-', e.g., 0-0-1 to use 2 processes in GPU0 and 1 process in GPU1",
"step1: 填写实验配置. 实验数据放在logs下, 每个实验一个文件夹, 需手工输入实验名路径, 内含实验配置, 日志, 训练得到的模型文件. ": "Step 1: Fill in the experimental configuration. Experimental data is stored in the 'logs' folder, with each experiment having a separate folder. Manually enter the experiment name path, which contains the experimental configuration, logs, and trained model files.",
"step1:正在处理数据": "Step 1: Processing data",
@@ -71,8 +71,8 @@
"任务": "Task",
"伴奏人声分离&去混响&去回声": "Vocals/Accompaniment Separation & Reverberation Removal",
"使用显卡:%s": "GPUs in use: %s",
"使用模型采样率": "Use model sample rate",
"使用设备采样率": "Use device sample rate",
"使用模型采样率": "Use model sample rate",
"使用设备采样率": "Use device sample rate",
"保存名": "Save name:",
"保存的文件名, 默认空为和源文件同名": "Save file name (default: same as the source file):",
"保存的模型名不带后缀": "Saved model name (without extension):",
@@ -177,7 +177,7 @@
"特征": "Features",
"特征提取": "Feature extraction",
"状态": "Status",
"独占 WASAPI 设备": "Exclusive WASAPI device",
"独占 WASAPI 设备": "Exclusive WASAPI device",
"生成器预训练模型不存在将不使用assets/pretrained%s/%sG%s.pth": "Generator pretrained model not found; it will not be used: assets/pretrained%s/%sG%s.pth",
"男转女推荐+12key, 女转男推荐-12key, 如果音域爆炸导致音色失真也可以自己调整到合适音域. ": "Recommended +12 key for male to female conversion, and -12 key for female to male conversion. If the sound range goes too far and the voice is distorted, you can also adjust it to the appropriate range by yourself.",
"目标采样率": "Target sample rate:",
@@ -202,7 +202,7 @@
"训练结束, 您可查看控制台训练日志或实验文件夹下的train.log": "Training complete. You can check the training logs in the console or the 'train.log' file under the experiment folder.",
"训练设备规则选择的精度:%s": "Training precision selected by device rules: %s",
"训练轮次:{} [{:.0f}%]": "Training epoch: {} [{:.0f}%]",
"设备类型": "Device type",
"设备类型": "Device type",
"请上传音频文件": "Upload an audio file",
"请填写输出文件夹路径": "Enter the output folder path",
"请指定说话人id": "Please specify the speaker/singer ID:",
@@ -233,7 +233,7 @@
"选择模型": "Select model",
"选择索引": "Select index",
"选择音高提取算法": "Select the pitch extraction algorithm",
"采样率:": "Sample rate:",
"采样率:": "Sample rate:",
"采样长度": "Sample length",
"重载设备列表": "Reload device list",
"错误信息:%s": "Error details: %s",
@@ -257,5 +257,7 @@
"[索引训练] 外部索引链接已存在:%s": "[Index training] External index link already exists: %s",
"[索引训练][跳过] added索引已存在%s": "[Index training][Skipped] added index already exists: %s",
"[索引训练][跳过] trained索引已存在%s": "[Index training][Skipped] trained index already exists: %s",
"当前设备:%s | 推理精度:%s": "Current device: %s | Inference precision: %s"
"当前设备:%s | 推理精度:%s": "Current device: %s | Inference precision: %s",
"正在预热CUDA Graph": "Warming up CUDA Graph",
"CUDA Graph预热完成": "CUDA Graph warm-up complete"
}

View File

@@ -1,5 +1,5 @@
{
"人声提取激进程度": "Intensidad de extracción vocal",
{
"人声提取激进程度": "Intensidad de extracción vocal",
"%s → 成功": "%s → Éxito",
"%s运行中请先停止该任务": "%s está en ejecución; deténgalo antes de iniciar otra tarea",
"%s进程已终止": "El proceso %s ha finalizado",
@@ -257,5 +257,7 @@
"[索引训练] 外部索引链接已存在:%s": "[Entrenamiento de índice] El enlace externo ya existe: %s",
"[索引训练][跳过] added索引已存在%s": "[Entrenamiento de índice][Omitido] El índice added ya existe: %s",
"[索引训练][跳过] trained索引已存在%s": "[Entrenamiento de índice][Omitido] El índice trained ya existe: %s",
"当前设备:%s | 推理精度:%s": "Dispositivo actual: %s | Precisión de inferencia: %s"
"当前设备:%s | 推理精度:%s": "Dispositivo actual: %s | Precisión de inferencia: %s",
"正在预热CUDA Graph": "Preparando CUDA Graph",
"CUDA Graph预热完成": "Preparación de CUDA Graph completada"
}

View File

@@ -1,5 +1,5 @@
{
"人声提取激进程度": "Intensité de lextraction vocale",
{
"人声提取激进程度": "Intensité de lextraction vocale",
"%s → 成功": "%s → Réussite",
"%s运行中请先停止该任务": "%s est en cours ; arrêtez cette tâche avant d'en démarrer une autre",
"%s进程已终止": "Le processus %s a été arrêté",
@@ -257,5 +257,7 @@
"[索引训练] 外部索引链接已存在:%s": "[Entraînement de lindex] Le lien externe existe déjà : %s",
"[索引训练][跳过] added索引已存在%s": "[Entraînement de lindex][Ignoré] Lindex added existe déjà : %s",
"[索引训练][跳过] trained索引已存在%s": "[Entraînement de lindex][Ignoré] Lindex trained existe déjà : %s",
"当前设备:%s | 推理精度:%s": "Périphérique actuel : %s | Précision dinférence : %s"
"当前设备:%s | 推理精度:%s": "Périphérique actuel : %s | Précision dinférence : %s",
"正在预热CUDA Graph": "Préchauffage de CUDA Graph",
"CUDA Graph预热完成": "Préchauffage de CUDA Graph terminé"
}

View File

@@ -1,5 +1,5 @@
{
"人声提取激进程度": "Intensità dell'estrazione vocale",
{
"人声提取激进程度": "Intensità dell'estrazione vocale",
"%s → 成功": "%s → Successo",
"%s运行中请先停止该任务": "%s è in esecuzione; interromperlo prima di avviare un'altra attività",
"%s进程已终止": "Il processo %s è stato terminato",
@@ -54,7 +54,7 @@
"rmvpe卡号配置以-分隔输入使用的不同进程卡号,例如0-0-1使用在卡0上跑2个进程并在卡1上跑1个进程": "Configurazione GPU RMVPE separata da trattini; ad esempio 0-0-1 avvia due processi sulla GPU 0 e uno sulla GPU 1",
"step1: 填写实验配置. 实验数据放在logs下, 每个实验一个文件夹, 需手工输入实验名路径, 内含实验配置, 日志, 训练得到的模型文件. ": "Passaggio 1: compilare la configurazione sperimentale. ",
"step1:正在处理数据": "Passaggio 1: elaborazione dei dati",
"step2:正在提取音高&正在提取特征": "step2:Estrazione dell'intonazione e delle caratteristiche",
"step2:正在提取音高&正在提取特征": "step2:Estrazione dell'intonazione e delle caratteristiche",
"step2a: 自动遍历训练文件夹下所有可解码成音频的文件并进行切片归一化, 在实验目录下生成2个wav文件夹; 暂时只支持单人训练. ": "Passaggio 2a: attraversa automaticamente tutti i file nella cartella di addestramento che possono essere decodificati in audio ed esegui la normalizzazione delle sezioni. ",
"step2b: 使用CPU提取音高(如果模型带音高), 使用GPU提取特征(选择卡号)": "Passaggio 2b: utilizzare la CPU per estrarre il tono (se il modello ha il tono), utilizzare la GPU per estrarre le caratteristiche (selezionare l'indice GPU):",
"step3: 填写训练设置, 开始训练模型和索引": "Passaggio 3: compilare le impostazioni di addestramento e avviare l'addestramento del modello e dell'indice",
@@ -257,5 +257,7 @@
"[索引训练] 外部索引链接已存在:%s": "[Addestramento indice] Il collegamento esterno esiste già: %s",
"[索引训练][跳过] added索引已存在%s": "[Addestramento indice][Saltato] Lindice added esiste già: %s",
"[索引训练][跳过] trained索引已存在%s": "[Addestramento indice][Saltato] Lindice trained esiste già: %s",
"当前设备:%s | 推理精度:%s": "Dispositivo corrente: %s | Precisione di inferenza: %s"
"当前设备:%s | 推理精度:%s": "Dispositivo corrente: %s | Precisione di inferenza: %s",
"正在预热CUDA Graph": "Riscaldamento di CUDA Graph",
"CUDA Graph预热完成": "Riscaldamento di CUDA Graph completato"
}

View File

@@ -1,5 +1,5 @@
{
"人声提取激进程度": "ボーカル抽出の強度",
{
"人声提取激进程度": "ボーカル抽出の強度",
"%s → 成功": "%s → 成功",
"%s运行中请先停止该任务": "%sを実行中です。先に停止してください",
"%s进程已终止": "%sプロセスを終了しました",
@@ -257,5 +257,7 @@
"[索引训练] 外部索引链接已存在:%s": "[インデックス学習] 外部インデックスリンクは既に存在します:%s",
"[索引训练][跳过] added索引已存在%s": "[インデックス学習][スキップ] addedインデックスは既に存在します%s",
"[索引训练][跳过] trained索引已存在%s": "[インデックス学習][スキップ] trainedインデックスは既に存在します%s",
"当前设备:%s | 推理精度:%s": "現在のデバイス:%s | 推論精度:%s"
"当前设备:%s | 推理精度:%s": "現在のデバイス:%s | 推論精度:%s",
"正在预热CUDA Graph": "CUDA Graphをウォームアップしています",
"CUDA Graph预热完成": "CUDA Graphのウォームアップが完了しました"
}

View File

@@ -1,5 +1,5 @@
{
"人声提取激进程度": "보컬 추출 강도",
{
"人声提取激进程度": "보컬 추출 강도",
"%s → 成功": "%s → 성공",
"%s运行中请先停止该任务": "%s이(가) 실행 중입니다. 먼저 중지하세요",
"%s进程已终止": "%s 프로세스가 종료되었습니다",
@@ -257,5 +257,7 @@
"[索引训练] 外部索引链接已存在:%s": "[인덱스 학습] 외부 인덱스 링크가 이미 있습니다: %s",
"[索引训练][跳过] added索引已存在%s": "[인덱스 학습][건너뜀] added 인덱스가 이미 있습니다: %s",
"[索引训练][跳过] trained索引已存在%s": "[인덱스 학습][건너뜀] trained 인덱스가 이미 있습니다: %s",
"当前设备:%s | 推理精度:%s": "현재 장치: %s | 추론 정밀도: %s"
"当前设备:%s | 推理精度:%s": "현재 장치: %s | 추론 정밀도: %s",
"正在预热CUDA Graph": "CUDA Graph 워밍업 중",
"CUDA Graph预热完成": "CUDA Graph 워밍업 완료"
}

View File

@@ -1,5 +1,5 @@
{
"人声提取激进程度": "Intensidade da extração vocal",
{
"人声提取激进程度": "Intensidade da extração vocal",
"%s → 成功": "%s → Sucesso",
"%s运行中请先停止该任务": "%s está em execução; interrompa antes de iniciar outra tarefa",
"%s进程已终止": "O processo %s foi encerrado",
@@ -54,7 +54,7 @@
"rmvpe卡号配置以-分隔输入使用的不同进程卡号,例如0-0-1使用在卡0上跑2个进程并在卡1上跑1个进程": "Configuração do número do cartão rmvpe: Use - para separar os números dos cartões de entrada de diferentes processos. Por exemplo, 0-0-1 é usado para executar 2 processos no cartão 0 e 1 processo no cartão 1.",
"step1: 填写实验配置. 实验数据放在logs下, 每个实验一个文件夹, 需手工输入实验名路径, 内含实验配置, 日志, 训练得到的模型文件. ": "Etapa 1: Preencha a configuração experimental. Os dados experimentais são armazenados na pasta 'logs', com cada experimento tendo uma pasta separada. Digite manualmente o caminho do nome do experimento, que contém a configuração experimental, os logs e os arquivos de modelo treinados.",
"step1:正在处理数据": "Etapa 1: Processamento de dados",
"step2:正在提取音高&正在提取特征": "step2:Extração de tom e características",
"step2:正在提取音高&正在提取特征": "step2:Extração de tom e características",
"step2a: 自动遍历训练文件夹下所有可解码成音频的文件并进行切片归一化, 在实验目录下生成2个wav文件夹; 暂时只支持单人训练. ": "Etapa 2a: Percorra automaticamente todos os arquivos na pasta de treinamento que podem ser decodificados em áudio e execute a normalização da fatia. Gera 2 pastas wav no diretório do experimento. Atualmente, apenas o treinamento de um único cantor/palestrante é suportado.",
"step2b: 使用CPU提取音高(如果模型带音高), 使用GPU提取特征(选择卡号)": "Etapa 2b: Use a CPU para extrair o tom (se o modelo tiver tom), use a GPU para extrair recursos (selecione o índice da GPU):",
"step3: 填写训练设置, 开始训练模型和索引": "Etapa 3: Preencha as configurações de treinamento e comece a treinar o modelo e o Index",
@@ -257,5 +257,7 @@
"[索引训练] 外部索引链接已存在:%s": "[Treinamento de índice] O link externo já existe: %s",
"[索引训练][跳过] added索引已存在%s": "[Treinamento de índice][Ignorado] O índice added já existe: %s",
"[索引训练][跳过] trained索引已存在%s": "[Treinamento de índice][Ignorado] O índice trained já existe: %s",
"当前设备:%s | 推理精度:%s": "Dispositivo atual: %s | Precisão de inferência: %s"
"当前设备:%s | 推理精度:%s": "Dispositivo atual: %s | Precisão de inferência: %s",
"正在预热CUDA Graph": "Aquecendo o CUDA Graph",
"CUDA Graph预热完成": "Aquecimento do CUDA Graph concluído"
}

View File

@@ -1,5 +1,5 @@
{
"人声提取激进程度": "Интенсивность выделения вокала",
{
"人声提取激进程度": "Интенсивность выделения вокала",
"%s → 成功": "%s → Успешно",
"%s运行中请先停止该任务": "%s уже выполняется; сначала остановите эту задачу",
"%s进程已终止": "Процесс %s завершён",
@@ -54,7 +54,7 @@
"rmvpe卡号配置以-分隔输入使用的不同进程卡号,例如0-0-1使用在卡0上跑2个进程并在卡1上跑1个进程": "Введите номера графических процессоров, разделенные символом «-», например, 0-0-1, чтобы запустить два процесса на GPU 0 и один процесс на GPU 1:",
"step1: 填写实验配置. 实验数据放在logs下, 每个实验一个文件夹, 需手工输入实验名路径, 内含实验配置, 日志, 训练得到的模型文件. ": "Шаг 1. Конфигурирование модели. Данные обучения модели сохраняются в папку 'logs', и для каждой модели создаётся отдельная папка. Введите вручную путь к настройкам для модели, в которой находятся логи и тренировочные файлы.",
"step1:正在处理数据": "Шаг 1. Переработка данных",
"step2:正在提取音高&正在提取特征": "step2:Извлечение высоты тона и признаков",
"step2:正在提取音高&正在提取特征": "step2:Извлечение высоты тона и признаков",
"step2a: 自动遍历训练文件夹下所有可解码成音频的文件并进行切片归一化, 在实验目录下生成2个wav文件夹; 暂时只支持单人训练. ": "Шаг 2А. Автоматическая обработка исходных аудиозаписей для обучения и выполнение нормализации среза. Создаст 2 папки wav в папке модели. В данный момент поддерживается обучение только на одноголосных записях.",
"step2b: 使用CPU提取音高(如果模型带音高), 使用GPU提取特征(选择卡号)": "Шаг 2Б. Оценка и извлечение тональности в аудиофайлах с помощью процессора (если включена поддержка изменения высоты звука), извлечение черт с помощью GPU (выберите номер GPU):",
"step3: 填写训练设置, 开始训练模型和索引": "Шаг 3. Заполнение дополнительных настроек обучения и запуск обучения модели и индекса",
@@ -257,5 +257,7 @@
"[索引训练] 外部索引链接已存在:%s": "[Обучение индекса] Внешняя ссылка уже существует: %s",
"[索引训练][跳过] added索引已存在%s": "[Обучение индекса][Пропущено] Индекс added уже существует: %s",
"[索引训练][跳过] trained索引已存在%s": "[Обучение индекса][Пропущено] Индекс trained уже существует: %s",
"当前设备:%s | 推理精度:%s": "Текущее устройство: %s | Точность вывода: %s"
"当前设备:%s | 推理精度:%s": "Текущее устройство: %s | Точность вывода: %s",
"正在预热CUDA Graph": "Прогрев CUDA Graph",
"CUDA Graph预热完成": "Прогрев CUDA Graph завершён"
}

View File

@@ -1,5 +1,5 @@
{
"人声提取激进程度": "Vokal ayırma yoğunluğu",
{
"人声提取激进程度": "Vokal ayırma yoğunluğu",
"%s → 成功": "%s → Başarılı",
"%s运行中请先停止该任务": "%s çalışıyor; başka bir görev başlatmadan önce durdurun",
"%s进程已终止": "%s işlemi sonlandırıldı",
@@ -54,7 +54,7 @@
"rmvpe卡号配置以-分隔输入使用的不同进程卡号,例如0-0-1使用在卡0上跑2个进程并在卡1上跑1个进程": "RMVPE GPU yapılandırmasını tirelerle ayırın; örneğin 0-0-1, GPU 0'da iki ve GPU 1'de bir işlem çalıştırır",
"step1: 填写实验配置. 实验数据放在logs下, 每个实验一个文件夹, 需手工输入实验名路径, 内含实验配置, 日志, 训练得到的模型文件. ": "Adım 1: Deneysel yapılandırmayı doldurun. Deneysel veriler 'logs' klasöründe saklanır ve her bir deney için ayrı bir klasör vardır. Deneysel adı yolu manuel olarak girin; bu yol, deneysel yapılandırmayı, günlükleri ve eğitilmiş model dosyalarını içerir.",
"step1:正在处理数据": "Adım 1: Veri işleme",
"step2:正在提取音高&正在提取特征": "step2:Perde ve özellik çıkarımı",
"step2:正在提取音高&正在提取特征": "step2:Perde ve özellik çıkarımı",
"step2a: 自动遍历训练文件夹下所有可解码成音频的文件并进行切片归一化, 在实验目录下生成2个wav文件夹; 暂时只支持单人训练. ": "Adım 2a: Eğitim klasöründe ses dosyalarını otomatik olarak gezinerek dilimleme normalizasyonu yapın. Deney dizini içinde 2 wav klasörü oluşturur. Şu anda sadece tek kişilik eğitim desteklenmektedir.",
"step2b: 使用CPU提取音高(如果模型带音高), 使用GPU提取特征(选择卡号)": "Adım 2b: Ses yüksekliği (Pitch) çıkartmak için CPU kullanın (eğer model ses yüksekliği içeriyorsa), özellikleri çıkartmak için GPU kullanın (GPU indeksini seçin):",
"step3: 填写训练设置, 开始训练模型和索引": "Adım 3: Eğitim ayarlarını doldurun ve modeli ve dizini eğitmeye başlayın",
@@ -257,5 +257,7 @@
"[索引训练] 外部索引链接已存在:%s": "[Dizin eğitimi] Harici dizin bağlantısı zaten var: %s",
"[索引训练][跳过] added索引已存在%s": "[Dizin eğitimi][Atlandı] added dizini zaten var: %s",
"[索引训练][跳过] trained索引已存在%s": "[Dizin eğitimi][Atlandı] trained dizini zaten var: %s",
"当前设备:%s | 推理精度:%s": "Geçerli cihaz: %s | Çıkarım hassasiyeti: %s"
"当前设备:%s | 推理精度:%s": "Geçerli cihaz: %s | Çıkarım hassasiyeti: %s",
"正在预热CUDA Graph": "CUDA Graph ısınıyor",
"CUDA Graph预热完成": "CUDA Graph ısınması tamamlandı"
}

View File

@@ -1,5 +1,5 @@
{
"人声提取激进程度": "人声提取激进程度",
{
"人声提取激进程度": "人声提取激进程度",
"%s → 成功": "%s → 成功",
"%s运行中请先停止该任务": "%s运行中请先停止该任务",
"%s进程已终止": "%s进程已终止",
@@ -257,5 +257,7 @@
"[索引训练] 外部索引链接已存在:%s": "[索引训练] 外部索引链接已存在:%s",
"[索引训练][跳过] added索引已存在%s": "[索引训练][跳过] added索引已存在%s",
"[索引训练][跳过] trained索引已存在%s": "[索引训练][跳过] trained索引已存在%s",
"当前设备:%s | 推理精度:%s": "当前设备:%s | 推理精度:%s"
"当前设备:%s | 推理精度:%s": "当前设备:%s | 推理精度:%s",
"正在预热CUDA Graph": "正在预热CUDA Graph",
"CUDA Graph预热完成": "CUDA Graph预热完成"
}

View File

@@ -1,5 +1,5 @@
{
"人声提取激进程度": "人聲提取激進程度",
{
"人声提取激进程度": "人聲提取激進程度",
"%s → 成功": "%s → 成功",
"%s运行中请先停止该任务": "%s运行中请先停止该任务",
"%s进程已终止": "%s進程已终止",
@@ -257,5 +257,7 @@
"[索引训练] 外部索引链接已存在:%s": "[索引訓練] 外部索引連結已存在:%s",
"[索引训练][跳过] added索引已存在%s": "[索引訓練][跳過] added索引已存在%s",
"[索引训练][跳过] trained索引已存在%s": "[索引訓練][跳過] trained索引已存在%s",
"当前设备:%s | 推理精度:%s": "目前裝置:%s | 推理精度:%s"
"当前设备:%s | 推理精度:%s": "目前裝置:%s | 推理精度:%s",
"正在预热CUDA Graph": "正在預熱 CUDA Graph",
"CUDA Graph预热完成": "CUDA Graph 預熱完成"
}

View File

@@ -1,5 +1,5 @@
{
"人声提取激进程度": "人声提取激进程度",
{
"人声提取激进程度": "人声提取激进程度",
"%s → 成功": "%s → 成功",
"%s运行中请先停止该任务": "%s运行中请先停止该任务",
"%s进程已终止": "%s进程已终止",
@@ -257,5 +257,7 @@
"[索引训练] 外部索引链接已存在:%s": "[索引训练] 外部索引链接已存在:%s",
"[索引训练][跳过] added索引已存在%s": "[索引训练][跳过] added索引已存在%s",
"[索引训练][跳过] trained索引已存在%s": "[索引训练][跳过] trained索引已存在%s",
"当前设备:%s | 推理精度:%s": "当前设备:%s | 推理精度:%s"
"当前设备:%s | 推理精度:%s": "当前设备:%s | 推理精度:%s",
"正在预热CUDA Graph": "正在预热CUDA Graph",
"CUDA Graph预热完成": "CUDA Graph预热完成"
}

View File

@@ -1,5 +1,5 @@
{
"人声提取激进程度": "人聲提取激進程度",
{
"人声提取激进程度": "人聲提取激進程度",
"%s → 成功": "%s → 成功",
"%s运行中请先停止该任务": "%s运行中请先停止该任务",
"%s进程已终止": "%s進程已终止",
@@ -257,5 +257,7 @@
"[索引训练] 外部索引链接已存在:%s": "[索引訓練] 外部索引連結已存在:%s",
"[索引训练][跳过] added索引已存在%s": "[索引訓練][跳過] added索引已存在%s",
"[索引训练][跳过] trained索引已存在%s": "[索引訓練][跳過] trained索引已存在%s",
"当前设备:%s | 推理精度:%s": "目前裝置:%s | 推論精度:%s"
"当前设备:%s | 推理精度:%s": "目前裝置:%s | 推論精度:%s",
"正在预热CUDA Graph": "正在預熱 CUDA Graph",
"CUDA Graph预热完成": "CUDA Graph 預熱完成"
}