Cuộc sống không chỉ có vậy, sự nỗ lực không ngừng nghỉ. Có rất nhiều kỹ sư đã thử kết hợp MCU với ChatGPT của OpenAI để tạo ra các trợ lý ảo, trợ lý giọng nói và giao diện ngôn ngữ tự nhiên.
Vài ngày trước, khi OpenAI chính thức phát hành mô hình o3, họ cũng đã công bố một Realtime API SDK có thể sử dụng trên Linux và MCU 32 bit, thu hút sự quan tâm của nhiều kỹ sư.
OpenAI đã tạo ra một SDK cho MCU 32 bit
Gần đây, OpenAI đã công bố một SDK có thể sử dụng Open Realtime API trên các vi điều khiển như ESP32 trên kho lưu trữ GitHub chính thức của họ. Dự án này đã được phát triển và kiểm tra trên ESP32-S3 và Linux, cho phép nhà phát triển sử dụng trực tiếp theo hướng dẫn.
SDK này chủ yếu được thiết kế cho phần cứng nhúng, hiện chỉ được xác minh trên Espressif ESP32S3. SDK này được phát triển dựa trên công nghệ WebRTC mới nhất của OpenAI, cung cấp trải nghiệm thoại tương tác với độ trễ cực thấp.
Tại buổi ra mắt, OpenAI đã trình diễn một món đồ chơi AI theo chủ đề Giáng sinh, sử dụng MCU ESP32 bên trong. Trong demo, kỹ sư đã trao đổi 4-5 vòng với món đồ chơi AI, gần như là một cuộc trò chuyện tự nhiên, không có độ trễ hoặc thời gian phản hồi rõ ràng, tương tự như demo trên web trước đó.
Có gì trên Github
Theo trang Github (https://github.com/openai/openai-realtime-embedded-sdk), openai-realtime-embedded-sdk là một SDK được thiết kế riêng cho vi điều khiển, cho phép nhà phát triển triển khai chức năng Realtime API trên các vi điều khiển như ESP32.
SDK này chủ yếu được phát triển và kiểm tra trên nền tảng ESP32S3 và Linux, do đó nhà phát triển có thể sử dụng trực tiếp trên Linux mà không cần phần cứng vật lý.
Để sử dụng SDK này trên phần cứng, vui lòng mua một trong các vi điều khiển sau. Các MCU khác cũng có thể tương thích, nhưng SDK này được phát triển dựa trên các thiết bị sau:
Freenove ESP32-S3-WROOM;
Sonatino - ESP32-S3 Audio Development Board.
Tuy nhiên, chúng tôi nhận thấy trong thư mục ví dụ, ngoài ESP32, còn có một ví dụ chung và một ví dụ cho Raspberry Pi, trong đó phần cứng sử dụng Raspberry Pi 4B, Module Camera, ReSpeaker 2-Mics Pi HAT và Loa. Do đó, các thiết bị nhúng khác cũng có thể dần được hỗ trợ SDK này.
Bằng cách cấu hình SSID Wi-Fi, mật khẩu và khóa API OpenAI, người dùng có thể dễ dàng thiết lập thiết bị và chạy chương trình. Ưu điểm chính của SDK này là cung cấp cho vi điều khiển khả năng tương tác với API mạnh mẽ, mở rộng tiềm năng ứng dụng của vi điều khiển trong các kịch bản xử lý dữ liệu và ra quyết định thời gian thực.
Nhóm đối tượng: Đối tượng mục tiêu bao gồm các nhà phát triển hệ thống nhúng, nhà sản xuất thiết bị IoT và các nhà nghiên cứu cần triển khai khả năng ra quyết định thông minh trên vi điều khiển. SDK này đặc biệt phù hợp với những người tìm kiếm khả năng xử lý dữ liệu nâng cao trên các thiết bị có tài nguyên hạn chế nhờ tính dễ tích hợp và sử dụng.
Ví dụ về trường hợp sử dụng:
Nhà thông minh: Sử dụng SDK trên ESP32 để triển khai chức năng điều khiển bằng giọng nói;
Tự động hóa công nghiệp: Sử dụng SDK để vi điều khiển phản hồi dữ liệu cảm biến theo thời gian thực;
Lĩnh vực nghiên cứu: Sử dụng SDK để thực hiện suy luận mô hình học máy theo thời gian thực.
Theo phân tích của kỹ sư, demo cơ bản là một triển khai kỹ thuật, với ưu điểm lớn nhất là API của giao thức WebRTC đã đơn giản hóa đáng kể quy trình gọi API của nhà phát triển. Như mọi người đều biết, phát triển nhúng chủ yếu sử dụng C/C++, những ngôn ngữ cũ này rất phức tạp, đặc biệt khi liên quan đến các trường hợp thực tế, buộc phải xử lý thủ công nhiều tình huống. Với WebRTC, chỉ cần vài trăm dòng mã C là có thể hoàn thành demo này.
Xét về cấu trúc kho lưu trữ, chỉ có một commit duy nhất, với chỉ sáu tệp mã nguồn demo. Dự án sử dụng một số thư viện nguồn mở, bao gồm: libopus (để mã hóa/giải mã âm thanh), esp-protocols (để điều khiển phần cứng tích hợp của ESP, kết nối Wi-Fi, ghi âm, v.v.), libpeer (để giao tiếp WebRTC). Chương trình chính không có nội dung phức tạp, chỉ là gọi một số thư viện, bật Wi-Fi, bắt đầu ghi âm, phát, kết nối Wi-Fi, sau đó kết nối WebRTC đến API của OpenAI. Mỗi hàm chỉ khoảng 100 dòng, toàn bộ demo chỉ khoảng 300 dòng mã sau khi loại bỏ phần tương thích với PC.
Tại sao OpenAI lại chọn ESP32
Theo phân tích của kỹ sư, dựa trên yêu cầu sản phẩm, có hai yêu cầu cơ bản cho vi mạch điều khiển đồ chơi AI thoại:
Khả năng kết nối mạng, bất kể là Wi-Fi hay Bluetooth;
Xử lý giọng nói, hỗ trợ ghi âm và phát.
Đây là những yêu cầu cứng, các chức năng khác không quan trọng lắm, đặc biệt là khả năng xử lý video như màn hình lớn, mà đồ chơi AI恰好không cần đến.
So với vi điều khiển truyền thống, ESP32 là một "tân binh" nổi bật trong kỷ nguyên nhà thông minh, hoàn toàn đáp ứng được những yêu cầu này.
Thứ nhất, ESP32 có giá rẻ, tích hợp cao, chỉ vài đô la Mỹ cho một con chip;
Thứ hai, thiết kế bản thân ESP32 hướng đến các ứng dụng tiêu thụ điện năng thấp, kết hợp pin có thể đạt được thời gian hoạt động hàng tuần hoặc hàng tháng;
Thứ ba, ESP32 đã tích hợp sẵn Wi-Fi, Bluetooth và chức năng xử lý giọng nói, loại bỏ nhu cầu các mô-đun ngoại vi, giảm độ phức tạp của bảng mạch in và cải thiện thời lượng pin của sản phẩm.
So với các giải pháp vi điều khiển thông thường khác, mặc dù có nhiều cách triển khai khác nhau, nhưng phương án đơn giản, tiết kiệm nhất vẫn là sử dụng ESP32. Vậy thì có kỹ sư phần cứng nào lại có thể từ chối thiết kế chỉ với một con chip chứ?
Nhiều SDK nhúng khác đang trên đường
Tại "Hội nghị Sức mạnh Động lực Mùa đông Lửa núi 2024", nhiều nhà sản xuất phần cứng đã trình diễn các sản phẩm demo dựa trên công nghệ RTC. Tại hội nghị này, quản lý sản phẩm của Byte cũng đề cập đến SDK nhúng, mặc dù không tiết lộ chi tiết các mẫu phần cứng được hỗ trợ, nhưng không thể chối cãi rằng SDK đang trên đường.
Apex.AI cũng đang làm việc trên điều này. Theo Apex.AI, sản phẩm Apex.Grace đã tăng cường ROS 2, và Apex.Ida đã tăng cường Eclipse iceoryx. Thông qua SDK Apex.AI dành cho vi xử lý, chúng tôi cung cấp thêm nhiều tính năng, cải thiện chức năng và chứng nhận bảo mật bổ sung trên cơ sở các dự án nguồn mở. Khi ra mắt các SDK Apex.AI mới cho vi điều khiển, chúng tôi sẽ tiếp tục hành trình thành công này dựa trên các dự án nguồn mở. Theo thông tin, hiện Apex.AI đã thêm Xilinx Ultrascale+ MPSoC và Infineon AURIX TC399 vào các dự án nội bộ của nền tảng mới. Dựa trên kinh nghiệm, việc thêm một nền tảng mới chỉ mất vài tuần.
Bài viết này được trích từ trang công khai WeChat "Thế giới Kỹ thuật Điện tử", tác giả: EEWorld, được 36Kr ủy quyền đăng tải.




