OpenAI GPT-Live
Updated
Integrate OpenAI GPT-Live into Conversational AI Engine.
OpenAI GPT-Live provides multimodal large language model capabilities with real-time audio processing, enabling natural voice conversations without separate ASR/TTS components. Enabling MLLM automatically disables ASR, LLM, and TTS since the MLLM handles end-to-end voice processing directly.
Sample configuration
The following examples show how to configure OpenAI GPT-Live MLLM when starting a conversational AI agent.
from agora_agent import Agent, OpenAIGPTLive
# client is your configured Agora client
agent = (
Agent(client)
.with_mllm(OpenAIGPTLive(
api_key='your-openai-key',
greeting="Hello! I'm GPT-live. How can I help you today?",
model='gpt-live-1',
voice='marin',
prompt='your-system-prompt',
))
)import { Agent, OpenAIGPTLive } from 'agora-agents';
// client is your configured Agora client
const agent = new Agent({ client })
.withMllm(new OpenAIGPTLive({
apiKey: 'your-openai-key',
greeting: "Hello! I'm GPT-live. How can I help you today?",
model: 'gpt-live-1',
voice: 'marin',
prompt: 'your-system-prompt',
}));import (
"github.com/AgoraIO/agora-agents-go/v2/agentkit"
"github.com/AgoraIO/agora-agents-go/v2/agentkit/vendors"
)
// client is your configured Agora client
agent := agentkit.NewAgent(client).WithMllm(
vendors.NewOpenAIGPTLive(vendors.OpenAIGPTLiveOptions{
APIKey: "your-openai-key",
GreetingMessage: "Hello! I'm GPT-live. How can I help you today?",
Model: "gpt-live-1",
Voice: "marin",
Prompt: "your-system-prompt",
}),
)Use the following mllm configuration in your request:
"mllm": {
"enable": true,
"vendor": "openai_gpt_live",
"api_key": "<openai_api_key>",
"url": "wss://api.openai.com/v1/live/sessions",
"greeting_message": "Hello! I'm GPT-live. How can I help you today?",
"params": {
"model": "gpt-live-1",
"voice": "marin",
"prompt": "<system_prompt>"
}
}Tool calling
GPT-Live can call tools defined directly on the MLLM configuration. Set mllm.mcp_servers, enable advanced_features.enable_tools, and set params.tool_enabled to true to advertise those tools to GPT-Live:
"mllm": {
"mcp_servers": [
{
"name": "lookup",
"endpoint": "https://tools.example/mcp",
"transport": "streamable_http"
}
],
"params": {
"tool_enabled": true
}
},
"advanced_features": {
"enable_tools": true
}Key parameters
enablebooleanEnables the MLLM module. Replaces the deprecated advanced_features.enable_mllm.
vendorstringMLLM provider identifier. Set to openai_gpt_live for OpenAI GPT-Live.
api_keystringThe OpenAI API key used for authentication.
urlstring- Default value
- wss://api.openai.com/v1/live/sessions
The WebSocket URL for OpenAI GPT-Live.
messagesarray[object]An array of conversation history items passed to the model as context. Each item represents a single message in the conversation history.
rolestringThe role of the message author. For example, system or user.
contentstringThe content of the message.
input_modalitiesarray[string]- Default value
- ["audio"]
MLLM input modalities:
["audio"]: Audio only["audio", "text"]: Audio plus text
output_modalitiesarray[string]- Default value
- ["text", "audio"]
Output format options: ["text", "audio"] for both text and voice responses.
greeting_messagestringInitial message the agent speaks when a user joins the channel.
failure_messagestringThe message the agent speaks when an error occurs.
mcp_serversarray[object]MCP servers whose tools GPT-Live can call. See Tool calling.
paramsobjectAdditional MLLM configuration parameters.
modelstring- Default value
- gpt-live-1
The model identifier. Specify another supported model to override the default.
voicestring- Default value
- marin
The voice identifier for audio output.
promptstringSession instructions that define the assistant's behavior and personality.
tool_enabledboolean- Default value
- false
Advertises the agent's graph tools to GPT-Live for tool calling. See Tool calling. Does not control delegate built-in tools.
Limitations
GPT-Live doesn't support turn detection or input audio transcription.
The parameters listed on this page are validated for use with Conversational AI Engine. Required parameters must be provided as documented. Additional parameters are passed through directly to the underlying vendor without validation.
