मुख्य सामग्री पर जाएँ

Gemini Live API के साथ शुरुआत करें

Gemini Live API और Google ADK का उपयोग करके रियल-टाइम वॉयस असिस्टेंट बनाना सीखें। WebSockets, टूल कॉलिंग, और नैटिव ऑडियो स्ट्रीमिंग में महारत हासिल करें।
· 11 मि॰ पढ़ें

AI के साथ खोजें

यदि आपने कभी वॉयस असिस्टेंट बनाने की कोशिश की है, तो आप जानते होंगे कि पारंपरिक पाइपलाइन कितनी भद्दी है। आप उपयोगकर्ता की आवाज़ रिकॉर्ड करते हैं, उसे STT मॉडल से ट्रांसक्राइब करते हैं, उस टेक्स्ट को LLM को भेजते हैं, जवाब का इंतज़ार करते हैं, और फिर उसे TTS इंजन से चलाते हैं। 

जब तक आपका उपयोगकर्ता उत्तर सुनता है, तब तक कई सेकंड की अटपटी खामोशी बीत चुकी होती है। यह बातचीत कम और धीमे अनुरोध-और-प्रतिक्रिया चक्र जैसा ज़्यादा लगता है। 

Gemini Live API इस प्रवाह को बदल देता है, क्योंकि यह आपको एक स्टेटफुल WebSocket कनेक्शन पर लगातार ऑडियो और वीडियो स्ट्रीम करने देता है। चूँकि मॉडल ऑडियो को नैटिव रूप से प्रोसेस और आउटपुट करता है, यह तुरंत प्रतिक्रिया दे सकता है, स्वाभाविक स्वर-भंगिमाओं के अनुसार ढल सकता है, और यहाँ तक कि वाक्य के बीच में रुकावटों (barge-in) को भी संभाल सकता है। 

इस ट्यूटोरियल में, मैं आपको कोड-फर्स्ट Google Agent Development Kit (ADK) का उपयोग करके एक रियल-टाइम AI Travel Concierge बनाना सिखाऊंगा। हम अपने एजेंट को लाइव डेस्टिनेशन वेदर लुकअप के लिए Google Search देंगे, उसे एक मॉक फ़्लाइट डेटाबेस से जोड़ेंगे, और एक स्थानीय डेवलपर इंटरफ़ेस चलाकर देखेंगे कि वह रियल-टाइम संवाद और टूल कॉलिंग को कैसे संभालता है।

यदि आप इस इकोसिस्टम में नए हैं, तो मैं सुझाव दूंगा कि आप Building AI Agents with Google ADK कोर्स से अपनी बुनियादी समझ मज़बूत करें।

आप क्या हासिल करेंगे: 

  • Gemini Live API की कार्यप्रणाली, क्षमताओं और मूल्य निर्धारण को समझें।
  • Google Agent Development Kit के साथ Python वातावरण कॉन्फ़िगर करें। 
  • बिल्ट-इन टूल्स (Google Search) और कस्टम बिज़नेस लॉजिक (फ़्लाइट स्टेटस डेटाबेस लुकअप) दोनों को वॉयस असिस्टेंट के लिए उपलब्ध कराएं। 
  • अपना ट्रैवल एजेंट लाइव परखने के लिए एक लोकल वेब UI लॉन्च करें।

पूर्वापेक्षाएँ: 

  • Python की बुनियादी जानकारी। 
  • एक Google Cloud Project (Vertex AI एक्सेस के लिए) या Google AI Studio का API कुंजी।

Gemini Live API क्या है? 

मूल रूप से, Gemini Live API Google का डेवलपर टूल है जो आपको Gemini मॉडलों के साथ रियल-टाइम वॉयस और विज़न इंटरैक्शन बनाने देता है। टर्न-आधारित टेक्स्ट प्रतिक्रियाओं का इंतज़ार करने के बजाय, यह उपयोगकर्ता और AI एजेंट के बीच सतत, स्वाभाविक बातचीत सक्षम करता है। 

