# `Vllm.CollectEnv.SystemEnv`
[🔗](https://github.com/nshkrdotcom/vllm/blob/v0.3.0/lib/snakebridge_generated/vllm/collect_env/system_env.ex#L7)

SystemEnv(torch_version, is_debug_build, cuda_compiled_version, gcc_version, clang_version, cmake_version, os, libc_version, python_version, python_platform, is_cuda_available, cuda_runtime_version, cuda_module_loading, nvidia_driver_version, nvidia_gpu_models, cudnn_version, pip_version, pip_packages, conda_packages, hip_compiled_version, hip_runtime_version, miopen_runtime_version, caching_allocator_config, is_xnnpack_available, cpu_info, rocm_version, vllm_version, vllm_build_flags, gpu_topo, env_vars)

# `t`

```elixir
@opaque t()
```

# `_asdict`

```elixir
@spec _asdict(
  SnakeBridge.Ref.t(),
  keyword()
) :: {:ok, term()} | {:error, Snakepit.Error.t()}
```

Return a new dict which maps field names to their values.

## Returns

- `term()`

# `_make`

```elixir
@spec _make(SnakeBridge.Ref.t(), term(), keyword()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

Make a new SystemEnv object from a sequence or iterable

## Parameters

- `iterable` (term())

## Returns

- `term()`

# `_replace`

```elixir
@spec _replace(
  SnakeBridge.Ref.t(),
  keyword()
) :: {:ok, term()} | {:error, Snakepit.Error.t()}
```

Return a new SystemEnv object replacing specified fields with new values

## Parameters

- `kwds` (term())

## Returns

- `term()`

# `caching_allocator_config`

```elixir
@spec caching_allocator_config(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `clang_version`

```elixir
@spec clang_version(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `cmake_version`

```elixir
@spec cmake_version(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `conda_packages`

```elixir
@spec conda_packages(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `count`

```elixir
@spec count(SnakeBridge.Ref.t(), term(), keyword()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

Return number of occurrences of value.

## Parameters

- `value` (term())

## Returns

- `term()`

# `cpu_info`

```elixir
@spec cpu_info(SnakeBridge.Ref.t()) :: {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `cuda_compiled_version`

```elixir
@spec cuda_compiled_version(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `cuda_module_loading`

```elixir
@spec cuda_module_loading(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `cuda_runtime_version`

```elixir
@spec cuda_runtime_version(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `cudnn_version`

```elixir
@spec cudnn_version(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `env_vars`

```elixir
@spec env_vars(SnakeBridge.Ref.t()) :: {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `gcc_version`

```elixir
@spec gcc_version(SnakeBridge.Ref.t()) :: {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `gpu_topo`

```elixir
@spec gpu_topo(SnakeBridge.Ref.t()) :: {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `hip_compiled_version`

```elixir
@spec hip_compiled_version(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `hip_runtime_version`

```elixir
@spec hip_runtime_version(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `index`

```elixir
@spec index(SnakeBridge.Ref.t(), term(), [term()], keyword()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

Return first index of value.

Raises ValueError if the value is not present.

## Parameters

- `value` (term())
- `start` (term() default: 0)
- `stop` (term() default: 9223372036854775807)

## Returns

- `term()`

# `is_cuda_available`

```elixir
@spec is_cuda_available(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `is_debug_build`

```elixir
@spec is_debug_build(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `is_xnnpack_available`

```elixir
@spec is_xnnpack_available(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `libc_version`

```elixir
@spec libc_version(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `miopen_runtime_version`

```elixir
@spec miopen_runtime_version(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `new`

```elixir
@spec new(
  [term()],
  keyword()
) :: {:ok, SnakeBridge.Ref.t()} | {:error, Snakepit.Error.t()}
```

Initialize self.  See help(type(self)) for accurate signature.

## Parameters

- `args` (term())
- `kwargs` (term())

# `nvidia_driver_version`

```elixir
@spec nvidia_driver_version(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `nvidia_gpu_models`

```elixir
@spec nvidia_gpu_models(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `os`

```elixir
@spec os(SnakeBridge.Ref.t()) :: {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `pip_packages`

```elixir
@spec pip_packages(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `pip_version`

```elixir
@spec pip_version(SnakeBridge.Ref.t()) :: {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `python_platform`

```elixir
@spec python_platform(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `python_version`

```elixir
@spec python_version(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `rocm_version`

```elixir
@spec rocm_version(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `torch_version`

```elixir
@spec torch_version(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `vllm_build_flags`

```elixir
@spec vllm_build_flags(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `vllm_version`

```elixir
@spec vllm_version(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
