1 điểm bởi GN⁺ 2023-07-23 | 1 bình luận | Chia sẻ qua WhatsApp
  • Bài viết nói về việc bổ sung lấy mẫu dựa trên ngữ pháp trong API mới của llama.cpp để định hướng và giới hạn quá trình sinh.
  • API llama nhận một cấu trúc dữ liệu biểu diễn ngữ pháp phi ngữ cảnh, cho phép lấy mẫu dựa trên các quy tắc ngữ pháp.
  • Mã lấy mẫu theo ngữ pháp mô hình hóa một ôtômát đẩy xuống không xác định và duy trì nhiều ngăn xếp cho trạng thái phân tích cú pháp.
  • Bài viết cung cấp các ví dụ sử dụng API ngữ pháp cho nhiều kịch bản khác nhau như cờ vua, số học, JSON và tiếng Nhật.
  • Các tối ưu hóa tiềm năng được nhắc tới, chẳng hạn biên dịch ngữ pháp thành tensor chuyển trạng thái và chạy trên GPU.
  • Các cộng tác viên đang thảo luận về việc bổ sung hỗ trợ tệp ngữ pháp, cải thiện trình phân tích ngữ pháp và tối ưu hóa việc đánh giá token.
  • Tính hữu ích của đóng góp được nhấn mạnh, cùng với đề xuất tách API lấy mẫu thành một mô-đun riêng.
  • Các dự án khác sử dụng cách tiếp cận tương tự cho sinh dựa trên ngữ pháp như lmql.ai và jsonformer cũng được nhắc tới.
  • Có đề xuất tham chiếu toàn bộ token trong ngữ pháp và đưa trình phân tích cú pháp vào API llama.cpp để cải thiện khả năng sử dụng.
  • Các cộng tác viên đang rà soát mã, đưa ra phản hồi, thảo luận về các cải tiến tiềm năng và chia sẻ kinh nghiệm với tính năng này.
  • Một kỹ sư phần mềm đang tham gia dự án liên quan đến lấy mẫu theo ngữ pháp và gặp vấn đề trên ARM64+CUDA.
  • Biên tập viên cho rằng vấn đề có thể liên quan tới tổ hợp gói của chuỗi công cụ và đề nghị hỗ trợ.
  • Có một pull request để thêm hàm LocalAI, cùng với đề xuất dùng cú pháp BNF chuẩn hơn cho dự án.
  • Việc vi phạm ngữ pháp được xem là kết quả tệ nhất, và phương án backtracking được đề xuất để cân nhắc trong tương lai.
  • Đang có thảo luận về cách triển khai EBNF và định dạng cần tuân theo.
  • Trong bản cập nhật mới nhất, việc lấy mẫu bị giới hạn ở khớp token hoàn chỉnh, và có thêm đề xuất cải tiến để xử lý các trường hợp token bị tách không phù hợp.
  • Các thay đổi cho dự án đã được chấp thuận và sẵn sàng để hợp nhất, biên tập viên mong chờ được thử bản dự án đã cập nhật.
  • Một vấn đề tương tự đang được nhắc tới trong dự án khác, với đề xuất tiền tính toán phân phối token từ vựng.
  • Kỹ sư phần mềm bày tỏ sự quan tâm tới cách tiếp cận đó và sẵn sàng chia sẻ ý kiến.
  • Cuộc thảo luận trên GitHub vẫn đang tiếp tục với nhiều người tham gia.

1 bình luận

 
GN⁺ 2023-07-23
Ý kiến trên Hacker News
  • Mô hình ngôn ngữ tạo token từng cái một, nên có thể kiểm soát ở mức chi tiết.
  • Lấy mẫu dựa trên ngữ pháp có thể được dùng để áp đặt các ràng buộc ngữ pháp lên văn bản được tạo ra.
  • Lấy mẫu dựa trên ngữ pháp có thể không giải quyết được các vấn đề căn chỉnh hoặc bảo đảm việc gắn nhãn chính xác.
  • Có một kho GitHub để triển khai lấy mẫu dựa trên ngữ pháp trong PyTorch.
  • Khi xét đến xác suất kết hợp, có thể chọn phương án tốt hơn trong các enum chuỗi nhiều lựa chọn.
  • Một thư viện ngữ pháp được trích dẫn như ví dụ về các định dạng có thể trông như thế nào.
  • Một số người dùng quan tâm đến khái niệm này, nhưng đặt câu hỏi về hiệu quả lâu dài của nó.
  • Lấy mẫu dựa trên ngữ pháp có thể hữu ích cho các lĩnh vực cụ thể và DSL nội bộ.
  • Vẫn cần prompt engineering để có được đầu ra mong muốn.
  • Cũng có các phương pháp và công cụ tương tự khác.
  • Có yêu cầu đề xuất về các phương pháp giải mã trong thời đại mạng nơ-ron.