Tác giả:
(1) Brandon T. Willard, Máy tính thông thường;
(2) R'emi Louf, Máy tính thông thường.
Việc lập chỉ mục từ vựng được giới thiệu trong bài viết này sẽ loại bỏ rào cản mở rộng quy mô thời gian chạy bị cấm trong quá trình tạo có hướng dẫn. Đương nhiên, nó tạo ra sự cân bằng giữa quá trình xử lý và bộ nhớ, nhưng chúng tôi tin rằng chi phí bộ nhớ trung bình tương đối thấp và nếu không thì có thể giảm bằng các phương tiện thông thường.
Trong các thử nghiệm của chúng tôi bằng cách sử dụng phiên bản ngữ pháp Python được tăng cường một chút, chúng tôi nhận thấy rằng ngay cả các chỉ mục được xây dựng đơn giản (tức là các chỉ mục chứa trình phân tích cú pháp dư thừa và không được sử dụng cũng như cấu hình trạng thái FSM) vẫn chỉ có dung lượng khoảng 50 MB. Hơn nữa, các chỉ số này được xây dựng với các DFA không giảm, ngụ ý rằng có nhiều trạng thái dư thừa làm tăng kích thước của các chỉ số một cách không cần thiết. Tương tự như vậy, nếu việc biểu diễn chính xác các máy trạng thái là một vấn đề thì có thể các công thức máy trạng thái khác có yêu cầu bộ nhớ thấp hơn có thể đáp ứng được (ví dụ: NFA).
Ý nghĩa của công việc này không chỉ giới hạn ở việc tạo văn bản thần kinh. Ví dụ: người ta có thể sử dụng phương pháp lập chỉ mục được mô tả ở đây để hỗ trợ việc đào tạo hoặc tinh chỉnh LLM khi cần có kết quả đầu ra có cấu trúc. Chúng tôi cũng có thể suy đoán rằng việc tạo được hỗ trợ trong quá trình đào tạo có thể làm giảm nhu cầu về một mô hình để tìm hiểu các chi tiết cú pháp.
Ngoài ra, phương pháp này còn cung cấp một cách khác để đánh giá các mô hình hiện tại. Ví dụ: người ta có thể cố gắng định lượng sự khác biệt giữa nhật ký được che giấu do phương pháp của chúng tôi tạo ra và nhật ký thô do mô hình tạo ra. Từ đó có thể thông báo mục tiêu đào tạo của một mô hình.
Cũng có thể “nâng” các mặt nạ được tính toán bằng phương pháp này vào chính các mô hình ngôn ngữ. Về cơ bản, các mặt nạ ngầm xác định những phép tính nào không cần phải thực hiện. Công thức hiện tại của chúng tôi chỉ áp dụng mặt nạ ở mức thấp nhất, tuy nhiên, bằng cách nâng mặt nạ sâu hơn vào kiến trúc của mô hình, chúng tôi có thể điều chỉnh các lát tham số mô hình cần thiết trước khi thực hiện các thao tác không cần thiết trên chúng. Điều này có tiềm năng làm giảm chi phí tính toán hơn nữa.
Luca Beurer-Kellner, Marc Fischer và Martin Vechev. Nhắc nhở là lập trình: Ngôn ngữ truy vấn cho các mô hình ngôn ngữ lớn. Kỷ yếu của ACM về Ngôn ngữ lập trình, 7(PLDI):1946–1969, 2023.
Yihong Dong, Ge Li và Zhi Jin. CODEP: Mô hình Seq2Seq ngữ pháp để tạo mã mục đích chung. Trong Kỷ yếu của Hội nghị chuyên đề quốc tế về kiểm thử và phân tích phần mềm ACM SIGSOFT lần thứ 32, ISSTA 2023, trang 188–198, New York, NY, Hoa Kỳ, tháng 7 năm 2023. Hiệp hội Máy tính. ISBN 9798400702211. doi: 10.1145/3597926. 3598048.
Saibo Geng, Martin Josifosky, Maxime Peyrard và Robert West. Giải mã ràng buộc dựa trên ngữ pháp linh hoạt cho các mô hình ngôn ngữ, tháng 5 năm 2023.
Michael Kuchnik, Virginia Smith và George Amvrosiadis. Xác thực các mô hình ngôn ngữ lớn với relm. Kỷ yếu của Hệ thống và Học máy, số 5, 2023.
Alexander K. Lew, Tan Zhi-Xuan, Gabriel Grand và Vikash K. Mansinghka. Monte Carlo tuần tự chỉ đạo các mô hình ngôn ngữ lớn sử dụng các chương trình xác suất. bản in trước arXiv arXiv:2306.03081, 2023.
R'emi Louf và Brandon T. Willard. Đề cương: Lập trình mô hình sáng tạo. URL https://github.com/normal-computing/outlines.
Microsoft. Hướng dẫn. Microsoft, tháng 7 năm 2023. URL https://github.com/microsoft/guidance.
Gabriel Poesia, Oleksandr Polozov, Vu Lê, Ashish Tiwari, Gustavo Soares, Christopher Meek và Sumit Gulwani. Synchromesh: Tạo mã đáng tin cậy từ các mô hình ngôn ngữ được đào tạo trước. bản in trước arXiv arXiv:2201.11227, 2022a.
Gabriel Poesia, Oleksandr Polozov, Vu Lê, Ashish Tiwari, Gustavo Soares, Christopher Meek và Sumit Gulwani. Synchromesh: Tạo mã đáng tin cậy từ các mô hình ngôn ngữ được đào tạo trước, tháng 1 năm 2022b.
Maxim Rabinovich, Mitchell Stern và Dan Klein. Mạng cú pháp trừu tượng để tạo mã và phân tích ngữ nghĩa. bản in trước arXiv arXiv:1704.07535, 2017.
Alec Radford, Jeffrey Wu, Rewon Child, David Luan, Dario Amodei và Ilya Sutskever. Các mô hình ngôn ngữ là những người học đa nhiệm không được giám sát. Blog OpenAI, 1(8):9, 2019.
Matt Rickard. trình phân tích cú phápLLM, tháng 7 năm 2023a. URL https://github.com/r2d4/ parserllm.
Matt Rickard. R2d4/rellm: Cấu trúc chính xác của bất kỳ mô hình ngôn ngữ nào được hoàn thành., 2023b. URL https://github.com/r2d4/rellm.
Torsten Scholak, Nathan Schucher và Dzmitry Bahdanau. PICARD: Phân tích cú pháp tăng dần để giải mã hồi quy tự động bị ràng buộc từ các mô hình ngôn ngữ. bản in trước arXiv arXiv:2109.05093, 2021.
Rico Sennrich, Barry Haddow và Alexandra Birch. Dịch máy thần kinh các từ hiếm với các đơn vị từ phụ. bản in trước arXiv arXiv:1508.07909, 2015.
Michael Sipser. Giới thiệu về lý thuyết tính toán. Nhà xuất bản Thomson Quốc tế, 1996.
Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, \Lukasz Kaiser và Illia Polosukhin. Sự chú ý là tất cả những gì bạn cần. Những tiến bộ trong hệ thống xử lý thông tin thần kinh, ngày 30 năm 2017.
Bailin Wang, Zi Wang, Xuezhi Wang, Yuan Cao, Rif A. Saurous và Yoon Kim. Nhắc nhở ngữ pháp để tạo ngôn ngữ theo miền cụ thể với các mô hình ngôn ngữ lớn, tháng 5 năm 2023.
Lilian Weng. Tạo văn bản thần kinh có thể kiểm soát, tháng 1 năm 2021. URL https://lilianweng.github.io/posts/ 2021-01-02-controllable-text-Generation/.
Chúng tôi xin cảm ơn Dan Gerlanc và Dan Simpson vì sự hỗ trợ và phản hồi mang tính xây dựng của họ.
Bài viết này có sẵn trên arxiv theo giấy phép CC 4.0.