feat(backends/python): use tempfile.gettempdir() instead of hardcoded /tmp (#9629)

Closes #9601

Makes the temporary scratch paths in vllm, vllm-omni, tinygrad, and pocket-tts
backends configurable via the standard TMPDIR env var, instead of always writing
to /tmp. This is a one-line change per call site that calls tempfile.gettempdir()
for the directory and keeps the same filename suffix.

Users who run on systems with a small root partition (or want to relocate scratch
files to a larger volume) can now redirect these by setting TMPDIR
(e.g. TMPDIR=/data/tmp), without affecting the existing LOCALAI_GENERATED_CONTENT_PATH
or LOCALAI_UPLOAD_PATH options that already cover other temp paths.

Files touched:
- backend/python/vllm/backend.py        (1 site: video base64 scratch)
- backend/python/tinygrad/backend.py    (1 site: image fallback dst)
- backend/python/pocket-tts/backend.py  (1 site: tts wav fallback dst)
- backend/python/vllm-omni/backend.py   (2 sites: video + audio scratch)
This commit is contained in:
Tai An
2026-05-01 01:56:24 -07:00
committed by GitHub
parent 9c4c3f9d8f
commit 80961d2da6
4 changed files with 9 additions and 5 deletions

View File

@@ -33,6 +33,7 @@ import json
import os
import signal
import sys
import tempfile
import time
from concurrent import futures
from pathlib import Path
@@ -668,7 +669,7 @@ class BackendServicer(backend_pb2_grpc.BackendServicer):
)
arr = img_tensor.numpy()
image = Image.fromarray(arr)
dst = request.dst or "/tmp/tinygrad_image.png"
dst = request.dst or os.path.join(tempfile.gettempdir(), "tinygrad_image.png")
image.save(dst)
return backend_pb2.Result(success=True, message=dst)
except Exception as exc: