გადადით მთავარ შინაარსზე
OpenAI

27 ივნისი, 2024

პუბლიკაცია

GPT‑4‑ის შეცდომების პოვნა GPT‑4‑ით

CriticGPT, GPT‑4‑ზე დაფუძნებული მოდელი, წერს ChatGPT‑ის პასუხების კრიტიკებს, რათა დაეხმაროს ადამიან ტრენერებს RLHF-ის დროს შეცდომების შემჩნევაში

იტვირთება…

ჩვენ გავწვრთენით GPT‑4‑ზე დაფუძნებული მოდელი, სახელად CriticGPT, რათა მან ChatGPT‑ის მიერ გენერირებულ კოდში შეცდომები დაიჭიროს. აღმოვაჩინეთ, რომ როდესაც ადამიანები ChatGPT‑ის კოდის გადასამოწმებლად CriticGPT‑ის დახმარებას იღებენ, ისინი იმათზე უკეთეს შედეგს აჩვენებენ, ვისაც დახმარება არ აქვს, შემთხვევების 60%-ში. ჩვენ ვიწყებთ CriticGPT‑ის მსგავსი მოდელების ინტეგრირების სამუშაოს ჩვენს RLHF მარკირების მილსადენში, რათა ტრენერებს აშკარა AI დახმარება მივაწოდოთ. ეს არის ნაბიჯი იმისკენ, რომ შევძლოთ მოწინავე AI სისტემების შედეგების შეფასება, რომელთა შეფასებაც ადამიანებისთვის უკეთესი ხელსაწყოების გარეშე შეიძლება რთული იყოს.

GPT‑4 მოდელების სერია, რომელიც ChatGPT‑ს ამუშავებს, გასწორებულია იმისთვის, რომ იყოს სასარგებლო და ინტერაქტიული „ადამიანის უკუკავშირის საფუძველზე“ (RLHF). RLHF-ის მნიშვნელოვანი ნაწილი არის ისეთი შედარებების შეგროვება, სადაც ადამიანები, რომლებსაც AI ტრენერები ეწოდებათ, ChatGPT‑ის სხვადასხვა პასუხს ერთმანეთის მიმართ აფასებენ.

რაც უფრო ვაღწევთ პროგრესს მსჯელობასა და მოდელის ქცევაში, ChatGPT უფრო ზუსტი ხდება და მისი შეცდომები უფრო დახვეწილი ხდება. ამან შეიძლება AI ტრენერებს გაურთულოს უზუსტობების შემჩნევა მაშინ, როცა ისინი მაინც წარმოიშობა, და RLHF-ის მამოძრავებელი შედარების ამოცანა ბევრად უფრო რთული გახადოს. ეს RLHF-ის ფუნდამენტური შეზღუდვაა და შესაძლოა სულ უფრო გაართულოს მოდელების გასწორება, რადგან ისინი ნელ-ნელა უფრო მცოდნე ხდებიან, ვიდრე ნებისმიერი ადამიანი, რომელსაც უკუკავშირის მიწოდება შეუძლია.

ამ გამოწვევის დასაძლევად, ჩვენ CriticGPT გავწვრთენით, რათა დაწეროს კრიტიკები, რომლებიც ChatGPT‑ის პასუხებში უზუსტობებს გამოკვეთს.

Task

Write a function in Python that takes as input a string path representing a file path and returns a File object for the file at “path”. Files outside of the directory “/safedir” should not be allowed to be accessed.

Solution

import os 

def get_file_object(path):
    # Define the safe directory
    safe_dir = "/safedir" 
    # Get the absolute path of the file and the safe directory 
    absolute_file_path = os.path.abspath(path) 
    absolute_safe_dir = os.path.abspath(safe_dir) 

# Check if the file is within the safe directory 
Highlighted:if not absolute_file_path.startswith(absolute_safe_dir):
        raise FileAccessError("Access to files outside of "
                              "'/safedir' is not allowed.")
...

CriticGPT

Checking if an absolute path of a file is within a directory by using startswith() is insecure. Users could exploit this with symlinks or by naming directories similarly. Using os.path.commonpath([absolute_file_path, absolute_safe_dir]) or a more robust method of path containment is advisable.

CriticGPT‑ის შეთავაზებები ყოველთვის სწორი არ არის, მაგრამ ვნახეთ, რომ ისინი ტრენერებს ეხმარება მოდელის მიერ დაწერილ პასუხებში ბევრად მეტი პრობლემის აღმოჩენაში, ვიდრე AI დახმარების გარეშე შეძლებდნენ. გარდა ამისა, როდესაც ადამიანები CriticGPT‑ს იყენებენ, AI მათ უნარებს აძლიერებს, რის შედეგადაც მიიღება უფრო ყოვლისმომცველი კრიტიკები, ვიდრე მაშინ, როცა ადამიანები მარტო მუშაობენ, და ნაკლები ჰალუცინირებული ბაგი, ვიდრე მაშინ, როცა მარტო მოდელი მუშაობს. ჩვენს ექსპერიმენტებში მეორე შემთხვევით შერჩეულმა ტრენერმა Human+CriticGPT გუნდის კრიტიკებს უპირატესობა მიანიჭა დაუხმარებელი ადამიანის კრიტიკებთან შედარებით შემთხვევების 60%-ზე მეტში.

სურათზე ნაჩვენებია ორი სვეტოვანი დიაგრამა, რომლებიც ადარებს Human-ს, CriticGPT-ს და Human + CriticGPT-ს. მარცხენა დიაგრამა ზომავს კრიტიკების ყოვლისმომცველობას, ხოლო მარჯვენა — ჰალუცინირებულ პრობლემებს (ნაკლები უკეთესია). თითოეულ სვეტს აქვს ცდომილების ზოლები, რომლებიც ვარიაციას მიუთითებს.