तकनीकी रूप से, Gemini Live API द्विदिश, रियल-टाइम स्ट्रीमिंग के लिए डिज़ाइन किया गया है। मानक HTTP REST APIs, जो स्टेटलेस रिक्वेस्ट-रिस्पॉन्स चक्रों का उपयोग करते हैं, उनसे अलग, Live API एक स्टेटफुल, पर्सिस्टेंट WebSocket (WSS) कनेक्शन पर आधारित है। इस खुले चैनल के माध्यम से, क्लाइंट कच्चा ऑडियो, वीडियो (लगभग 1 FPS पर इमेज फ़्रेम के रूप में ट्रांसमिट) और टेक्स्ट स्ट्रीम करता है, जबकि मॉडल तुरंत, नैटिव ऑडियो और टेक्स्ट वापस स्ट्रीम करता है।

Gemini Live की प्रमुख क्षमताएँ

  • Barge-in (इंटरप्टिबिलिटी): स्वाभाविक मानवीय बातचीत में, यदि हमें कुछ स्पष्ट करना हो, तो हम दूसरे व्यक्ति के पूरे पैराग्राफ खत्म होने का इंतज़ार नहीं करते। Gemini Live में barge-in बॉक्स से बाहर सपोर्टेड है; उपयोगकर्ता वाक्य के बीच में भी मॉडल की स्पीच को बाधित कर सकते हैं, और सर्वर तुरंत ऑडियो स्ट्रीमिंग रोककर नए इनपुट के अनुसार ढल जाता है।
  • Affective डायलॉग और नैटिव ऑडियो: टेक्स्ट जनरेट करके उसे Text-to-Speech (TTS) इंजन में भेजने के बजाय, gemini-live-2.5-flash-native-audio और gemini-3.1-flash-live-preview जैसे मॉडल नैटिव रूप से ऑडियो प्रोसेस और आउटपुट करते हैं। इससे भावनात्मक नुअंस, हँसी, टोन एडाप्टेशन और स्पीच रिदम संरक्षित रहते हैं, जिससे इंटरैक्शन मानवीय-सा महसूस होता है। 
  • मल्टीमोडल इनपुट और टूल उपयोग: Live API केवल ऑडियो तक सीमित नहीं है। यह वीडियो फ़्रेम के माध्यम से आपके परिवेश को "देख" सकता है और रियल-टाइम में बाहरी फ़ंक्शंस या टूल्स (जैसे Google Search या कस्टम APIs) को ट्रिगर कर सकता है, और उनके परिणामों को वॉयस स्ट्रीम में फीड कर सकता है।

Gemini Live API की कीमत

क्योंकि रियल-टाइम स्ट्रीमिंग में सतत, फुल-डुप्लेक्स कनेक्शन शामिल होता है, इसलिए बिलिंग मॉडल मानक स्टैटिक टेक्स्ट APIs से अलग है। Google, Google AI Studio में प्रोटोटाइपिंग के लिए उदार फ्री टियर और Vertex AI पर प्रोडक्शन-रेडी पेड टियर दोनों प्रदान करता है। 

मॉडल gemini-3.1-flash-live-preview का बिलिंग प्रति मिलियन टोकन या 

ऑडियो और वीडियो मीडिया के लिए सीधे अवधि-आधारित मीट्रिक में कन्वर्ट करके होता है:

मीट्रिक

फ्री टियर (Google AI Studio)

पेड टियर (Vertex AI)

इनपुट कीमत (टेक्स्ट)

फ्री

$0.75 प्रति 1M टोकन

इनपुट कीमत (ऑडियो)

फ्री

$3.00 प्रति 1M टोकन (या $0.005 / मिनट)

इनपुट कीमत (इमेज/वीडियो)

फ्री

$1.00 प्रति 1M टोकन (या $0.002 / मिनट)

