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

from signalwire import AgentBase
from signalwire import FunctionResult
agent = AgentBase(name="my-agent", route="/agent")
agent.set_prompt_text("You are a helpful assistant.")
@agent.tool(name="adjust_for_technical_discussion", description="Adjust AI settings for technical topics")
def adjust_for_technical_discussion(args, raw_data):
return (
FunctionResult("Adjusting response parameters.")
.update_settings({
"temperature": 0.3,
"confidence": 0.9,
"barge-confidence": 0.8
})
)
agent.serve()