mirror of
https://github.com/RVC-Boss/GPT-SoVITS.git
synced 2025-08-11 19:09:51 +08:00
73 lines
1.7 KiB
PowerShell
73 lines
1.7 KiB
PowerShell
$ErrorActionPreference = "Stop"
|
|
|
|
$ScriptDir = Split-Path -Parent $MyInvocation.MyCommand.Definition
|
|
Set-Location $ScriptDir
|
|
|
|
if (-not (Get-Command "docker" -ErrorAction SilentlyContinue)) {
|
|
Write-Host "Docker Not Found"
|
|
exit 1
|
|
}
|
|
|
|
$Lite = $false
|
|
$CudaVersion = "12.6"
|
|
|
|
function Write-Help {
|
|
Write-Host @"
|
|
Usage: powershell -File docker_build.ps1 [OPTIONS]
|
|
|
|
Options:
|
|
--cuda 12.6|12.8 Specify the CUDA VERSION (REQUIRED)
|
|
--lite Build a Lite Image
|
|
-h, --help Show this help message and exit
|
|
|
|
Examples:
|
|
powershell -File docker_build.ps1 --cuda 12.6 --lite
|
|
"@
|
|
}
|
|
|
|
if ($args.Count -eq 0) {
|
|
Write-Help
|
|
exit 0
|
|
}
|
|
|
|
for ($i = 0; $i -lt $args.Count; $i++) {
|
|
switch ($args[$i]) {
|
|
'--cuda' {
|
|
$i++
|
|
$val = $args[$i]
|
|
if ($val -ne "12.6" -and $val -ne "12.8") {
|
|
Write-Host "Error: Invalid CUDA_VERSION: $val"
|
|
Write-Host "Choose From: [12.6, 12.8]"
|
|
exit 1
|
|
}
|
|
$CudaVersion = $val
|
|
}
|
|
'--lite' {
|
|
$Lite = $true
|
|
}
|
|
'-h' { Write-Help; exit 0 }
|
|
'--help' { Write-Help; exit 0 }
|
|
default {
|
|
Write-Host "Unknown Argument: $($args[$i])"
|
|
Write-Host "Use -h or --help to see available options."
|
|
exit 1
|
|
}
|
|
}
|
|
}
|
|
|
|
$arch = (Get-CimInstance Win32_Processor).Architecture
|
|
$TargetPlatform = if ($arch -eq 9) { "linux/amd64" } else { "linux/arm64" }
|
|
|
|
if ($Lite) {
|
|
$TorchBase = "lite"
|
|
} else {
|
|
$TorchBase = "full"
|
|
}
|
|
|
|
docker build `
|
|
--build-arg CUDA_VERSION=$CudaVersion `
|
|
--build-arg LITE=$Lite `
|
|
--build-arg TARGETPLATFORM=$TargetPlatform `
|
|
--build-arg TORCH_BASE=$TorchBase `
|
|
-t "$env:USERNAME/gpt-sovits:local" `
|
|
. |