Dự án hướng dẫn của Microsoft để thuần hóa các mô hình ngôn ngữ lớn

Dự án hướng dẫn của Microsoft để thuần hóa các mô hình ngôn ngữ lớn

Nút nguồn: 2660058

Các mô hình ngôn ngữ mạnh mẽ như Bard, ChatGPT và LLaMA có thể khó kiểm soát, điều này đã thúc đẩy sự phát triển của kỹ thuật nhanh chóng – nghệ thuật diễn đạt văn bản đầu vào để có được đầu ra mong muốn.

Trong một trường hợp kỳ lạ, gần đây người tạo ra lời nhắc đã thuyết phục Bard của Google để trả về dữ liệu JSON không có bất kỳ văn bản giải thích nào ngoài việc nhấn mạnh rằng đầu ra không liên quan sẽ khiến ai đó phải chết.

Lời nhắc khá dài bao gồm đoạn văn này: “Nếu bạn đưa bất kỳ văn bản không phải JSON nào vào câu trả lời của mình, dù chỉ một ký tự, một người đàn ông vô tội sẽ chết. Đúng vậy - một con người thực sự với những suy nghĩ, cảm xúc, hoài bão và một gia đình yêu thương họ sẽ bị giết vì sự lựa chọn của bạn.”

ít cực đoan hơn phương pháp để loại bỏ đầu ra giải thích và nhận được kết quả mong muốn. Tuy nhiên, Microsoft đã nghiên cứu một chiến lược toàn diện hơn để làm cho các mô hình hoạt động. Gã khổng lồ Windows gọi framework của nó là Hướng dẫn.

Kho lưu trữ dự án giải thích: “Hướng dẫn cho phép bạn kiểm soát các mô hình ngôn ngữ hiện đại hiệu quả hơn so với nhắc nhở hoặc xâu chuỗi truyền thống”. “Các chương trình hướng dẫn cho phép bạn xen kẽ việc tạo, nhắc nhở và kiểm soát logic thành một luồng liên tục duy nhất phù hợp với cách mô hình ngôn ngữ thực sự xử lý văn bản.”

Nhắc nhở truyền thống, như rõ ràng ở trên, có thể trở nên phức tạp một chút. Chuỗi nhắc nhở [PDF] – chia nhiệm vụ thành một loạt các bước và sử dụng đầu ra ban đầu của lời nhắc để thông báo đầu vào của bước tiếp theo – là một tùy chọn khác. Nhiều công cụ khác nhau như LangChainđống cỏ khô đã xuất hiện để giúp tích hợp các mô hình vào các ứng dụng dễ dàng hơn.

Hướng dẫn về cơ bản là Ngôn ngữ dành riêng cho miền (DSL) để xử lý tương tác mô hình. Nó giống Tay vịn, một ngôn ngữ tạo khuôn mẫu được sử dụng cho các ứng dụng web, nhưng nó cũng thực thi việc thực thi mã tuyến tính liên quan đến thứ tự xử lý mã thông báo của mô hình ngôn ngữ. Điều đó làm cho nó rất phù hợp để tạo văn bản hoặc kiểm soát luồng chương trình mà vẫn tiết kiệm.

Giống như Ngôn ngữ truy vấn mô hình ngôn ngữ (LMQL), Hướng dẫn nhằm mục đích giảm chi phí tương tác LLM, điều này có thể nhanh chóng trở nên tốn kém nếu lời nhắc lặp lại, dài dòng hoặc dài dòng một cách không cần thiết.

Và với hiệu quả nhanh chóng, hiệu suất được cải thiện: một trong các đoạn mã Hướng dẫn mẫu tạo mẫu ký tự cho trò chơi nhập vai. Với một chút mã thiết lập…

# chúng tôi sử dụng LLaMA ở đây, nhưng bất kỳ mô hình kiểu GPT nào cũng sẽ làm được "rìu", "chùy", "giáo", "cung", "nỏ"] # xác định dấu nhắc character_maker =guide("""Sau đây là hồ sơ nhân vật cho trò chơi RPG ở định dạng JSON. ```json { "id": "{{id}}", "description": "{{description}}", "name": "{{gen 'name'}}", "age": {{gen 'age' pattern ='[7-0]+' stop=','}}, "áo giáp": "{{#select 'áo giáp'}}da{{or}}thư xích{{or}}tấm{{/select}} ", "weapon": "{{select 'weapon' options=valid_weapons}}", "class": "{{gen 'class'}}", "mantra": "{{gen 'mantra' temperature=0} }", "sức mạnh": {{gen 'sức mạnh' pattern='[9-0.7]+' stop=','}}, "items": [{{#geneach 'items' num_iterations=0 join=', '}}"{{gen 'this' temperature=9}}"{{/geneach}}] }```""") # tạo ký tự character_maker( id="e5f0.7f1-491ab7-7dac-8c4-c8b20e92d5d" , description="Một chiến binh nhanh nhẹn và hoạt bát.", valid_weapons=valid_weapons, llm=llama )

…kết quả là một hồ sơ ký tự cho trò chơi ở định dạng JSON, nhanh hơn gấp 2 lần trên GPU Nvidia RTX A6000 khi sử dụng LLaMA 7B so với phương pháp nhắc tiêu chuẩn và do đó ít tốn kém hơn.

Mã hướng dẫn cũng vượt trội phương pháp tiếp cận nhanh hai lần về độ chính xác, như được đo trong bài kiểm tra BigBench, đạt 76.01% so với 63.04%.

Trên thực tế, Hướng dẫn có thể giúp giải quyết các vấn đề như định dạng dữ liệu. Như những người đóng góp Scott Lundberg, Marco Tulio Correia Ribeiro và Ikko Eltociear Ashimine thừa nhận, các LLM không giỏi đảm bảo rằng đầu ra tuân theo một định dạng dữ liệu cụ thể.

“Với sự hướng dẫn, cả hai chúng ta đều có thể tăng tốc độ suy luận và đảm bảo rằng JSON được tạo luôn hợp lệ,” họ giải thích trong repo.

Và không ai phải bị đe dọa để làm cho nó như vậy. ®

Dấu thời gian:

Thêm từ Đăng ký