आउटपुट कीमत (टेक्स्ट)

फ्री

$4.50 प्रति 1M टोकन

आउटपुट कीमत (ऑडियो)

फ्री

$12.00 प्रति 1M टोकन (या $0.018 / मिनट)

Google Search के साथ ग्राउंडिंग

फ्री (रेट लिमिटेड)

पहले 5,000 प्रॉम्प्ट/माह फ्री, उसके बाद $14 प्रति 1,000 क्वेरी

यदि आप प्रोटोटाइपिंग कर रहे हैं, तो मैं Google AI Studio में फ्री में टेस्ट करने की सिफारिश करता हूँ, जो रेट लिमिट के अधीन उदार एक्सेस देता है। 

जब आप स्केल के लिए तैयार हों, तो आप अपने प्रोजेक्ट को Vertex AI पर प्रोडक्शन पे-एज़-यू-गो प्रोविज़निंग में ट्रांज़िशन कर सकते हैं, जो गारंटीड थ्रूपुट और एंटरप्राइज़-ग्रेड SLA प्रदान करता है।

Gemini Live API तक कैसे पहुँचें

एक डेवलपर के रूप में, Live API को लागू करते समय आपके पास कुछ आर्किटेक्चरल विकल्प होते हैं। चूँकि यह WebSockets पर निर्भर है, आप कनेक्शन को कैसे रूट करते हैं, यह लेटेंसी और सुरक्षा के लिए मायने रखता है।

क्लाइंट-टू-सर्वर बनाम सर्वर-टू-सर्वर

  • क्लाइंट-टू-सर्वर: आपका फ्रंटएंड (जैसे, वेब या मोबाइल ऐप) सीधे Google के WebSocket एंडपॉइंट से कनेक्ट होता है। यह लेटेंसी को कम करने के लिए सर्वोत्तम तरीका है क्योंकि ऑडियो स्ट्रीम को अतिरिक्त हॉप्स नहीं लेने पड़ते। 
    • हालाँकि, आप अपने रॉ Google Cloud API कीज को फ्रंटएंड क्लाइंट में उजागर नहीं कर सकते; आपको सुरक्षित क्लाइंट एक्सेस के लिए अस्थायी, अल्पकालिक टोकन जनरेट करने वाला ऑथेंटिकेशन फ्लो लागू करना होगा।
  • सर्वर-टू-सर्वर: आपका फ्रंटएंड आपके अपने बैकएंड सर्वर को ऑडियो स्ट्रीम करता है, जो फिर Gemini Live API के लिए WebSocket खोलता है। यह अत्यधिक सुरक्षित है और आपको बैकएंड लॉजिक (जैसे उपयोगकर्ता प्रमाणीकरण या डेटाबेस लुकअप) जोड़ने देता है, लेकिन यह ऑडियो स्ट्रीम में थोड़ा नेटवर्क विलंब जोड़ता है।

SDKs और पार्टनर इंटीग्रेशन

भले ही आप रॉ WebSocket कोड लिख सकते हैं, शुरुआत करने का सबसे आसान तरीका Google का GenAI SDK या Agent Development Kit (ADK) का उपयोग करना है। 

एंटरप्राइज़ प्रोडक्शन के लिए, इकोसिस्टम ने WebRTC इंटीग्रेशन को सपोर्ट करने के लिए तेज़ी से विकास किया है। LiveKit, Daily का Pipecat, Twilio और Voximplant जैसे प्लेटफ़ॉर्म नेटवर्क जिटर, इको कैंसलेशन, और रियल-टाइम ऑडियो रूटिंग को सीधे Gemini Live API में संभालने के लिए मज़बूत इन्फ्रास्ट्रक्चर प्रदान करते हैं।

Gemini Live API के साथ रियल-टाइम वॉयस असिस्टेंट बनाना

आइए इसे अमल में लाएँ। हम एक AI Travel Concierge बनाने जा रहे हैं। 

