Build Voice AI in Python, Not Prayers. | SignalWire
Build Voice AI in Python, Not Prayers.
AI agents, phone numbers, SIP, PSTN, and WebRTC on one platform. No middleware assembly. One system from first ring to final disposition.
The Middleware Problem
Why Voice AI Is Harder Than It Should Be
Five Vendors for One Phone Call
Telephony, STT, LLM, TTS, and your state layer each add latency, cost, and support complexity.
State Lives Nowhere and Everywhere
Webhook reconstruction creates race conditions, stale context, and zombie calls.
The Demo Works, Production Breaks
At concurrency, vendor scaling mismatches cascade into latency spikes and dropped context.
Debugging Requires Four Dashboards
Every provider shows a partial view; nobody owns the complete call.
Build a Voice AI Agent
Python
TypeScript
Go
Java
Ruby
PHP
Perl
C++
C#
from signalwire import AgentBase
from signalwire.core.function_result import FunctionResult
class SupportAgent(AgentBase):
def __init__(self):
super().__init__(name="Support Agent", route="/support")
self.prompt_add_section("Instructions",
body="You are a customer support agent. "
"Greet the caller and resolve their issue.")
self.add_language("English", "en-US", "rime.spore:mistv2")
@AgentBase.tool(name="check_order")
def check_order(self, order_id: str):
"""Check the status of a customer order.
Args:
order_id: The order ID to look up
"""
return FunctionResult(f"Order {order_id}: shipped, ETA April 2nd")
agent = SupportAgent()
agent.run()
Multi-Vendor Pipeline vs. One Platform
Bolt-On Voice AI Stack
Separate telephony, STT, TTS, and LLM providers, each with its own SDK
Your glue code manages state across all four services
Each vendor adds a separate queue, invoice, and escalation path
Compliance and observability must be rebuilt across every vendor
16 to 23 months before a production call
SignalWire Platform
Telephony, STT, TTS, and LLM in one platform
AI runs inside the media stack, not outside it
800–1200ms typical response latency
One vendor, one invoice, one escalation path
Production calls in four to six weeks
State management is platform-native.
From Zero to Production
Day 1: Install and build your first agent
Install signalwire-agents, define your agent class, add a prompt, and make your first phone call to a working AI agent.
Weeks 1–2: Connect your business logic
Add tool functions that call your backend: order lookups, appointment scheduling, account verification, and the tools that differentiate your product.
Weeks 2–3: Structure conversation flow
Define steps with scoped prompts and scoped tools. Each step handles one phase of the conversation with focused context.
Weeks 4–6: Go live
Deploy your agent as a standard HTTP microservice. Provision phone numbers, route calls, and move into production.
Weeks 3–4: Test and iterate
Test with real calls. Iterate on prompts and flows. Use the sandbox environment for rapid development cycles.
Sigmond Runs on SignalWire
A voice and video AI agent built on the SignalWire SDK, wired to a live knowledge base, able to see what you show him. Build the same thing on voice, phone, WhatsApp, or SIP, or an entire white-label platform with SignalWire as the network underneath.
Call recording
This call is recorded. Audio and transcripts are used to improve our AI and customer support experience, and aren't shared or sold to third parties.
Voice AI and Telephony. One Platform.
pip install signalwire-agents
Define your agent. Add tools. Ship to production.