1. Bidi-streaming là gì?
Truyền trực tuyến hai chiều (bidi-streaming) cho phép giao tiếp hai chiều đồng thời giữa ứng dụng và các mô hình AI. Không giống như các mẫu yêu cầu-phản hồi truyền thống, nơi bạn gửi một thông báo hoàn chỉnh và chờ phản hồi hoàn chỉnh, tính năng truyền phát trực tuyến hai chiều cho phép:
- Đầu vào liên tục: Phát trực tuyến âm thanh, video hoặc văn bản khi được ghi lại
- Đầu ra theo thời gian thực: Nhận phản hồi của AI khi phản hồi được tạo
- Ngắt lời tự nhiên: Người dùng có thể ngắt lời AI khi AI đang phản hồi, giống như trong cuộc trò chuyện giữa người với người

Tại sao điều này lại quan trọng: Bidi-streaming giúp các cuộc trò chuyện với AI trở nên tự nhiên. AI có thể phản hồi trong khi bạn vẫn đang cung cấp bối cảnh và bạn có thể ngắt lời AI khi đã nghe đủ thông tin – giống như khi nói chuyện với một người thật.
Bộ công cụ ADK Gemini Live API là gì?
Bộ công cụ phát triển tác nhân (ADK) cung cấp một lớp trừu tượng cấp cao trên Gemini Live API, xử lý hệ thống phức tạp của tính năng phát trực tiếp theo thời gian thực để bạn có thể tập trung vào việc xây dựng ứng dụng của mình.

Bộ công cụ ADK Gemini Live API quản lý:
- Vòng đời kết nối: Thiết lập, duy trì và khôi phục các kết nối WebSocket
- Định tuyến tin nhắn: Chuyển âm thanh, văn bản và hình ảnh đến đúng trình xử lý
- Trạng thái phiên: Lưu trữ nhật ký trò chuyện trong các lần kết nối lại
- Thực thi công cụ: Tự động gọi và tiếp tục từ các lệnh gọi hàm
Tại sao nên dùng ADK thay vì Live API thô?
Bạn có thể xây dựng trực tiếp trên Gemini Live API, nhưng ADK sẽ xử lý cơ sở hạ tầng phức tạp để bạn có thể tập trung vào ứng dụng của mình:

Khả năng | Raw Live API | Bộ công cụ ADK Gemini Live API |
Khung tác nhân | Tạo từ đầu | Một/nhiều tác nhân có công cụ, đánh giá, bảo mật |
Thực thi công cụ | Xử lý thủ công | Thực thi song song tự động |
Quản lý kết nối | Kết nối lại theo cách thủ công | Tiếp tục phiên một cách minh bạch |
Mô hình sự kiện | Cấu trúc tuỳ chỉnh | Các đối tượng Sự kiện hợp nhất, được nhập |
Khung không đồng bộ | Điều phối thủ công | LiveRequestQueue + trình tạo run_live() |
Tính liên tục của phiên | Triển khai thủ công | SQL tích hợp, Vertex AI hoặc trong bộ nhớ |
Kết luận: ADK giúp giảm thời gian phát triển cơ sở hạ tầng từ nhiều tháng xuống còn vài ngày phát triển ứng dụng. Bạn tập trung vào những việc mà tác nhân của bạn làm, chứ không phải cách hoạt động của dịch vụ phát trực tuyến.
Các trường hợp sử dụng trong thực tế
- Dịch vụ khách hàng: Khách hàng cho nhân viên xem chiếc máy pha cà phê bị lỗi qua camera điện thoại trong khi giải thích vấn đề. AI sẽ xác định mô hình và điểm lỗi, đồng thời khách hàng có thể ngắt lời để chỉnh sửa thông tin trong cuộc trò chuyện.
- Thương mại điện tử: Một người mua sắm giơ quần áo lên webcam và hỏi "Tìm giày phù hợp với chiếc quần này". Trợ lý phân tích phong cách và tương tác một cách linh hoạt: "Cho tôi xem kiểu nào thoải mái hơn" → "Đôi giày thể thao này thì sao?" → "Thêm những chiếc màu xanh dương cỡ 10."
- Dịch vụ tại hiện trường: Một kỹ thuật viên đeo kính thông minh truyền trực tiếp hình ảnh mà họ nhìn thấy trong khi hỏi "Tôi nghe thấy tiếng động lạ phát ra từ máy nén này. Bạn có thể xác định được tiếng động đó không?" Tác nhân cung cấp hướng dẫn từng bước bằng giọng nói.
- Chăm sóc sức khoẻ: Một bệnh nhân chia sẻ video trực tiếp về tình trạng da của mình. AI sẽ thực hiện phân tích sơ bộ, đặt câu hỏi làm rõ và hướng dẫn các bước tiếp theo.
- Dịch vụ tài chính: Một khách hàng xem xét danh mục đầu tư của họ trong khi nhân viên tư vấn hiển thị biểu đồ và mô phỏng tác động của giao dịch. Khách hàng có thể chia sẻ màn hình để thảo luận về các tin bài cụ thể.
Bản minh hoạ 2 về Trợ lý mua sắm: Bản minh hoạ RAG dựa trên tác nhân theo thời gian thực cho thương mại điện tử, được xây dựng bằng Bộ công cụ ADK Gemini Live API và Vertex AI Vector Search, Embeddings, Feature Store và Ranking API:

