update_settings

View as MarkdownOpen in Claude

Update AI runtime settings dynamically during a call. Changes take effect for subsequent LLM turns.

Parameters

settings
dict[str, Any]Required

Dictionary of settings to update. Supported keys:

KeyTypeRange
frequency-penaltyfloat-2.0 to 2.0
presence-penaltyfloat-2.0 to 2.0
max-tokensint0 to 4096
top-pfloat0.0 to 1.0
confidencefloat0.0 to 1.0
barge-confidencefloat0.0 to 1.0
temperaturefloat0.0 to 2.0 (clamped to 1.5)

Returns

FunctionResult — self, for chaining.

Example

1from signalwire import AgentBase
2from signalwire import FunctionResult
3
4agent = AgentBase(name="my-agent", route="/agent")
5agent.set_prompt_text("You are a helpful assistant.")
6
7@agent.tool(name="adjust_for_technical_discussion", description="Adjust AI settings for technical topics")
8def adjust_for_technical_discussion(args, raw_data):
9 return (
10 FunctionResult("Adjusting response parameters.")
11 .update_settings({
12 "temperature": 0.3,
13 "confidence": 0.9,
14 "barge-confidence": 0.8
15 })
16 )
17
18agent.serve()