यह एजेंट Gemini Live API का उपयोग करके उपयोगकर्ताओं से वॉयस पर बातचीत करेगा, और उससे भी महत्वपूर्ण, बातचीत के बीच में रियल-टाइम फ़्लाइट स्टेटस देखने के लिए कस्टम Python फ़ंक्शंस तक इसकी पहुँच होगी।

हम Google Agent Development Kit (ADK) और शक्तिशाली gemini-3.1-flash-live-preview मॉडल का उपयोग करेंगे, जो मानक टेक्स्ट टर्न्स और रियल-टाइम WebSocket स्ट्रीमिंग, दोनों के लिए ऑप्टिमाइज़्ड है।

1. वातावरण सेट करना

पहले, आपको एक Python वर्चुअल एनवायरनमेंट सेट करना होगा और आवश्यक ADK पैकेज इंस्टॉल करना होगा। अपने टर्मिनल में ये कमांड चलाएँ:

# Create and activate a virtual environment
python3 -m venv .venv
source .venv/bin/activate
# Install the Agent Development Kit
pip install google-adk

अगला, अपने वातावरण वेरिएबल्स कॉन्फ़िगर करें ताकि ADK आपके Google Cloud प्रोजेक्ट के साथ सुरक्षित रूप से ऑथेंटिकेट कर सके:

export GOOGLE_CLOUD_PROJECT="your-project-id" 
export GOOGLE_CLOUD_LOCATION="us-central1"

यदि आप Google AI Studio से Gemini API कुंजी का उपयोग कर रहे हैं, तो अपनी रूट फ़ोल्डर में एक .env फ़ाइल बनाएँ:

GEMINI_API_KEY=your_google_ai_studio_api_key

2. Gemini Live एजेंट को प्रारंभ करना 

अपने प्रोजेक्ट डायरेक्टरी में agent.py नाम की एक फ़ाइल बनाएँ। ADK को root_agent वेरिएबल को स्वतः डिटेक्ट और रन करने के लिए डिज़ाइन किया गया है। इस कोड में, हम फ़्लाइट स्टेटस की जाँच के लिए एक कस्टम Python फ़ंक्शन परिभाषित करेंगे, और फिर उसे सीधे एजेंट के टूलबेल्ट में पास करेंगे। एजेंट डायरेक्टरी इनिशियलाईज़ करें: 

mkdir voice_assistant 
touch voice_assistant/__init__.py 
touch voice_assistant/agent.py

voice_assistant/__init__.py के अंदर एजेंट पैकेज एक्सपोज़ करें:

from . import agent

3. एजेंट परिभाषित करना और कस्टम टूल्स एक्सपोज़ करना 

voice_assistant/agent.py खोलें और ट्रैवल एजेंट कॉन्फ़िगरेशन लिखें। नीचे दिए गए कोड में, हम एक मानक Python फ़ंक्शन check_flight_status परिभाषित करते हैं। 

Google ADK में, कोई भी Python फ़ंक्शन जो उचित टाइप हिंट और डॉक्स्ट्रिंग के साथ हो, स्वतः एजेंट टूल में बदल जाता है। LLM डॉक्स्ट्रिंग विवरण और पैरामीटर्स का उपयोग यह तय करने के लिए करता है कि फ़ंक्शन को कब और कैसे कॉल किया जाए। 

मॉडल कॉन्फ़िगरेशन 

ADK डेवलपमेंट सर्वर में दोनों इंटरैक्शन मोड्स का समर्थन करने के लिए—मानक टेक्स्ट चैट (जो मानक REST generateContent एंडपॉइंट्स का उपयोग करता है) और रियल-टाइम द्विदिश WebSocket माइक्रोफ़ोन इंटरफ़ेस—हम स्पष्ट रूप से मॉडल को gemini-3.1-flash-live-preview पर सेट करते हैं।

