Nguyên mẫu lưu trữ lịch sử văn bản nén trong SQLite
OpenAI
Simon Willison chia sẻ ý tưởng lưu trữ lịch sử các phiên bản trong SQLite bằng cách sử dụng các mảng JSON nén của tất cả các phiên bản trước đó. Anh thảo luận về nguyên mẫu với chế độ giọng nói GPT-Live và sau đó nhờ GPT-5.6 Sol Pro xây dựng các nguyên mẫu thử nghiệm, cho thấy kết quả nén rất tốt.
Simon Willison quan tâm đến các lựa chọn lưu trữ lịch sử sửa đổi trong cơ sở dữ liệu quan hệ. Trong lúc đi dạo cùng chú chó, anh ấy nảy ra một ý tưởng: lấy toàn bộ văn bản của mọi phiên bản trước đó trong một mảng JSON lớn gồm các chuỗi và áp dụng nén zlib hoặc zstd cho toàn bộ. Anh ấy đã thảo luận nguyên mẫu với chế độ thoại GPT-Live trong ứng dụng ChatGPT trên iPhone, giải thích rằng một cột lịch sử trên bảng có thể là một blob lưu trữ một mảng JSON nén của tất cả các tài liệu trước đó, cộng với một mảng JSON riêng biệt chứa dấu thời gian mà không cần nén. Sau đó, anh ấy nhập một lời nhắc văn bản cho GPT-5.6 Sol Pro để xây dựng các nguyên mẫu thử nghiệm bằng Python. Các nguyên mẫu hoạt động tốt: 1.000 lần sửa đổi mô phỏng cho một tài liệu tạo ra 20,4 MB văn bản sửa đổi thô, được nén xuống còn 80,3 KB dưới dạng mảng JSON nén Zstandard. Để tránh chi phí giải nén và nén lại toàn bộ mảng mỗi lần chỉnh sửa, Sol đề xuất chia lịch sử thành nhiều hàng, mỗi hàng chứa tối đa 128 bản sửa đổi hoặc 3MB JSON không nén.
Nguồn: Simon Willison —
bản gốc