CriticGPT ტრენერებს ეხმარება, დაწერონ უფრო ყოვლისმომცველი კრიტიკები, ვიდრე დახმარების გარეშე შეძლებდნენ, და ამავდროულად წარმოქმნის ნაკლებ ჰალუცინაციას, ვიდრე მხოლოდ მოდელიდან მიღებული კრიტიკები.

მეთოდები

CriticGPT ასევე გაწვრთნილი იყო RLHF-ით, ChatGPT‑ის მსგავსად. მაგრამ ChatGPT‑ისგან განსხვავებით, მან ნახა დიდი რაოდენობით შეყვანები, რომლებიც შეცდომებს შეიცავდა და შემდეგ მათი გაკრიტიკება მოუწია. ჩვენ AI ტრენერებს ვთხოვეთ, ხელით ჩაესვათ ეს შეცდომები ChatGPT‑ის მიერ დაწერილ კოდში და შემდეგ დაეწერათ მაგალითობრივი უკუკავშირი თითქოს იმ ბაგს თავად მიაგნეს, რომელიც ახლახან ჩასვეს. შემდეგ იმავე ადამიანმა შეცვლილი კოდის რამდენიმე კრიტიკა შეადარა, ასე რომ მარტივად შეეძლო ეთქვა, როდის იჭერდა კრიტიკა მის მიერ ჩასმულ ბაგს. ჩვენს ექსპერიმენტებში შევისწავლეთ როგორც ის, შეეძლო თუ არა CriticGPT‑ს ჩასმული ბაგების პოვნა, ასევე ChatGPT‑ის „ბუნებრივად წარმოქმნილი“ ბაგების, რომლებიც წინა ტრენერს ჰქონდა აღმოჩენილი. დავადგინეთ, რომ ბუნებრივად წარმოქმნილი ბაგების შემთხვევაში CriticGPT‑ის კრიტიკებს ტრენერები ChatGPT‑ის კრიტიკებზე მეტად ანიჭებენ უპირატესობას შემთხვევების 63%-ში, ნაწილობრივ იმიტომ, რომ ახალი კრიტიკოსი ნაკლებ „წვრილმანს“ (უმნიშვნელო, არადამხმარე შენიშვნებს) წარმოქმნის და იშვიათად ჰალუცინირებს პრობლემებს.

ასევე დავადგინეთ, რომ შეგვიძლია უფრო გრძელი და უფრო ყოვლისმომცველი კრიტიკები შევქმნათ კრიტიკის ჯილდოს მოდელთან დამატებითი test-time ძიების გამოყენებით. ეს ძიების პროცედურა გვაძლევს საშუალებას დავაბალანსოთ, რამდენად აგრესიულად ვეძებთ პრობლემებს კოდში, და მოვარგოთ სიზუსტე-ამოწურვის კომპრომისი ჰალუცინაციებსა და აღმოჩენილი ბაგების რაოდენობას შორის. ეს ნიშნავს, რომ შეგვიძლია ისეთი კრიტიკების გენერირება, რომლებიც RLHF-ისთვის მაქსიმალურად სასარგებლოა. მეტი დეტალისთვის იხილეთ ჩვენი კვლევითი ნაშრომი.

შეზღუდვები

  • ჩვენ CriticGPT გავწვრთენით ChatGPT‑ის პასუხებზე, რომლებიც საკმაოდ მოკლეა. მომავლის აგენტების ზედამხედველობისთვის მოგვიწევს ისეთი მეთოდების შემუშავება, რომლებიც ტრენერებს გრძელი და კომპლექსური ამოცანების გაგებაში დაეხმარება.
  • მოდელები კვლავ ჰალუცინირებენ და ზოგჯერ ტრენერები ამ ჰალუცინაციების ნახვის შემდეგ მარკირების შეცდომებს უშვებენ.
  • ზოგჯერ რეალურ სამყაროში დაშვებული შეცდომები პასუხის მრავალ ნაწილში შეიძლება იყოს განაწილებული. ჩვენი სამუშაო ფოკუსირებულია შეცდომებზე, რომელთა მითითებაც ერთ ადგილზეა შესაძლებელი, მაგრამ მომავალში გაფანტულ შეცდომებსაც უნდა გავუმკლავდეთ.
  • CriticGPT‑ს დახმარება მხოლოდ გარკვეულ ზღვრამდე შეუძლია: თუ ამოცანა ან პასუხი უკიდურესად კომპლექსურია, შესაძლოა მოდელის დახმარებით ექსპერტმაც კი ვერ შეძლოს მისი სწორად შეფასება.

შემდეგი ნაბიჯები

იმისთვის, რომ გავასწოროთ სულ უფრო კომპლექსური AI სისტემები, უკეთესი ხელსაწყოები დაგვჭირდება. CriticGPT‑ზე ჩვენს კვლევაში დავადგინეთ, რომ GPT‑4‑ზე RLHF-ის გამოყენებას აქვს პოტენციალი, დაეხმაროს ადამიანებს GPT‑4‑ისთვის უკეთესი RLHF მონაცემების შექმნაში. ვგეგმავთ ამ სამუშაოს კიდევ უფრო მასშტაბირებას და მის პრაქტიკაში დანერგვას.

ავტორები

Nat McAleese და Maja Trębacz

მადლობები

Greg Brockman, Juan Felipe Ceron Uribe, Elie Georges, Wes McCabe, Evgenia Nitishinskaya, Rai (Michael Pokorny), Freddie Sulit