Apply fixture-kit mode to MMMUVLMMixin (#15615)
This commit is contained in:
@@ -6,6 +6,29 @@ from enum import IntEnum
|
||||
from typing import Any
|
||||
|
||||
|
||||
@contextmanager
|
||||
def temp_set_env(**env_vars: dict[str, Any]):
|
||||
"""Temporarily set non-sglang environment variables, e.g. OPENAI_API_KEY"""
|
||||
for key in env_vars:
|
||||
if key.startswith("SGLANG_") or key.startswith("SGL_"):
|
||||
raise ValueError("temp_set_env should not be used for sglang env vars")
|
||||
|
||||
backup = {key: os.environ.get(key) for key in env_vars}
|
||||
try:
|
||||
for key, value in env_vars.items():
|
||||
if value is None:
|
||||
os.environ.pop(key, None)
|
||||
else:
|
||||
os.environ[key] = str(value)
|
||||
yield
|
||||
finally:
|
||||
for key, value in backup.items():
|
||||
if value is None:
|
||||
os.environ.pop(key, None)
|
||||
else:
|
||||
os.environ[key] = value
|
||||
|
||||
|
||||
class EnvField:
|
||||
_allow_set_name = True
|
||||
|
||||
|
||||
Reference in New Issue
Block a user