
რას სწავლობს AI ინდუსტრია Erlang/OTP-ისგან: ძველი პატერნები ახალი აგენტებისთვის
DEV Community-ზე გამოქვეყნებული სტატიის ავტორი ამტკიცებს, რომ აგენტური ჩარჩოები იმავე არქიტექტურას იმეორებენ, რასაც Erlang/OTP ჩაშენებული runtime-ის სახით უკვე 1986 წლიდან სთავაზობს: იზოლირებული მდგომარეობა, შეტყობინებების გაცვლა და ზედამხედველობის ხეები.
პროგრამული უზრუნველყოფის ინჟინერმა Matheus de Camargo Marques-მა DEV Community-ზე სტატია გამოაქვეყნა, სადაც ამტკიცებს, რომ ინდუსტრიის ყოველი ახალი აგენტური ჩარჩო იმ არქიტექტურას იმეორებს, რომელიც Erlang/OTP-ს ჩაშენებული runtime-ის სახით 1986 წლიდან აქვს: იზოლირებული მდგომარეობა, შეტყობინებების გაცვლა, ზედამხედველობის იერარქია და ავარიების ავტომატური აღდგენა.
მისი არგუმენტი კონკრეტული ენის უპირატესობას არ ეხება: თავად ამოცანის ფორმა კარნახობს ერთსა და იმავე პასუხს. აგენტი, რომელსაც საკუთარი მეხსიერება და შეტყობინებების რიგი აქვს, actor-ის იმ მოდელს იმეორებს, რომელიც Carl Hewitt-მა 1973 წელს შემოგვთავაზა, Erlang-მა კი 1986 წელს runtime-ად დანერგა.
მიკროსერვისების რუკა, რომელიც OTP-ში უკვე არსებობს
სტატია ეყრდნობა Teksystems-ის 2026 წლის აპრილის მასალას, სადაც მიკროსერვისების ცნებები აგენტური სისტემების ანალოგებს უტოლდება: სერვისების აღმოჩენა MCP-ით ხელმისაწვდომ აგენტის შესაძლებლობებად იქცევა, API Gateway მთავარ აგენტად ან ზედამხედველად, რომელიც მოთხოვნებს ქვეაგენტებზე ანაწილებს, ხოლო უსტატუსო ლოგიკა სესიების მართვად.
Marques-ი ცხრილის თითოეულ პუნქტს OTP-ის შესაბამისს უთითებს: Registry და global მოდულები აღმოჩენისთვის, Supervisor და DynamicSupervisor მარშრუტიზაციისა და აგენტების პულისთვის, GenServer-ის მდგომარეობა და ets ცხრილები მონაცემებისთვის, პატერნების დამთხვევა კი კონტრაქტებისთვის. ცალკე ციტირებულია VentureBeat-ის 2025 წლის დეკემბრის მასალა, სადაც ერთი დიდი მოთხოვნით აწყობილ ასისტენტს „კოგნიტურ მონოლითს“ უწოდებენ.
როგორ გამოიყურება კოდი
სტატიის მეორე ნახევარი Elixir-ის მოკლე მაგალითებია. GenServer-ზე დაფუძნებული აგენტი საუბრის ისტორიას ინახავს და ამოკლებს, რომ კონტექსტი არ გაიფანტოს; Registry-იანი ზედამხედველობის ხე აგენტებს პოულობს და ავარიის შემდეგ თავიდან ამუშავებს; DynamicSupervisor კი მათ საჭიროებისამებრ ქმნის.
ReAct-ის ციკლისთვის ავტორი GenServer-ის ნაცვლად gen_statem-ს ირჩევს: აგენტის ციკლი ცხად მდგომარეობათა მანქანად იქცევა, idle, reasoning, acting და done მდგომარეობებით. ETS-ზე აწყობილი ხელსაწყოების რეესტრი MCP-ის აღმოჩენის პატერნს დაახლოებით 50 სტრიქონი Elixir-ით იმეორებს, გარე დამოკიდებულებების გარეშე.
რას იძლევა OTP უფასოდ
ყველაზე ხელშესახები მოგება ავარიის შემდეგ აღდგენაა: თუ GenServer-ი მუშაობას შეწყვეტს, ზედამხედველი მას ავტომატურად გადატვირთავს, დანარჩენი პროცესები კი ხელუხლებლად აგრძელებენ მუშაობას. იგივეს ამბობს Elixir-ის აგენტური ჩარჩოს Jido-ს დოკუმენტაციაც. მდგომარეობა შეიძლება აღდგეს ETS-ით, ბაზით, მოვლენების აღრიცხვით ან სნეპშოტით.
ყოველ პროცესს საკუთარი მეხსიერება აქვს, ამიტომ იზოლირებული გარემოსთვის კონტეინერი არ საჭიროა: საკმარისია პროცესების იზოლაცია, დროის ლიმიტები და მეხსიერების ზღვარი. OTP-ის დაკვირვების ხელსაწყოები პროცესების ხეს, GenServer-ის მდგომარეობასა და შეტყობინებების ნაკადს აჩვენებს. AWS Summit London-ზე Matheus Guimaraes-ის გამოსვლიდან ციტატით ავტორი ასკვნის: „პატერნები არ კვდება, ისინი უბრალოდ ახალ ნიღაბს ირგებენ“.
SiTech — AI-გაძლიერებული ვებ დეველოპმენტი
ვქმნით სწრაფ, თანამედროვე ვებსაიტებს და AI-ს ვაერთიანებთ ქართული ბიზნესებისთვის. გაქვთ პროექტი ან კითხვა? სიამოვნებით დაგეხმარებით.