CASE 02 / 04 · ai companion app

Ghola

Ứng dụng AI companion
PERIOD
2026 — NOW
ROLE
Software engineer
TEAM
STACK
Hono · Vite · Cloudflare Workers · Durable Objects · R2 · LLM APIs
LINK
Private beta
[ screenshot — Ghola — daily chat with your companion ]

Không phải thêm một trợ lý AI — mà là một người bạn. Ghola trò chuyện với bạn mỗi ngày, nhớ những điều quan trọng với bạn và cùng ăn mừng những chiến thắng nhỏ.

Phần tôi làm

  • Xây dựng backend chạy trên edge bằng Hono + Cloudflare Workers, dựa trên các LLM có sẵn — không train model.
  • Dùng Durable Objects giữ trạng thái hội thoại và bộ nhớ riêng cho từng người dùng, để companion nhớ ngữ cảnh qua nhiều phiên.
  • Lưu media và dữ liệu hội thoại trên R2; frontend build và triển khai bằng Vite.
  • Định hình persona nhất quán, luồng check-in hằng ngày và phản hồi streaming trực tiếp từ edge.

01 Vấn đề

Hầu hết AI chat quên bạn ngay khi đóng tab. Một người bạn AI chỉ có ý nghĩa khi nó nhớ — và trả lời đủ nhanh để giống một cuộc trò chuyện thật.

02 Giải pháp

Backend chạy trên edge: Hono trên Cloudflare Workers, mỗi người dùng một Durable Object giữ trạng thái và bộ nhớ, R2 lưu dữ liệu, phản hồi streaming trực tiếp từ edge.

03 Kết quả

Chat độ trễ thấp, bộ nhớ giữ qua nhiều phiên, hạ tầng mở rộng theo từng người dùng. [thêm số liệu nếu được phép]

decision.mdQuyết định kỹ thuật

Mỗi người dùng một Durable Object, thay vì DB + cache dùng chung

Bộ nhớ của mỗi người nằm trong một object riêng, đơn luồng, đặt gần người dùng. Không lo invalidate cache, không race condition giữa các tin nhắn, không có database trung tâm trên đường xử lý chính.