Tôi để AI xây dựng công cụ giúp tìm ra nguyên nhân làm tôi thức giấc giữa đêm

Công nghệ11 tháng 5, 2026·11 phút đọc

Tác giả đã sử dụng các công cụ AI để xây dựng một hệ thống kết hợp giữa thu âm và dữ liệu giấc ngủ nhằm xác định các tiếng ồn làm thức giấc mình vào ban đêm. Dự án chỉ mất một cuối tuần để hoàn thành, giúp nhận diện rõ các "thủ phạm" như tiếng cửa hay tiếng xe cộ, từ đó đưa ra các giải pháp cách âm cụ thể.

Tôi để AI xây dựng công cụ giúp tìm ra nguyên nhân làm tôi thức giấc giữa đêm

Tôi luôn chú ý đến những điều nhỏ nhặt ảnh hưởng đến chất lượng cuộc sống. Khi có gì đó phiền toái, tôi muốn điều tra nguyên nhân và giải quyết nó. Tuy nhiên, điều thay đổi gần đây là mức độ tôi sẵn sàng xây dựng công cụ để hỗ trợ việc đó. Nhờ sự hỗ trợ của AI, những dự án mà trước đây tôi sẽ bỏ qua vì "tốn quá nhiều công sức so với lợi ích mang lại" giờ đây có thể hoàn thành chỉ trong một cuối tuần.

Bài viết này kể về một trong những vấn đề đó: giấc ngủ của tôi.

Thiết lập hệ thống ghi âm và cảm biếnThiết lập hệ thống ghi âm và cảm biến

Vấn đề

Tôi sống trong một thành phố ồn ào. Một số đêm tôi tỉnh dậy lúc 3 giờ sáng mà không biết nguyên nhân là gì. Những đêm khác, tôi không hẳn thức giấc nhưng chiếc đồng hồ thông minh vào sáng hôm sau lại cho thấy có gì đó đã kéo tôi ra khỏi giấc ngủ sâu lúc 3:32 sáng.

Phần bực bội nhất là bạn hầu như không bao giờ biết nguyên nhân là gì. Khi một âm thanh đánh thức bạn, não bộ vẫn đang chuyển đổi từ trạng thái ngủ, và cần một lúc để hoạt động trở lại bình thường. Đến khi bạn nhận ra chuyện gì đang xảy ra, âm thanh đã biến mất. Trừ khi nó lặp lại hoặc để lại manh mối sau đó, bạn thức dậy trong sự bối rối và nguyên nhân vẫn là một ẩn số.

Nếu không gọi tên được nguyên nhân, bạn không thể khắc phục nó. Là tiếng ồn trong nhà hay ngoài trời? Hàng xóm? Xe tải? Cửa? Bất kỳ "giải pháp" nào bạn thử cũng chỉ là phỏng đoán, và phỏng đoán thường tốn kém.

Vì vậy, tôi bắt tay vào làm.

Những gì tôi đã xây dựng

Một chút bối cảnh trước: Tôi đã có một hệ thống nhà thông minh (smart home) với Home Assistant và một loạt cảm biến xung quanh căn hộ (chuyển động, cửa, ánh sáng, nhiệt độ, độ ẩm, CO₂, chất lượng không khí). Rất nhiều dữ liệu tôi cần cho dự án này đã được thu thập sẵn. Tôi chỉ cần thêm phần âm thanh, kéo dữ liệu giấc ngủ về và kết nối mọi thứ lại với nhau.

Tôi chỉ cần thêm một vài thứ:

  • Hai chiếc micro USB giá rẻ, một cái trong nhà và một cái ngoài cửa sổ hướng ra đường.
  • Một máy tính Raspberry Pi để lắng nghe, nhưng chỉ khi tôi ở nhà và đang nằm trên giường.
  • Dữ liệu giấc ngủ từ đồng hồ Garmin.
  • Một ứng dụng web trên máy chủ tại nhà kết hợp âm thanh, dữ liệu giấc ngủ và các sự kiện từ cảm biến.

Khi Pi phát hiện âm thanh đủ lớn, nó sẽ lưu một đoạn ngắn với vài giây bối cảnh trước và sau đó. Toàn bộ chế độ phát âm được kiểm soát bởi Home Assistant: Pi tự exposing như một tích hợp của Home Assistant, và tự động hóa chỉ bật nó lên khi tôi ở nhà, trên giường và vào giờ ngủ bình thường. Ngoài những điều kiện đó, nó hoàn toàn bị vô hiệu hóa, không có quyền truy cập micro nào cả. Đó là hành vi tôi mong muốn, ngay cả trên mạng riêng của mình.

Ứng dụng web là nơi tính hữu ích thực sự diễn ra. Mỗi đêm được trình bày giống như các track trong một trình chỉnh sửa âm nhạc: một track cho các giai đoạn giấc ngủ, một cho nhịp tim và HRV, một vài track cho sự kiện cảm biến, và một cho sự kiện ồn ào với âm thanh được tải vào.

