This commit is contained in:
Raphaël MANSUY 2025-12-04 19:14:29 +08:00
parent 43eb873d63
commit 0bef5fb6fa

View file

@ -228,7 +228,7 @@ class BindingOptions:
argdef = { argdef = {
"argname": f"{args_prefix}-{field.name}", "argname": f"{args_prefix}-{field.name}",
"env_name": f"{env_var_prefix}{field.name.upper()}", "env_name": f"{env_var_prefix}{field.name.upper()}",
"type": _resolve_optional_type(field.type), "type": _resolve_optional_type(field.type),
"default": default_value, "default": default_value,
"help": f"{cls._binding_name} -- " + help.get(field.name, ""), "help": f"{cls._binding_name} -- " + help.get(field.name, ""),
} }
@ -486,9 +486,9 @@ class GeminiLLMOptions(BindingOptions):
presence_penalty: float = 0.0 presence_penalty: float = 0.0
frequency_penalty: float = 0.0 frequency_penalty: float = 0.0
stop_sequences: List[str] = field(default_factory=list) stop_sequences: List[str] = field(default_factory=list)
response_mime_type: str | None = None seed: int | None = None
thinking_config: dict | None = None
safety_settings: dict | None = None safety_settings: dict | None = None
system_instruction: str | None = None
_help: ClassVar[dict[str, str]] = { _help: ClassVar[dict[str, str]] = {
"temperature": "Controls randomness (0.0-2.0, higher = more creative)", "temperature": "Controls randomness (0.0-2.0, higher = more creative)",
@ -498,10 +498,10 @@ class GeminiLLMOptions(BindingOptions):
"candidate_count": "Number of candidates returned per request", "candidate_count": "Number of candidates returned per request",
"presence_penalty": "Penalty for token presence (-2.0 to 2.0)", "presence_penalty": "Penalty for token presence (-2.0 to 2.0)",
"frequency_penalty": "Penalty for token frequency (-2.0 to 2.0)", "frequency_penalty": "Penalty for token frequency (-2.0 to 2.0)",
"stop_sequences": 'Stop sequences (JSON array of strings, e.g., \'["END"]\')', "stop_sequences": "Stop sequences (JSON array of strings, e.g., '[\"END\"]')",
"response_mime_type": "Desired MIME type for the response (e.g., application/json)", "seed": "Random seed for reproducible generation (leave empty for random)",
"thinking_config": "Thinking configuration (JSON dict, e.g., '{\"thinking_budget\": 1024}' or '{\"include_thoughts\": true}')",
"safety_settings": "JSON object with Gemini safety settings overrides", "safety_settings": "JSON object with Gemini safety settings overrides",
"system_instruction": "Default system instruction applied to every request",
} }