Devin AI პირველი AI პროგრამული უზრუნველყოფის ინჟინერია, რომელიც Cognition Labs-მა წარადგინა
2024 წლის 12 მარტს, Cognition AI-მ მსოფლიოში პირველი AI პროგრამული უზრუნველყოფის ინჟინერი - Devin წარადგინა. ეს AI მოდელი მომხმარებელს პროგრამული უზრუნველყოფის სერვისების არაერთ შესაძლებლობას სთავაზობს კოდის წერიდან აპლიკაციებისა და ვებსაიტების შექმნასა და ინტერნეტში განთავსებმდე.
რა არის Devin და რა შეუძლია მას
Devin ენის დიდი მოდელია (LLM), რომელსაც “კომპიუტერული ინჟინერიის კომპლექსური ამოცანების” გადაწყვეტა შეუძლია, რაც ამოცანების ლოგიკურ ნაწილებად დაყოფას, კოდის გენერირებას, შეცდომების (Bug-ების) აღმოჩენასა და გასწორებას, API-ების ინტეგრირებას თუ კოდის განთავსებას (Deployment) მოიცავს.
Cognition Labs-ის დამფუძნებლის, სკოტ ვუს თქმით, Devin-ის უპირატესობა ისაა, რომ მოდელს გრძელვადიანი (Long term) მსჯელობისა და დაგეგმვის გაუმჯობესებული შესაძლებლობები აქვს. მათი საშუალებით კი Devin-ს უწყვეტ რეჟიმში შეუძლია როგორც მომხმარებელთან ერთად, ისე დამოუკიდებლად დაგეგმოს და შეასრულოს სხვადასხვა სირთულის ამოცანები, რომლებიც “ათასობით გადაწყვეტილებას მოითხოვს”. მას ყველა ეტაპზე შეუძლია ისწავლოს ან გაიხსენოს შესაბამისი კონტექსტი და გაასწოროს შეცდომები.
Devin-ს მომხმარებელთან თანამშრომლობაც შეუძლია, რაც გულისხმობს რეალურ დროში მუშაობის პროცესის ყველა ეტაპის ანგარიშის მომზადებას, უკუკავშირის მიღებას, საჭიროების შემთხვევაში მომხმარებელთან ერთად მუშაობას და ყველა ეტაპზე მომხმარებლის მითითებების შესრულებას.
ამავდროულად, Devin-ს ერთ სივრცეში აქვს ბრძანების ველის ინტერფეისი (CLI), კოდის რედაქტორი (IDE) და ვებ ბრაუზერი - ყველაფერი, რაც დეველოპერს სჭირდება.
მის გამოსვლას, როგორც ადრე Copilot-ის გამოჩენას, მოჰყვა აქტიური მსჯელობა პროგრამისტების შესაძლო ჩანაცვლების შესახებ, თუმცა, რეალურად, Devin-ის შექმნის მიზანი სამუშაო პროცესში დეველოპერების პროდუქტიულობის გაზრდაა. დღეს Devin-ის SWE-bench მაჩვენებელი 13.86%-ს შეადგენს, რაც იმას ნიშნავს, რომ მას GitHub-ზე არსებული კომპლექსური ამოცანების 13.86%-ის გადაწყვეტა დამოუკიდებლად შეუძლია. ეს პროცენტი 2.88-ჯერ აღემატება Claude 2-ის და 8-ჯერ აღემატება GPT4-ის ანალოგიურ მაჩვენებლებს. ეს კი იმას ნიშნავს, რომ თუნდაც Devin-ის მსგავს მოწინავე მოდელს ადამიანების ჩარევის გარეშე არ შეუძლია რეალური პრობლემების დამოუკიდებლად გადაწყვეტა და Human-in-the-Loop ისევ საჭიროა.
როგორც ხელოვნური ინტელექტის თითქმის ყველა გამოყენება, Devin-იც პროდუქტიულობას ზრდის და პროფესიონალებს რუტინული, მოსაწყენი საქმისგან გათავისუფლების საშუალებას აძლევს. მაგალითად, შესაძლებელია Devin-სთვის იმ დავალებების მინდობა, რომლებიც მონოტონურია, დიდ დროს მოითხოვს და არ საჭიროებს რაიმე ახლის გამოგონებას ან მოფიქრებას. სწორედ ამიტომ, Devin-ის დახმარებით პროგრამული უზრუნველყოფის ინჟინრებს შეუძლიათ დაზოგილ დროში კონცენტრირდნენ უფრო რთული და საინტერესო პრობლემების გადაჭრასა და ახალი ამოცანების პირობებში უფრო ამბიციური მიზნებიც დაისახონ.
Cognition Labs-ის დამფუძნებელი ვუნდერკინდი სკოტ ვუა. მისი ბავშვობის ვიდეო, რომელშიც ის გადაცემაში მათემატიკურ შეჯიბრში კომბინატორიკის ამოცანაზე პასუხს კითხვის დასრულებამდე ამბობს, ვირუსულად გავრცელდა
Devin-ის მთავარი "უნარები"
მაგალითად, Devin-მა შეძლო დამოუკიდებლად ესწავლა მომხმარებლის მიერ მიწოდებულ კონკრეტულ სტატიაში აღწერილი ტექნოლოგია, რომელიც აგენერირებს დაფარული მნიშვნელობის შემცველ გამოსახულებებს. ეს გულისხმობს მოდელის მიერ არამარტო მიწოდებული ინფორმაციის დამუშავებას, არამედ მომხმარებლისთვის შესაბამისი პროგრამის შექმნასაც (კოდის დაწერას), რომლითაც შესაძლებელია სასურველი ფოტოს გენერირება. მუშაობის პროცესში გენერირებულ და გაშვებულ კოდში Devin-მა დამოუკიდებლად იპოვა და გაასწორა ის შეცდომები, რომლებიც სტატიაში არ იყო ნახსენები.
Devin-ს შეუძლია ვებსაიტის ან აპლიკაციის შექმნისა და ინტერნეტში გაშვების მთელი პროცესი დამოუკიდებლად შეასრულოს. მაგალითად, Devin-მა მომხმარებლის მითითებით შექმნა ინტერაქტიული ვებსაიტი სიცოცხლის თამაშის (“Game of Life”) სიმულაციისთვის, დაამატა მომხმარებლის მიერ მითითებული ფუნქციონალი და განათავსა Netlify-ზე (ვებსაიტის სერვერზე ატვირთვის და ინტერნეტში ჩაშვების ერთ-ერთი პლატფორმა). ამისთვის კი Devin-მა თავდაპირველად მიიღო მომხმარებლისგან შესაბამისი ინსტრუქცია, შემდეგ დამოუკიდებლად შეადგინა პროექტის გეგმა, დააგენერირა თამაშის და ვებსაიტის კოდი, იპოვა და გაასწორა შეცდომები, დაამატა და შეცვალა ფუნქციონალები მომხმარებლის მითითებების შესაბამისად და დასრულებული პროექტი ატვირთა სერვერზე.
Devin-ს შეუძლია დამოუკიდებლად იპოვოს და გაასწოროს შეცდომები დიდი მოცულობის კოდში მომხმარებლის მიერ ფაილის წინასწარ მითითების გარეშე. მაგალითად, Devin-მა ძალიან სწრაფად შეძლო ღია რეპოზიტორიაში (Open-source Repository) არსებულ ფაილებში არსებული შეცდომების აღმოჩენა და გასწორებაც ისე, რომ შეინარჩუნა კოდის მუშაობის პრინციპი. იგივე რთულად შესასრულებელი აღმოჩნდა ადამიანისთვის და დიდი დროც მოითხოვა. Devin-ი დამოუკიდებლად პოულობს შეცდომებს, ასწორებს, ხელახლა ტესტავს და დასრულებული სახით აწვდის მომხმარებელს.
მაგალითად, Devin-სთვის Github-ზე არსებული საჯარო რეპოზიტორიის ლინკის მიწოდებაც საკმარისია, რომ დაატრენინგოს ან დახვეწოს აღნიშნულ ლინკზე არსებული ენის დიდი მოდელი (LLM) მომხმარებლის მითითების შესაბამისად. ეს კი ნიშნავს, რომ AI მოდელს სხვა AI მოდელის დატრენინგება შეუძლია.
Devin-ს შეუძლია საჯარო რეპოზიტორიაში არსებული შეცდომების აღმოჩენა კონკრეტული ფაილის მითითების გარეშეც და მათი გასწორება. გარდა ამისა, მოდელი მომხმარებლის მითითებებს ფუნქციონალების დამატების ან ამოღების შესახებ ასრულებს ისე, რომ ინარჩუნებს კოდის მუშაობის პრინციპს. ამისთვის, საკმარისია GitHub Issue-ის შესაბამისი ლინკის მითითება და Devin დამოუკიდებლად ასრულებს დავალებას.
ეს შემთხვევა Devin-ის შეფასების მნიშვნელოვანი ნაწილია SWE-bench ბენჩმარკის მიხედვით. Მაგალითად, Devin-მა ლოგარითმული გამოთვლებით გაასწორა შეცდომა sympy პითონის ალგებრულ სისტემაში. ამისთვის Devin-მა დამოუკიდებლად გაუშვა კოდი, აღმოაჩინა შეცდომა, შესაბამისად შეცვალა ის და გაუშვა ხელმეორედ ტესტირებაზე.
Devin-მა კლიენტს Software Engineering-ის მომსახურება გაუწია როგორც ფრილანსერმა დეველოპერმა ფრილანსერმა Upwork-ზე.
შეჯამებისთვის, ამ ეტაპზე Devin-ს შეუძლია ისწავლოს უცნობი ტექნოლოგიების გამოყენება, შექმნას და განათავსოს აპლიკაციები ინტერნეტში, იპოვოს და გაასწოროს შეცდომები GitHub-ის საჯარო რეპოზიტორიებში ან ცალკეულ ფაილებში. უფრო მეტიც, შეუძლია სხვა AI მოდელების დატრენინგება, ფუნქციონალების ცვლილება და რაც ყველაზე შთამბეჭდავია, Devin-ს უკვე შეუძლია რეალური სამუშაოს შესრულებაც Upwork-ზე.
Devin-ის შეფასება SWE-Bench ბენჩმარკის მიხედვით
SWE-bench პროგრამული უზრუნველყოფის სისტემების შესაძლებლობების შეფასების ბენჩმარკია, Devin კი ახალი და გამოკვეთილი ლიდერი. SWE-bench აფასებს სისტემას იმის მიხედვით, თუ რამდენად კარგად შეუძლია მას რეალური კოდის შექმნა. კონკრეტულად, ბენჩმარკი აფასებს სისტემის შესაძლებლობას, გადაჭრას GitHub-ზე ისეთი რთული და რეალური პრობლემები, როგორიცაა Django-ს და scikit-learn-ის პროექტები.
SWE-Bench არის 2 294 Issues-სა და Pull Request-ის მონაცემთა ბაზა, რომელიც მოპოვებულია GitHub-ზე არსებული Python-ის საჯარო რეპოზიტორიებიდან.
Devin დაიტესტა და შეფასდა მონაცემთა ბაზის 25% შერჩევით ნიმუშთან მიმართებით. SWE-bench ბენჩმარკის შეფასებით, Devin-ს დამოუკიდებლად (კონკრეტული ფაილების მითითების გარეშე) შეუძლია პრობლემების 13.86%-ის გადაჭრა, რაც გაცილებით აღემატება ისეთი AI მოდელების შედეგებს, როგორიცაა Chat GPT4, Llama 13B, Claude 2. უნდა აღინიშნოს, რომ იმ შემთხვევაშიც კი, როცა მოდელს კონკრეტული ფაილები მიეწოდება შესამოწმებლად და ცვლილებების შესატანად, სხვა მოდელებს შეუძლიათ პრობლემების მხოლოდ 4.8%-ის გადაჭრა.
Devin განვითარების ჯერ მხოლოდ საწყის ეტაპზეა და კომპანიის მიზანია შექმნას ისეთი AI მოდელი, რომელიც არამარტო პროგრამული უზრუნველყოფის მიმართულებით შეძლებს ადამიანებისთვის და კომპანიებისთვის მომსახურების შეთავაზებას, ასევე სხვა სფეროებშიც შეძლებს ინტეგრირებას და სამუშაო პროცესების გამარტივებასა და აჩქარებას.
რაც შეეხება კოდირებისა და პროგრამისტების ჩანაცვლების რისკს, ამ ეტაპზე ეს არაა რეალისტური. გარდა იმისა, რომ LLM-ებისთვის ჰალუცინაციები ჯერ კიდევ მნიშვნელოვანი გამოწვევაა, კომპანიები ჯერ მზად არ არიან, მათთვის მნიშვნელოვანი კოდის შექმნა, შეცვლა და განთავსება (Deployment) მხოლოდ AI მოდელს მიაბარონ. ასევე, AI-ისთვის ჯერ ძალიან რთული იქნება ბიზნეს მოთხოვნების შეგროვება, გაანალიზება და ტექნიკურ გადაწყვეტში თარგმნა. უფრო რეალისტური პერსპექტივაა, რომ დეველოპერების როლი ნაწილობრივ შეიცვალოს და აქტიურად კოდის წერის ნაცვლად მათ AI ხელსაწყოებთან მუშაობა, პრობლემების ჩამოყალიბება (Prompt Engineering) და შეცდომების გასწორება მოუწიოთ. მეორე მხრივ, დეველოპერების პროდუქტიულობის გაზრდამ შეიძლება მათზე მოთხოვნის შემცირება და შესაბამისად ანაზღაურების კლებაც გამოიწვიოს.
ამ ეტაპზე Devin საჯაროდ ხელმისაწვდომი არ არის. დევინის გამოყენება შესაძლებელია ადრეული წვდომის რეჟიმში, რისთვისაც საჭიროა მოთხოვნის გაგზავნა ბმულზე ან შესაძლებელია კომპანიასთან დაკავშირება მეილზე info@cognition-labs.com.
コメント