***

title: setParams
slug: /reference/typescript/agents/agent-base/set-params
description: Configure AI model parameters such as temperature, timeouts, and speech recognition settings.
max-toc-depth: 3
---------------------

For a complete index of all SignalWire documentation pages, fetch https://signalwire.com/docs/llms.txt

[ai-params]: /docs/swml/reference/ai/params

[swml-ai-params-reference]: /docs/swml/reference/ai/params

[ref-agentbase]: /docs/server-sdks/reference/typescript/agents/agent-base

Set multiple AI parameters at once. Merges into any previously set parameters.

<Info>
  These parameters map to the SWML [`ai.params`][ai-params] object.
  See the [SWML AI params reference][swml-ai-params-reference] for the full list of
  supported fields.
</Info>

## **Parameters**

<ParamField path="params" type={"Record<string, unknown>"} required={true} toc={true}>
  Object of parameter name/value pairs.
</ParamField>

## **Returns**

[`AgentBase`][ref-agentbase] -- Returns `this` for method chaining.

***

## **AI Parameter Reference**

Parameters set via `setParams()` control the AI model, speech recognition, timing,
and agent behavior. The fields below list commonly used parameters by category.

<Warning>
  Keys must use **snake\_case** to match the SWML wire format. For example, use
  `end_of_speech_timeout`, not `endOfSpeechTimeout`. The SDK passes these keys
  directly into the SWML `ai.params` object without transformation.
</Warning>

<Note>
  Default values shown below are **server-side defaults** applied by the SignalWire
  platform. The SDK itself sends no defaults -- only parameters you explicitly set
  are included in the SWML document.
</Note>

### LLM Parameters

<ParamField path="temperature" type="number" toc={true}>
  Output randomness. Range: `0.0` -- `2.0`. Lower values produce more deterministic responses. Platform default: `0.3`.
</ParamField>

<ParamField path="top_p" type="number" toc={true}>
  Nucleus sampling threshold. Range: `0.0` -- `1.0`. Alternative to temperature for controlling randomness. Platform default: `1.0`.
</ParamField>

<ParamField path="frequency_penalty" type="number" toc={true}>
  Repetition penalty. Range: `-2.0` -- `2.0`. Positive values reduce repetition of token sequences. Platform default: `0.1`.
</ParamField>

<ParamField path="presence_penalty" type="number" toc={true}>
  Topic diversity. Range: `-2.0` -- `2.0`. Positive values encourage the model to explore new topics. Platform default: `0.1`.
</ParamField>

<ParamField path="max_tokens" type="number" toc={true}>
  Maximum response tokens. Range: `1` -- `16385`. Platform default: `256`.
</ParamField>

<ParamField path="ai_model" type="string" toc={true}>
  AI model to use (e.g., `"gpt-4o-mini"`, `"gpt-4.1-mini"`, `"nova-micro"`, `"nova-lite"`). Platform default: `"gpt-4o-mini"`.
</ParamField>

### Timing Parameters

<ParamField path="end_of_speech_timeout" type="number" toc={true}>
  Silence duration in milliseconds to detect end of speech. Range: `250` -- `10000`. Platform default: `700`.
</ParamField>

<ParamField path="attention_timeout" type="number" toc={true}>
  Idle delay in milliseconds before the AI re-prompts the caller. Range: `0` -- `600000`. Platform default: `5000`.
</ParamField>

<ParamField path="inactivity_timeout" type="number" toc={true}>
  Inactivity delay in milliseconds before the call is automatically disconnected. Range: `10000` -- `3600000`. Platform default: `600000`.
</ParamField>

<ParamField path="speech_timeout" type="number" toc={true}>
  Maximum speech duration in milliseconds before the input is finalized. Platform default: `60000`.
</ParamField>

### Behavior Parameters

<ParamField path="wait_for_user" type="boolean" toc={true}>
  Wait for the caller to speak first before the AI begins talking. Platform default: `false`.
</ParamField>

<ParamField path="conscience" type="boolean | string" toc={true}>
  Safety enforcement. When enabled, the AI applies content safety filters. Platform default: `true`.
</ParamField>

<ParamField path="transparent_barge" type="boolean" toc={true}>
  Transparent barge-in mode. When enabled, caller speech interrupts the AI naturally without discarding context. Platform default: `true`.
</ParamField>

<ParamField path="save_conversation" type="boolean" toc={true}>
  Persist the conversation summary after the call ends. Platform default: `false`.
</ParamField>

### Audio Parameters

<ParamField path="ai_volume" type="number" toc={true}>
  AI voice volume adjustment. Range: `-50` -- `50`. Platform default: `0`.
</ParamField>

<ParamField path="background_file" type="string" toc={true}>
  URL of an audio file to play as background audio during the conversation.
</ParamField>

<ParamField path="hold_music" type="string" toc={true}>
  URL of hold music or a tone string (e.g., `"tone:440"`).
</ParamField>

## **Example**

```typescript {5}
import { AgentBase } from '@signalwire/sdk';

const agent = new AgentBase({ name: 'support', route: '/support' });
agent.setPromptText('You are a helpful assistant.');
agent.setParams({
  temperature: 0.7,
  end_of_speech_timeout: 1000,
  attention_timeout: 10000,
  wait_for_user: true,
});
await agent.serve();
```