PharmaLinea Voice Agent
A voice AI sales assistant for a B2B supplement manufacturer that answers product questions and qualifies inbound leads through natural conversation.
Overview
PharmaLinea Voice Agent is a voice AI sales assistant for PharmaLinea, a B2B private-label food supplement manufacturer. The agent runs as a persistent side-panel widget on pharmalinea.com, holds natural voice conversations about the company's 36+ supplement products, walks prospects through clinical evidence, and qualifies inbound leads by collecting their contact details directly through the conversation.
Key Features
- Real-time voice conversation with low-latency turn detection and noise cancellation.
- Product knowledge across 36+ supplements in 11 categories, with clinical study data for substantiated products.
- In-conversation navigation: the agent opens relevant product and clinical pages on pharmalinea.com in the current tab; the widget lives in a persistent side panel, so the session continues across page changes.
- Voice-driven lead capture: when a prospect signals partnership interest, the agent gathers their contact details conversationally and submits them to the backend — no form, no interruption.
Technical Implementation
- Voice infrastructure: LiveKit Agents SDK for real-time audio between the user and the agent.
- Agent runtime (Python): voice pipeline composed of Silero VAD, Deepgram STT, an LLM, and ElevenLabs TTS, with LiveKit's multilingual turn detector and BVC noise cancellation.
- LLM: Google Gemini by default, with an Anthropic Claude alternative behind a single env flag.
- Widget (React 19 + Tailwind + shadcn/ui): side-panel agent session UI with aura audio visualizer and live transcript, persistent across page navigations.
- Backend (Express + TypeScript): issues LiveKit access tokens and exposes a lead-capture endpoint.
- Knowledge base: structured JSON for products, clinical studies, services, and FAQ — all loaded into the system prompt, no vector DB needed at this scale.
- Tool calls over RPC: the agent invokes browser-side navigation by sending RPC to the widget participant; server-side tools (
get_product_details,get_clinical_study,submit_lead) run in the agent process.
Challenges & Solutions
The hardest part is keeping the conversation feeling natural while the agent is doing real work — looking up product details, navigating the user's browser, and deciding when to start collecting contact details. Solved with a clear split between server-side knowledge tools (fast, run inside the agent) and client-side navigation RPCs that don't tear down the live session, plus a system prompt that frames lead qualification as the agent's primary mission and instructs it to gather the prospect's details through the conversation itself.
See It In Action
Watch how PharmaLinea Voice Agent works
