ARES

Updated

Use ARES for speech recognition (ASR) in a Conversational AI Platform agent.

Preview documentation

You're reading the Conversational AI Platform (Preview) docs. Switch to Main.

Adaptive Recognition Engine for Speech (ARES) provides built-in real-time speech-to-text, offering seamless integration with low latency and reliable performance for conversational AI applications.

Sample configuration

The following example shows how to configure ARES as the agent's ASR when you create or update an agent. For a complete example, see Create an agent and start a session.

ARES is available in managed mode only. Agora provides ARES, and you don't need a provider account or API key. For details, see Use managed mode.

from agora_agent import Agent, AresSTT

# client is your configured Agora client
agent = (
    Agent(client=client)
    .with_stt(AresSTT(keywords=["Agora", "Conversational AI", "RTC"]))
    .with_llm(...)  # configure your LLM vendor
    .with_tts(...)  # configure your TTS vendor
)
import { Agent, AresSTT } from 'agora-agents';

// client is your configured Agora client
const agent = new Agent({ client })
  .withStt(new AresSTT({ keywords: ['Agora', 'Conversational AI', 'RTC'] }))
  .withLlm(/* configure your LLM vendor */)
  .withTts(/* configure your TTS vendor */);
// client is your configured Agora client
agent := agentkit.NewAgent(client).
	WithStt(vendors.NewAresSTT(vendors.AresSTTOptions{
		Keywords: []string{"Agora", "Conversational AI", "RTC"},
	})).
	WithLlm( /* configure your LLM vendor */ ).
	WithTts( /* configure your TTS vendor */ )

Set credential.mode to managed in the asr block:

"asr": {
  "credential": { "mode": "managed" },
  "vendor": "ares",
  "language": "en-US",
  "params": {
    "keywords": ["Agora", "Conversational AI", "RTC"]
  }
}

Key parameters

The asr block takes the following fields. In the SDKs, AresSTT sets them from its options, and passes any other ARES parameters from its additional parameters option to params.

asrrequired
vendorstring
required

Set to ares.

credentialobject
required

How the agent authenticates with ARES. Set mode to managed.

languagestring
required

The BCP-47 language tag identifying the primary language used for agent interaction. See Supported languages for the complete list.

paramsobject
optional
keywordsarray[string]
optional

Keywords used to improve ASR recognition accuracy for specific terms, such as brand names, product names, or industry jargon. Supports up to 128 keywords. See Configure ASR keywords for details.