पुराने स्ट्रीमिंग-ओनली मॉडलों के विपरीत, जो मानक HTTP REST रिक्वेस्ट्स पर ट्रिगर होने पर 404 Not Found लौटाते हैं, gemini-3.1-flash-live-preview नैटिव रूप से मानक REST कंटेंट जनरेशन और स्टेटफुल WebSocket स्ट्रीमिंग दोनों को सपोर्ट करता है।

from google.adk.agents.llm_agent import Agent
from google.adk.tools import google_search
def check_flight_status(flight_no: str) -> str:
   """Check the real-time flight status (e.g. delays, gate info, cancellations).
   Args:
       flight_no: The flight number to look up (e.g., AA120, DL450, UA990).
   """
   flight_no = flight_no.upper().strip()
   if "AA120" in flight_no:
       return "Flight AA120 to Paris is currently delayed by 45 minutes due to air traffic control. New departure time: 3:15 PM. Gate status: B22."
   elif "DL450" in flight_no:
       return "Flight DL450 to London is on time. Gate status: Boarding now at Gate C10."
   elif "UA990" in flight_no:
       return "Flight UA990 to Tokyo is cancelled due to adverse weather conditions at the destination. Passengers are advised to rebook at the counter."
   else:
       return f"Flight {flight_no} is currently scheduled on time. No delay reports found in the flight database."
# Define the root agent with search grounding and custom database flight checks
root_agent = Agent(
   model='gemini-3.1-flash-live-preview',
   name='root_agent',
   description='A real-time AI Travel Concierge with flight tracking and search grounding.',
   instruction=(
       'You are an expert AI Travel Concierge. You assist users with real-time flight status checkups, '
       'destination recommendations, and general travel planning. '
       'Always answer professionally and conversationally. '
       'Use the check_flight_status tool when a user asks about a specific flight status. '
       'Use Google Search to look up weather, transit conditions, or travel advisories at destinations.'
   ),
   tools=[google_search, check_flight_status],
)

4. इंटरैक्टिव डेव UI चलाना और टेस्ट करना

ADK में एक बिल्ट-इन डेवलपमेंट सर्वर और वेब UI शामिल है। इससे आप बिना कोई फ्रंटएंड कोड लिखे अपने एजेंट को लोकली टेस्ट कर सकते हैं। अपने वर्कस्पेस से वेब सर्वर शुरू करें:

.venv/bin/adk web .

आपको ऐसा आउटपुट दिखेगा जो संकेत देगा कि सर्वर शुरू हो गया है:

adk web command in terminal

  1. अपने वेब ब्राउज़र में http://127.0.0.1:8000 खोलें।
  2. एप्लिकेशन सूची से अपना एजेंट चुनें।
  3. लाइव सत्र शुरू करने के लिए माइक्रोफ़ोन बटन पर क्लिक करें।

adk web interface

चैट इंटरफ़ेस खोलने के लिए एप्लिकेशन सूची से root_agent चुनें।

4. अपने माइक्रोफ़ोन में बोलें: क्या आप फ़्लाइट AA120 की स्थिति जाँच सकते हैं? एजेंट आपके अनुरोध को पार्स करेगा, पहचानेगा कि उसे डेटाबेस जानकारी चाहिए, कस्टम check_flight_status Python फ़ंक्शन को ट्रिगर करेगा, और आपको आवाज़ में जवाब देने से पहले JSON टूल कॉल का परिणाम दिखाएगा।

chatting with voice_assistant

5. Google Search ग्राउंडिंग का परीक्षण:  अब, कांसिएर्ज से डेस्टिनेशन वेदर का सवाल पूछें: इस समय लंदन में मौसम कैसा है? एजेंट बिल्ट-इन google_search टूल को सक्रिय करेगा, वेब को क्रॉल करेगा, और लाइव कंडीशंस को अपने ऑडियो आउटपुट में समाहित करेगा।

agent response