Giao diện ứng dụng web theo dõi giấc ngủ và âm thanhGiao diện ứng dụng web theo dõi giấc ngủ và âm thanh

Tính năng hữu ích nhất, cho đến nay, là cách nó đánh dấu trực quan các khoảnh khắc giai đoạn giấc ngủ của tôi thay đổi hoặc tôi thức dậy. Đó là điểm nhập. Tôi quét qua một đêm, tìm các khoảnh khắc được đánh dấu (màu đỏ) và nhấn để nghe.

Một điểm cộng nữa: giao diện người dùng là một Progressive Web App (PWA) với web push, chỉ phục vụ trong mạng nhà của tôi. Ngay khi tôi thức dậy và kiểm tra điện thoại, tôi nhận được thông báo rằng dữ liệu đêm qua đã sẵn sàng để xem xét. Không có dữ liệu nào rời khỏi mạng, điều mà tôi thực sự thích.

Vai trò của AI

Để đặt kỳ vọng rõ ràng: AI là thứ khiến việc xây dựng điều này trong một cuối tuần trở nên thực tế. Toàn bộ việc mất khoảng 8 giờ làm việc, cộng với một vài cải tiến nhỏ trong những ngày tiếp theo. Nếu không có công cụ AI, tôi sẽ không bắt đầu.

Tuy nhiên, tôi không sử dụng AI để xác định âm thanh thực tế (ít nhất là chưa). Phần lắng nghe, nhận biết cửa so với bát đĩa so với xe máy, vẫn là tôi với tai nghe trên đầu. Công cụ chỉ chỉ cho tôi những khoảnh khắc đáng để nghe.

Về quy trình làm việc: Tôi không đọc mã (lựa chọn có ý thức). Tôi kiểm tra kết quả, đưa ra phản hồi trực tiếp khi có gì đó sai lệch và để AI xác minh đầu ra của chính nó bằng cách để nó chụp ảnh màn hình ứng dụng đang chạy trong trình duyệt của tôi.

Đối với phía máy tính, tôi đi xa hơn một bước. Raspberry Pi là một bản cài đặt mới, trống rỗng, vì vậy tôi đã cấp quyền truy cập SSH cho tác nhân lập trình và để nó kiểm tra trực tiếp trên thiết bị. Nó sẽ thiết lập một thí nghiệm, yêu cầu tôi hét lên, thả thứ gì đó, hoặc mở vòi nước bếp, ghi lại mẫu, sau đó phân tích nó cho tôi, đôi khi kéo ra cả quang phổ âm thanh (spectrograms). Tôi phải rõ ràng về việc muốn nó hoạt động theo cách này, nhưng một khi được hướng dẫn, vòng lặp lặp lại thực sự khá thú vị.

Đối với một dự án cá nhân chạy trên phần cứng của riêng mình, toàn bộ thiết lập này là đủ.

Sự thay đổi thú vị ở đây không phải là AI đã giải quyết vấn đề của tôi. Đó là AI đã giảm chi phí để xây dựng thứ cho phép tôi tự giải quyết vấn đề của mình.

Những gì tôi tìm thấy và cách khắc phục

Khi tôi bắt đầu sử dụng thực sự, các mô hình đã xuất hiện rất nhanh. Những "nhân vật" thường gặp:

  • Cửa: Cửa của hàng xóm bị đập mạnh, hoặc ai đó trong căn hộ đi vào nhà vệ sinh và không đặc biệt chú ý đến cánh cửa.
  • Bát đĩa: Chúng tạo ra âm thanh cao, sắc bén truyền đi đáng ngạc nhiên qua căn hộ, dù là từ bếp của chúng tôi hay hàng xóm.
  • Phố phố: Xe máy, xe tay ga, xe tải và xe rác đi qua... (đoán xem tôi sống ở quốc gia nào).
  • Thỉnh thoảng, những thứ bên trong mà tôi đã đổ lỗi cho bên ngoài (và ngược lại).

Với dữ liệu thực tế, tôi cuối cùng có thể hành động với sự tự tin thay vì phỏng đoán:

  • Tôi đã thêm các tấm tiêu âm thích hợp (các tấm IKEA dùng cho văn phòng để tạo khu vực họp hoạt động surprisingly well).
  • Tôi thêm thêm cách nhiệt xung quanh cửa phòng ngủ và cửa sổ (silicone, cao su...).
  • Đối với một số tiếng ồn bên trong, giải pháp ít liên quan đến phần cứng hơn mà là một cuộc trò chuyện nhỏ 😄.

Nó không hoàn hảo (thành phố vẫn là thành phố), nhưng sự khác biệt thể hiện cả ở cách tôi cảm thấy vào buổi sáng và trong dữ liệu Garmin theo thời gian.

Cách thức hoạt động dưới lớp vỏ (Kỹ thuật)

Một chút chi tiết cho những ai quan tâm đến kỹ thuật:

Pi liên tục ghi âm vào bộ đệm trong bộ nhớ xoay vòng (chỉ khi phát âm được bật thông qua Home Assistant). Không có gì chạm vào đĩa cho đến khi âm lượng vượt qua ngưỡng.

