Packages
liter_llm
1.7.6
1.11.2
1.11.1
1.11.0
1.10.1
1.10.0
1.9.3
1.9.0
1.9.0-rc.2
1.9.0-rc.1
1.8.2
1.8.1
1.8.0
1.7.6
1.7.5
1.7.4
1.7.3
1.7.2
1.7.1
1.6.4
1.6.3
1.6.2
1.5.1
1.5.0
1.4.1
1.4.0-rc.61
1.4.0-rc.60
1.4.0-rc.59
1.4.0-rc.58
1.4.0-rc.57
1.4.0-rc.56
1.4.0-rc.55
1.4.0-rc.53
1.4.0-rc.52
1.4.0-rc.50
1.4.0-rc.48
1.4.0-rc.47
1.4.0-rc.46
1.4.0-rc.45
1.4.0-rc.44
1.4.0-rc.43
1.4.0-rc.39
1.4.0-rc.38
1.4.0-rc.37
1.4.0-rc.36
1.4.0-rc.35
1.4.0-rc.34
1.4.0-rc.33
1.4.0-rc.32
1.4.0-rc.31
1.4.0-rc.30
1.4.0-rc.27
1.4.0-rc.26
1.4.0-rc.25
1.4.0-rc.24
1.4.0-rc.22
1.4.0-rc.21
1.4.0-rc.20
1.4.0-rc.19
1.4.0-rc.18
1.4.0-rc.17
1.4.0-rc.16
1.4.0-rc.14
1.4.0-rc.13
1.4.0-rc.11
1.2.2
1.2.1
1.2.0
1.1.1
1.1.0
1.0.0
1.0.0-rc.9
1.0.0-rc.8
1.0.0-rc.7
1.0.0-rc.6
1.0.0-rc.5
1.0.0-rc.4
1.0.0-rc.3
1.0.0-rc.2
Universal LLM API client with Rust-powered polyglot bindings.
Current section
Files
Jump to
Current section
Files
lib/liter_llm/modality.ex
# This file is auto-generated by alef — DO NOT EDIT.
# alef:hash:c892c5ad61c5b9376089e0d461b22e97ed9f5766653c5d3c2e5bf8cca5950f37
# To regenerate: alef generate
# To verify freshness: alef verify --exit-code
defmodule LiterLlm.Modality do
@moduledoc """
Output modality requested from the model.
Passed as `modalities: ["text", "audio"]` (OpenAI) or translated to
`generationConfig.responseModalities` (Gemini / Vertex AI).
# Example
```
use liter_llm::types::{ChatCompletionRequest, Modality};
let req = ChatCompletionRequest {
model: "gpt-4o-audio-preview".into(),
modalities: Some(vec![Modality::Text, Modality::Audio]),
..Default::default()
};
```
"""
@typedoc "Output modality requested from the model."
@type t :: :text | :audio | :image
@text :text
@audio :audio
@image :image
@doc "Text output (the default for all providers)."
@spec text() :: t()
def text, do: @text
@doc "Audio / speech output."
@spec audio() :: t()
def audio, do: @audio
@doc "Image output (Gemini Imagen, gpt-image-1)."
@spec image() :: t()
def image, do: @image
end