Tìm hiểu thêm: Hướng dẫn cho nhà phát triển
Để nghiên cứu chuyên sâu, hãy xem Hướng dẫn cho nhà phát triển về Bộ công cụ ADK Gemini Live API – một loạt 5 phần bao gồm từ kiến trúc đến việc triển khai phát hành công khai:
Phần | Tiêu điểm | Kiến thức bạn sẽ học được |
Tổ chức | Kiến trúc, Nền tảng API trực tiếp, vòng đời 4 giai đoạn | |
Upstream | Gửi văn bản, âm thanh, video qua LiveRequestQueue | |
Hạ nguồn | Xử lý sự kiện, thực thi công cụ, quy trình làm việc có nhiều tác nhân | |
Cấu hình | Quản lý phiên, hạn mức, chế độ kiểm soát sản xuất | |
Đa phương thức | Thông số kỹ thuật âm thanh, cấu trúc mô hình, các tính năng nâng cao |
2. Tổng quan về hội thảo
Sản phẩm bạn sẽ tạo ra
Trong hội thảo thực hành này, bạn sẽ tạo một ứng dụng AI truyền trực tuyến hai chiều hoàn chỉnh từ đầu. Khi kết thúc, bạn sẽ có một AI giọng nói hoạt động được và có thể:
- Chấp nhận dữ liệu đầu vào là văn bản, âm thanh và hình ảnh
- Phản hồi bằng văn bản truyền trực tiếp hoặc lời nói tự nhiên
- Xử lý các yêu cầu gián đoạn một cách tự nhiên
- Sử dụng các công cụ như Google Tìm kiếm
Không giống như việc đọc tài liệu, bạn sẽ xem xét từng thành phần theo từng bước, hiểu cách các thành phần khớp với nhau khi bạn tạo từng bước.

Phương pháp học tập
Chúng tôi áp dụng phương pháp tạo bản dựng tăng dần:
- Bước 1: Máy chủ WebSocket tối thiểu → Phản hồi "Hello World"
- Bước 2: Thêm Agent → Xác định hành vi và công cụ của AI
- Bước 3: Khởi chạy ứng dụng → Trình chạy và dịch vụ phiên
- Bước 4: Khởi chạy phiên → RunConfig và LiveRequestQueue
- Bước 5: Tác vụ thượng nguồn → Giao tiếp từ ứng dụng đến hàng đợi
- Bước 6: Tác vụ hạ lưu → Sự kiện truyền trực tuyến đến ứng dụng
- Bước 7: Thêm âm thanh → Nhập bằng giọng nói và đầu ra bằng giọng nói
- Bước 8: Thêm dữ liệu đầu vào là hình ảnh → AI đa phương thức
Mỗi bước đều dựa trên bước trước đó. Bạn sẽ kiểm tra sau mỗi bước để xem tiến trình của mình.
Điều kiện tiên quyết
- Tài khoản Google Cloud có bật tính năng thanh toán
- Kiến thức cơ bản về Python và lập trình không đồng bộ (không đồng bộ/chờ)
- Trình duyệt web có quyền truy cập vào micrô và camera web (nên dùng Chrome)
Thời gian ước tính
- Hội thảo đầy đủ: Khoảng 90 phút
- Phiên bản nhanh (Chỉ các bước 1-4): ~45 phút
3. Hội thảo
Bắt đầu hội thảo bằng cách làm theo hướng dẫn tại đây:
https://github.com/kazunori279/adk-streaming-guide/blob/main/workshops/workshop.md
4. Tổng kết và những điểm chính cần ghi nhớ
Sản phẩm bạn đã tạo
Bạn đã tạo một ứng dụng AI phát trực tuyến hai chiều hoàn chỉnh từ đầu. Ứng dụng này xử lý văn bản, giọng nói và hình ảnh đầu vào bằng các câu trả lời truyền trực tuyến theo thời gian thực – nền tảng để xây dựng AI đàm thoại sẵn sàng cho hoạt động sản xuất.
Thành phần | Chức năng | Bước |
Nhân viên hỗ trợ | Xác định tính cách, hướng dẫn và các công cụ hiện có của AI (ví dụ: Google Tìm kiếm) | Bước 2 |
SessionService | Lưu lịch sử cuộc trò chuyện trong quá trình kết nối lại | Bước 3 |
Người chạy | Điều phối vòng đời phát trực tiếp, kết nối nhân viên hỗ trợ với Live API | Bước 3 |
RunConfig | Định cấu hình phương thức phản hồi (TEXT/AUDIO), bản chép lời, tiếp tục phiên | Bước 4 |
LiveRequestQueue | Giao diện hợp nhất để gửi văn bản, âm thanh và hình ảnh đến mô hình | Bước 5 |
run_live() | Trình tạo không đồng bộ tạo ra các sự kiện truyền trực tuyến từ mô hình | Bước 6 |
send_realtime() | Gửi các blob âm thanh/hình ảnh để truyền trực tuyến liên tục làm thông tin đầu vào | Bước 7 – 8 |
Tài nguyên
Tiếp tục tìm hiểu qua các tài nguyên chính thức này. Hướng dẫn về Bộ công cụ ADK Gemini Live API cung cấp thông tin chi tiết hơn về mọi nội dung trong hội thảo này.
Tài nguyên | URL |
Tài liệu về ADK | |
Hướng dẫn về Bộ công cụ ADK Gemini Live API | |
Gemini Live API | |
Vertex AI Live API | https://cloud.google.com/vertex-ai/generative-ai/docs/live-api |
Kho lưu trữ mẫu ADK |