Có một hồ sơ khử ồn ở trên đầu vào cố gắng giữ sàn ồn môi trường thấp nhất có thể. Nó chủ yếu lọc bỏ những thứ nền tĩnh (tiếng xe cộ xa xăm, tủ lạnh, loại thứ đó) để ngưỡng không kích hoạt nó. Điều này cắt giảm rất nhiều dương tính giả.

Khi ngưỡng bị vượt qua, đoạn âm thanh (với bối cảnh trước và sau) được lưu với dấu thời gian, và một tệp JSON nhỏ theo dõi các sự kiện. Đoạn âm thanh cũng được nén thành tệp âm thanh nhỏ hơn để có thể lưu trữ dữ liệu của nhiều đêm.

Một máy chủ web nhỏ trên Pi hiển thị các sự kiện ồn ào và đoạn âm thanh cho ứng dụng web của tôi, cộng với một điểm cuối điều khiển được ủy quyền bằng token riêng biệt để thay đổi trạng thái ghi âm.

Dữ liệu giấc ngủ từ Garmin: có các thư viện mã nguồn mở tốt xử lý xác thực Garmin Connect. Một công việc nhỏ chạy một yêu cầu được xác thực, kéo lưu trữ hoạt động của ngày, và từ đó tôi trích xuất các giai đoạn giấc ngủ, nhịp tim, HRV và một số chỉ số sinh học khác mà tôi cũng có thể dễ dàng hiển thị dưới dạng các track dữ liệu.

Ứng dụng web kéo từ ba nguồn: Garmin (dữ liệu giấc ngủ), Home Assistant (sự kiện cảm biến) và Pi (sự kiện ồn ào và đoạn âm thanh). Tất cả được khâu vào một dòng thời gian đồng bộ hóa, mỗi nguồn là một track trực quan riêng biệt.

Các trình phát âm thanh có sẵn tôi thử không thể xử lý đồng bộ đa track theo cách tôi muốn, vì vậy tôi kết thúc việc tự xây dựng của riêng mình.

Các chuyển đổi giai đoạn giấc ngủ và sự kiện thức dậy được làm nổi bật trực quan, đây là phần tôi thực sự dựa vào nhiều nhất.

Tại sao tôi chia sẻ điều này

Dự án cụ thể ít quan trọng với tôi hơn là mô hình cơ bản. Có một loại vấn đề cá nhân nhỏ từng nằm trong nhóm "sẽ tốt nếu có, nhưng không đáng để xây dựng". Với công cụ AI, nhiều dự án như vậy đã vượt sang vùng "tại sao không, hãy dành một cuối tuần cho nó".

Một vài bài học tôi rút ra từ điều này:

  • Đo lường trước khi sửa chữa. Tôi gần như đã đặt mua một chiếc nệm mới và bắt đầu tìm các tấm rèm dày hơn. Chúng có thể đã giúp ích, nhưng nếu không có dữ liệu, tôi không có cách nào nhắm đúng giải pháp sửa chữa hoặc biết sau đó liệu nó có thực sự hoạt động không.
  • Bối cảnh đánh bại dữ liệu thô. Một nhật ký ồn ào một mình không rất hữu ích. Cùng một sự kiện kể một câu chuyện rất khác tùy thuộc vào việc nhịp tim của bạn có tăng vọt không, một cánh cửa có mở không, hoặc bạn có đang ở giấc ngủ sâu vào thời điểm đó hay không.
  • Chọn tín hiệu đơn giản nhất đủ tốt. Các giai đoạn giấc ngủ của Garmin không hoàn hảo, nhưng khả năng phát hiện thức dậy của nó đủ tốt để chỉ cho tôi những khoảnh khắc đáng để nghe. Đó là tất cả những gì tôi cần.

Công cụ AI đã hạ thấp rào cản cho các công cụ cá nhân. Bất cứ khi nào một điều gì đó nhỏ bắt đầu phiền tôi bây giờ, suy nghĩ đầu tiên của tôi là "có một hệ thống nhỏ nào tôi có thể xây dựng để hiểu rõ hơn về điều này không?". Câu trả lời từng là "có lẽ không đáng". Ngày nay, câu trả lời thường là "có".

Nếu bạn cũng sống trong một thành phố ồn ào và trình theo dõi giấc ngủ của bạn liên tục nói với bạn "giấc ngủ của bạn khá tồi tệ" mà không nói lý do tại sao, tôi thực sự khuyên bạn nên thử một phiên bản nào đó của việc này. Bạn không cần phải xây dựng chính xác những gì tôi đã xây dựng. Ngay cả việc chỉ đặt một chiếc micro cạnh giường và xem xét các đỉnh nhọn vào sáng hôm sau cũng sẽ dạy bạn rất nhiều điều.

Chia sẻ:FacebookX
Nội dung tổng hợp bằng AI, mang tính tham khảo. Xem bài gốc ↗