6. Barge-in फीचर का परीक्षण: ऐसा व्यापक सवाल पूछें: रोम में घूमने के लिए सबसे अच्छे ऐतिहासिक स्थलों के बारे में बताइए। जैसे ही एजेंट स्थानों की सूची देना शुरू करे, उस पर ज़ोर से बोलकर रुकावट डालें: रुकिए, दरअसल! UA990 फ़्लाइट चेक करें! एजेंट तुरंत अपनी स्पीच स्ट्रीम रोक देगा, रोम के विवरणों को बीच में रोकेगा, कस्टम फ़्लाइट ट्रैकर टूल चलाएगा, और बताएगा कि फ़्लाइट UA990 रद्द कर दी गई है। यह Live API कनेक्शन की लो-लेटेंसी, फुल-डुप्लेक्स प्रकृति को दर्शाता है।

Follow up question for agent

Gemini Live API प्रोडक्शन के लिए सर्वोत्तम प्रक्रियाएँ

रियल-टाइम वॉयस एप्लिकेशन बनाते समय प्रॉम्प्ट आर्किटेक्चर, नेटवर्क स्टेट मैनेजमेंट, ऑडियो इन्जेशन और रिसोर्स स्केलिंग के इर्द-गिर्द विशिष्ट आवश्यकताएँ आती हैं। नीचे आधिकारिक डेवलपर दिशानिर्देशों से निकाली गई प्रमुख सर्वोत्तम प्रक्रियाएँ दी गई हैं।

1. स्पष्ट सिस्टम इंस्ट्रक्शंस डिज़ाइन करना

Gemini Live से सर्वोत्तम प्रदर्शन पाने के लिए, अपने सिस्टम इंस्ट्रक्शंस (SIs) को एक सख्त पदानुक्रम में संरचित करें: Persona, Conversational Rules, और Guardrails।

  • अलग-अलग पर्सोना रखें: प्रत्येक एजेंट की भूमिका को एक ही, स्पष्ट सिस्टम इंस्ट्रक्शन तक सीमित रखें, बजाय इसके कि एक एजेंट पर कई पर्सोना लादें।
  • बातचीत प्रवाह की रेखाएँ खींचें: एक-बार होने वाले तत्वों (उदा., "उपयोगकर्ता से उनका नाम और टिकट नंबर केवल एक बार पूछें") को खुले-छोर वाले संवाद लूप से स्पष्ट रूप से अलग करें (उदा., "जब तक वे चाहें यात्रा सिफारिशों पर प्रश्नों का उत्तर दें")।
  • टूल आह्वान वाक्यों में लिखें: टूल उपयोग का क्रमवार वर्णन करें। उदाहरण: 'पहले, उपयोगकर्ता से उनका टिकट नंबर देने के लिए कहें। फिर इस नंबर के साथ look_up_ticket को इनवोक करें।'
  • भाषा सुसंगतता लागू करें: नैटिव ऑडियो मॉडल संदर्भ बदलने पर भाषा में भटक सकते हैं। यदि आपका एजेंट केवल अंग्रेज़ी में है, तो अपनी इंस्ट्रक्शन में इसे लागू करें: RESPOND IN English. YOU MUST RESPOND UNMISTAKABLY IN English.

2. सटीक टूल परिभाषाएँ और आह्वान शर्तें

Live API को टूल्स एक्सपोज़ करते समय:

  • हमेशा टाइप एनोटेशन और विस्तृत पैरामीटर विवरण शामिल करें।
  • टूल के मेटाडेटा विवरण के भीतर आह्वान शर्तों को स्पष्ट रूप से डॉक्यूमेंट करें (उदा., "इस टूल को केवल तब इनवोक करें जब उपयोगकर्ता ने अपनी प्रस्थान तिथि और गंतव्य की पुष्टि कर दी हो"). इससे LLM को समय से पहले फ़ंक्शंस ट्रिगर करने से रोका जा सकता है।

