> ## Content Index
> Fetch the complete content index at: https://sgpublic.xyz/llms.txt
> Use this file to discover other available public pages before exploring further.

# 在阿里 PPU 环境中使用 onnxruntime-gpu 的 Java 库
- URL: https://sgpublic.xyz/p/2026/05/6aac9cb1810a48000153361d/
- Published: 2026-05-01T02:32:12.000Z
- Updated: 2026-09-18T04:04:59.000Z
- Author: Haven Madray
- Tags: AI 与算力, NVIDIA/CUDA, Java/Kotlin, #wp-post

核心思路就是利用环境变量让 Java 应用加载 pixi 中安装的 onnxruntime 的 so。

> 前置操作请参阅 [使用 pixi 配置阿里 PPU 环境](https://sgpublic.xyz/p/2026/04/6aac9cb1810a48000153361b/)

我这里项目使用的是 Gradle，在项目根目录的 `build.gradle.kts` 中添加如下内容：

```kotlin
subprojects {
    val pixiEnvs = File(rootDir, "torrenkt-tslm-model/.pixi/envs")
    if (!pixiEnvs.exists()) {
        logger.error("please run 'pixi install' in ./torrenkt-tslm-model")
        return@subprojects
    }
    val env = when (providers.gradleProperty("torch.gpu.env").getOrElse("cpu")) {
        "ppu" -> "ppu"
        "cuda" -> "default"
        else -> "cpu"
    }
    val path = File(pixiEnvs, "$env/bin").canonicalPath
    val libs = File(pixiEnvs, "$env/lib").canonicalPath
    val onnxruntime = File(libs, "./python3.12/site-packages/onnxruntime/capi").canonicalPath // 注意 python 版本换成你实际使用的版本
    tasks.withType<javaexec>().configureEach {
        environment("PATH", "$path:${environment["PATH"]}")
        environment("LD_LIBRARY_PATH", "$libs:$onnxruntime:${environment["LD_LIBRARY_PATH"]}")
    }
}

```

然后在 `~/.gradle/gradle.properties` 中添加内容：

```properties
torch.gpu.env=ppu

```

这样不仅能让 ppu 环境使用 python 包提供的 `onnxruntime.so`，其他环境也能加载 pixi 中的 `cuda-toolkit`。

打包后的成品运行直接添加环境变量再运行即可，这里不再赘述。