3. नैटिव ऑडियो संदर्भ का प्रबंधन (कम्प्रेशन)

नैटिव ऑडियो टोकन तेज़ी से इकट्ठे होते हैं, लगभग 25 टोकन प्रति सेकंड बातचीत। लंबी वॉयस सत्रों के लिए, यह संदर्भ विंडो को जल्दी भर सकता है और लेटेंसी बढ़ा सकता है।

  • ContextWindowCompressionConfig को अपनी कनेक्शन सेटिंग्स में सक्षम करें ताकि एक थ्रेशहोल्ड पहुँचने पर पुराना इतिहास हटाया जा सके:
from google.genai import types
live_config = types.LiveConnectConfig(
   context_window_compression=types.ContextWindowCompressionConfig(
       trigger_tokens=100_000,
       sliding_window=types.SlidingWindow(target_tokens=4_000),
   ),
)

नोट: संदर्भ कम्प्रेशन से पुराना वार्तालाप इतिहास खो जाएगा।

4. पारदर्शी सत्र पुनरारंभ

रियल-टाइम मोबाइल कनेक्शन पैकेट लॉस और अस्थायी डिसकनेक्शन के प्रति संवेदनशील होते हैं। बिल्कुल नई बातचीत स्थिति से शुरू करने के बजाय, पारदर्शी सत्र पुनरारंभ लागू करें:

  • SessionResumptionConfig(transparent=True) के साथ अपनी स्ट्रीम कॉन्फ़िगर करें।
  • सर्वर से session_resumption_update ईवेंट्स सुनें और new_handle स्टोर करें।
  • आउटगोइंग संदेशों का एक लोकल बफ़र बनाए रखें। जब कनेक्शन ड्रॉप हो, तो APIError या GoAway सिग्नल पकड़ें, सेव किए गए हैंडल का उपयोग कर पुन: कनेक्ट करें, और केवल अनएक्नॉलेज्ड क्लाइंट संदेशों को फिर से चलाएँ (बफ़र को ट्रिम करने के लिए server-reported last_consumed_client_message_index का उपयोग करें)।

5. ऑडियो स्ट्रीमिंग अनुकूलन

  • क्लाइंट बफ़रिंग: भेजने से पहले क्लाइंट पर लंबी ऑडियो फ़्रेम बफ़र न करें। एंड-टू-एंड लेटेंसी को कम से कम रखने के लिए 20 ms से 40 ms के बीच छोटे-छोटे ऑडियो चंक्स लगातार स्ट्रीम करें।
  • माइक्रोफ़ोन री-सम्पलिंग: सुनिश्चित करें कि क्लाइंट-साइड ऑडियो कैप्चर इनपुट्स (आमतौर पर 44.1 kHz या 48 kHz) को WebSocket पर भेजने से पहले 16 kHz PCM में री-सम्पल करता है।
  • स्पष्ट VAD सिग्नल: मॉडल को Voice Activity Detection (VAD) संभालने दें। यदि आपके फ्रंटएंड को तुरंत UI संकेतक दिखाने हैं (उदा., "AI सुन रहा है" बनाम "AI सोच रहा है"), तो अपने कॉन्फ़िगरेशन में explicit_vad_signal=True सक्षम करें ताकि आपको सर्वर संदेश प्रवाह में सीधे VAD स्टार्ट/स्टॉप ईवेंट्स मिलें।

6. सुरक्षा (टोकन प्रबंधन)

  • मास्टर कीज को कभी हार्डकोड न करें: अपने AI Studio API कुंजी या Google Cloud Service Account क्रेडेंशियल्स को क्लाइंट-साइड कोड (ब्राउज़र्स या मोबाइल ऐप्स) में उजागर करने से बचें।
  • एपेhemeral टोकन एक्सचेंज परिनियोजित करें: अपने सुरक्षित बैकएंड पर एक ऑथेंटिकेशन एंडपॉइंट बनाएँ। जब कोई क्लाइंट वॉयस सत्र शुरू करना चाहता है, तो बैकएंड अल्पकालिक, सीमित OAuth या API एक्सेस टोकन (उदा., Vertex AI IAM के माध्यम से) जनरेट करता है और उसे क्लाइंट को पास करता है। क्लाइंट इस अस्थायी क्रेडेंशियल का उपयोग करके डायरेक्ट WebSocket कनेक्शन खोलता है।

निष्कर्ष: संवादात्मक AI का क्षितिज

टर्न-आधारित, केवल टेक्स्ट LLMs से लो-लेटेंसी, मल्टीमोडल स्ट्रीमिंग की ओर संक्रमण, मानवीय-कंप्यूटर इंटरफ़ेस बनाने के तरीके में एक पराडाइम शिफ्ट दर्शाता है। स्टेटफुल WebSocket कनेक्शंस के माध्यम से ऑडियो और वीडियो को नैटिव रूप से प्रोसेस करके, Gemini Live API हमें ऐसे एजेंटिक अनुभव बनाने देता है जो स्थिर सॉफ़्टवेयर प्रोग्राम्स जैसे नहीं, बल्कि तरल मानवीय इंटरैक्शन जैसे लगते हैं।

पूरे इस गाइड में, हमने Gemini Live की आंतरिक आर्किटेक्चर की खोज की, मूल्य निर्धारण मॉडल देखे, और Google Agent Development Kit (ADK) का उपयोग करके एक पूर्णत: कार्यशील AI Travel Concierge बनाया। हमने देखा कि ADK कैसे मानक Python फ़ंक्शंस को सक्रिय एजेंट टूल्स में मैप करता है, जिससे हमारे वॉयस असिस्टेंट को व्यापक वेब-आधारित सर्च ग्राउंडिंग और निजी आंतरिक डेटाबेस लुकअप दोनों तक पहुँच मिलती है।

अब आगे क्या बनाएँ? 

अब जब आपने रियल-टाइम वॉयस एजेंट्स की बुनियाद समझ ली है, तो अपने AI Travel Concierge का विस्तार करें: 

  1. लाइव वीडियो स्ट्रीम्स एक्सपोज़ करें: कैमरा इमेज ट्रांसमिशन सपोर्ट जोड़ें ताकि कांसिएर्ज रियल-टाइम में नक्शे, बोर्डिंग पास या भौतिक ट्रैवल वाउचर "देख" सके। 
  2. ट्रांज़ैक्शनल कस्टम टूल्स इंटीग्रेट करें: ऐसा book_flight या reserve_hotel टूल लागू करें जो वास्तविक स्टेट को बदलता हो, और सुरक्षित उपयोगकर्ता पुष्टि के लिए ऑथेंटिकेशन स्कोप्स इंटीग्रेट करें। 
  3. प्रोडक्शन मिडलवेयर रूटिंग: लोकल ADK परीक्षण से WebRTC-आधारित फ्रेमवर्क (LiveKit या Pipecat) पर जाएँ ताकि वेब और मोबाइल ऐप्स से प्रोडक्शन वॉयस कॉल्स सीधे स्ट्रीम की जा सकें।

और उन्नत संवादात्मक वर्कफ़्लोज़ बनाना चाहते हैं? DataCamp का AI Agent Fundamentals स्किल ट्रैक देखें ताकि एजेंटिक आर्किटेक्चर, टूल उपयोग और जनरेटिव AI डिप्लॉयमेंट्स का ज्ञान गहरा कर सकें।

Aryan Irani

लेखक

Aryan Irani

मैं इंटरनेट पर लिखता और निर्माण करता हूँ। Google Workspace के लिए Google Developer Expert, NMIMS से कंप्यूटर साइंस स्नातक, और ऑटोमेशन व जनरेटिव AI क्षेत्र में उत्साही निर्माता।

विषय