Хөтчийн бүрхүүлээс хязгаарласан компьютер ашиглалт руу

Илүү чадварлаг агентуудад хийсвэрлэл ихтэй хөтчийн автоматжуулалт бус, нямбай хязгаарласан гүйцэтгэлийн орчин хэрэгтэй.

Удирдлагын хураангуй

  • Компьютер ашиглалт гэж юу вэ, яагаад чухал вэ? Компьютер ашиглалт нь өргөн үр нөлөөтэй энгийн санаа юм: загваруудаас асуултад хариулахыг хүсэхийн оронд вебсайтаар шилжих, маягт бөглөх, ажлын урсгалын алхмуудыг дарах, даалгаврыг эхнээс нь дуустал бие даан гүйцэтгэх зэргээр программ хангамж ажиллуулахыг хүснэ.

  • Ингэснээр бүрэн захиалга хийх, цахим худалдааны төлбөр тооцоо, олон үе шаттай аялал төлөвлөлт, цэвэр API хувилбаргүй дотоод үйл ажиллагаа зэрэг одоогоор олон интерфейст хуваагдсан бодит ертөнцийн томоохон бүлэг даалгаврыг гүйцэтгэх боломж нээгдэнэ. Эдгээр нь шинэ асуудал биш. Шинэ зүйл нь тэдгээрийг ерөнхий зориулалтын загвараар шийдэх боломжтой болсон явдал юм.

  • Anthropic болон OpenAI-ийн сүүлийн үеийн системүүд зөвхөн үйлдээд зогсохгүй төлөвийн талаар сэтгэн бодож, алдаанаас сэргэн, тухайн даалгаварт тохирсон шийдлийг явцын дунд бүтээдэг агентуудыг харууллаа. Ингэснээр хөтөч агентуудын ерөнхий гүйцэтгэлийн орчин болж байгаа ч уг орчноос хэр ихийг загварт нээлттэй болгох вэ гэсэн загварчлалын нэн даруй хариулах асуулт гарна.

  • Эртний системүүд хөтчийг аюулгүй, урьдчилан тодорхойлсон тогтмол үйлдлүүдээр бүрхэж үүнд хариулсан. Энэ нийтлэлд тайлбарлахчлан уг арга боломжийнхоо хязгаарт хүрч байна.

Удирдлагын хураангуйг дүрсэлсэн диаграмм.

Хөтчийн агент бүтээхэд «загварт хэт их бүү итгэ» гэсэн танил зөн совин төрдөг.

Тиймээс бид хөтчийг бүрхүүлээр хүрээлдэг. Бид click, type, scroll, select, read_text зэрэг урьдчилан тодорхойлсон хэрэгслийг нээлттэй болгодог. Бид Document Object Model (DOM)-ийг хялбаршуулдаг. Бид боломжит үйлдлийн хүрээг багасгадаг. Бид өөрсдийн зохиосон хийсвэрлэлээр үйлдлийг ойлгомжтой, хянах боломжтой болгохыг хичээдэг.

Энэ бол эхлэхэд боломжийн арга. Гэвч урт хугацаанд энэ нь улам бүр буруу архитектур болж байна.

Хил хязгаар загварууд сайжрахын хэрээр асуудал нь зөвхөн загварт хэрэгсэл дутсанд байхаа больж байна. Харин суурь системийн хэт их мэдээллийг хассан хийсвэрлэлээр дамжуулан ажиллахыг бид загварт тулгаж байгаад оршино. Бид эмх замбараагүй, динамик орчныг тогтмол үйлдлийн интерфейс болгон шахаад, мэдээллийн ийм алдагдалтай орчинд сайн ажиллахыг загвараас хүсдэг.

Энэ буулт улам сонирхолгүй болж байна.

Бидний судалж буй шилжилтийг тайлбарлахад энгийн ч үр дагавар нь том. Агентыг урьдчилан тодорхойлсон үйлдэл сонгогч гэж үзэхийн оронд хязгаарласан ажиллах орчинд ажилладаг программ үүсгэгч гэж үзнэ.

Загварууд үнэхээр чадварлаг болсон тул таны хийсвэрлэсэн хамгаалалтын хашлага тэдэнд хэрэггүй. Харин зорилгодоо хүрэх хүртлээ даалгаврыг төлөвлөж, гүйцэтгэн, давтан сайжруулахын тулд үйлдлийн бүрэн хүрээ хэрэгтэй.

Энэ нийтлэл хийсвэрлэл ихтэй хөтчийн автоматжуулалтаас хязгаарласан компьютер ашиглалт руу шилжих тухай болон системийг ийм байдлаар загварчлахад юу өөрчлөгдөхийг өгүүлнэ.

Хийсвэрлэл яагаад задардаг вэ

Тогтмол үйлдлийн интерфейс үзэл баримтлалын хувьд буруу байгаа нь асуудал биш. Харин веб тэдгээрийн дагуу ажилладаггүй нь асуудал юм.

Хийсвэрлэл яагаад задардгийг дүрсэлсэн диаграмм.

Орчин үеийн интерфейсүүд React, Vue, Angular дээр бүтээгдэж, асинхрон төлөвийн шинэчлэл, зохиомол үйл явдлын систем, өөрийн амьдралын мөчлөгтэй, өөр эх үүсвэрийн iframe доторх гуравдагч талын виджетүүдийг ашигладаг. «Энэ оруулах талбарт бич» гэсэн бүрхүүл нь тухайн хуудас таны «бичих» гэсэн тодорхойлолттой нийцсэн үед л зөв ажиллана. Олон хуудас нийцдэггүй. Утгыг шууд тохируулах нь фреймворкийн өөрчлөлт илрүүлэх механизмыг ихэвчлэн бүхэлд нь тойрдог. Оруулах талбар бөглөгдсөн мэт харагдана. Баталгаажуулалт огт ажиллахгүй. Маягт ажиллахгүй хэвээр үлдэнэ.

Үүнийг нөхөөсөөр засаж болно. React-ийн оруулах талбарт зориулсан тусгай тохиолдол нэмж, focus-ийн дараа blur үйл явдал илгээн, төлөвийг уншихаас өмнө сүлжээ идэвхгүй болохыг хүлээж болно. Нөхөөс бүр тухайн нөхцөлдөө зөв. Гэвч нийлээд арчлахад улам хэцүү, өмнө таарсан сайтуудад улам нарийн тохируулсан систем болж хуримтлагдана.

Гүнзгий асуудал нь харилцан үйлчлэл хэрхэн ажиллах ёстой талаарх таамгийг хийсвэрлэлийн давхаргад кодлоод, веб өөр таамгаар ажилладгийг дараа нь олж мэддэгт оршино.

Хийсвэрлэл бодит урсгалтай тулгарахад юу болдог вэ

Өөр эх үүсвэрийн iframe дотор Stripe эсвэл Adyen-аар шигтгэсэн төлбөрийн маягтыг авч үзье. Тусдаа эх үүсвэрт байрладаг тул таны бүрхүүл түүнд шууд хүрч чадахгүй. Таны read_text хэрэгсэл дотоод төлөвийг нь ажиглаж чадахгүй. Таны type хэрэгсэл оруулах талбаруудад нь хандаж чадахгүй. Бүрхүүлд суурилсан агент энд мухардалд орно. Хийсвэрлэлийг үндсэн баримт бичигт зориулан зохиосон. Харин бодит даалгавар хийсвэрлэлд харагдахгүй газар оршиж байна.

Үүнтэй төстэй зөрүү анзаарахад амаргүй урсгалуудад ч гардаг. Харагдаж буй элемент нь жинхэнэ удирдлага биш тул фреймворкийн хяналттай доош дэлгэгдэх цэс шууд товшиход огт хариу өгөхгүй байж болно. Суурь төлөвийн шилжилтийг өдөөхийн тулд гарын үйл явдлуудыг дарааллаар нь илгээх шаардлагатай байж болно. Гаднаас нь харахад UI дээр товшиж болох мэт. Хийсвэрлэл «товш» гэж хэлнэ. Юу ч болохгүй.

Эсвэл харагдах DOM-ийн шинэчлэл дотоод төлөвийн өөрчлөлтөөс хоцордог олон үе шаттай модал урсгалыг авч үзье. Дараагийн зөв үйлдэл нь таны бүрхүүлд харагдах элементүүдэд хараахан тусгагдаагүй төлөвийн шилжилтээс хамаарна. Бүрхүүлд суурилсан агент системийг бүрэн бусаар харж ажилладаг тул хэт эрт үйлдэх эсвэл хуучирсан төлөвийг уншихад хүрнэ.

Тохиолдол бүрд хийсвэрлэл агентын үнэхээр хэрэгтэй дохиог нуудаг.

Идэвхтэй DOM-ийг шалгаж, frame-ийн хил хязгаарын талаар сэтгэн бодож, тухайн интерфейст тохирсон харилцан үйлчлэлийн дарааллыг үүсгэн доод түвшинд ажилладаг загвар эдгээр нөхцөлийг даван туулж чадна. Загвар угаасаа илүү ухаантайдаа биш. Харин хасагдсан мэдээлэлд хандах боломжтой болсонд учир бий.

Архитектурын шилжилт

Бидний зорьж буй өөрчлөлтийг тайлбарлахад энгийн: загвараас урьдчилан тодорхойлсон үйлдэл сонгохыг хүсэхийн оронд доод түвшний гүйцэтгэлийн орчин өгч, уг орчныг хийсвэрлэлийн загвараар бус ажиллах орчны бодлогоор хязгаарлана.

Салбарын өргөн хүрээний шилжилт энэ сонголтын үндэс болсон. Өөр өөр орчинд дасан зохицох загварын чадварыг хасдаг, найдвартай боловч тусгайлан хатуу кодлосон хэрэгслээс илүүтэй ажиллах үедээ алдаагаа засах, чанартай код үүсгэх агентын төрөлх чадварыг ашигладаг доод түвшний суурь хэрэгслийг салбар илүүд үзэж эхэлж байна.

Олон хөгжүүлэгчийн хэрэгслийн багцад Claude Code үндсэн сонголт болж амжилт олсон болон салбар бүхэлдээ терминалд суурилсан агентууд руу шилжиж буйг авч үзье. Claude Code-ийн хамгийн том давуу тал нь загвар өөрөө бус, доод түвшний хамгаалалт юм. Загварт цөөн, илүү модульчлагдсан, доод түвшний хэрэгсэл буюу терминал өгөх нь хэрэгсэл дуудах гүйцэтгэлийг сайжруулдаг. Учир нь агент контекстийн цонхыг дүүргэдэг ерөнхий хэрэгсэл ашиглах гэж оролдохын оронд тухайн даалгаврыг сэтгэн бодож, тусгай скрипт үүсгэж чадна.

Хөтчийн автоматжуулалтад энэ нь бүхнийг урьдчилан бүтээсэн тогтмол үйлдлүүдэд тааруулахын оронд загвар хуудасны идэвхтэй төлөвийг шууд шалгаж, frame-үүдээр дамжин, одоогийн интерфейст тусгайлан тохирсон харилцан үйлчлэлийн код бүтээж чадна гэсэн үг.

Загвар сонгогчоос илүүтэй ажиллах үеийн зохиогч шиг ажиллана. Тэр одоогийн төлөвийг шалгаж, интерфейсийн талаар сэтгэн бодоод, тухайн нөхцөлд тохирсон харилцан үйлчлэлийн логикийг үүсгэнэ. Олон алхамт дараалал бүтээж, ердийн бус урсгалд дасан зохицож, үргэлжлүүлэхийн өмнө үр дүнг баталгаажуулж чадна. Үйлдэл бүтэлгүйтвэл загвар суурь алдааг харж, өөрийгөө засна. Энэ нь илүү хүчирхэг бас илүү эрсдэлтэй ч асуудлын бодит мөн чанарт хавьгүй ойр.

Хамгийн чухал нь хийсвэрлэлийн давхаргыг арилгах нь системийн сахилга батыг сулруулахгүй. Харин сахилга батыг өөр газар шилжүүлнэ.

Өмнө нь бүрхүүлийн загварчлал болон онцгой тохиолдол боловсруулахад байсан ажил гурван хэсэгт шилжинэ: өгөгдөл (үйл ажиллагааны сургалтын нэг хэлбэр болно), ажиллах орчин (шилжих хүрээ, эмзэг үйлдэл, дахин оролдох ажиллагаа зэрэг хязгаарыг мөрдүүлнэ), үнэлгээний давхарга (зөвхөн даалгавар амжилттай болсон эсэхийг бус, завсрын алхмууд зөв байсан эсэхийг үнэлнэ). Хэврэг хийсвэрлэлийг цөөрүүл. Хүрээлэх системүүдийг бэхжүүл.

Гэнэтийн үр дүн: бүтээгдэхүүний код энгийн болж, ерөнхийлөн хэрэглэх чадвар өргөжнө

Энэ шилжилтийн нэг үр дүн нь нийт системийн чадвар нэмэгдэхийн зэрэгцээ бүтээгдэхүүний код ихэвчлэн энгийн болдог явдал юм. Харилцан үйлчлэлийн хэв маягийг дахин ашиглах бүрхүүл болгон кодлохын оронд агент ажиллах үедээ үйлдлээ үүсгэдэг. Тусгай хэрэгслүүд болон онцгой тохиолдлын логикийг улам олшруулахын оронд цөөн тооны хүчирхэг суурь үйлдэл, хязгаарласан гүйцэтгэлийн орчныг арчилна.

Энэ нь системийн ерөнхийлөн хэрэглэх чадварыг ч өөрчилдөг. Бүрхүүлд суурилсан агент өмнө нь бүтээсэн бүрхүүлүүдтэй төстэй даалгавруудад сайн ерөнхийлөн ажилладаг. Хязгаарласан ажиллах орчны агент нь харагдах интерфейс өөр байсан ч ижил гүйцэтгэлийн суурьтай даалгавруудад ерөнхийлөн ажилладаг.

Жишээлбэл, хайлтын маягт, захиалгын урсгал, тохиргооны хуудастай харилцах нь UI-ийн түвшинд огт өөр харагдаж болно. Гэвч цаанаа тэд төлөв унших, үйл явдал өдөөх, үр дүнг баталгаажуулах, асинхрон шинэчлэл боловсруулах зэрэг ижил хэв маягтай. Тэр түвшинд ажилладаг систем нэг даалгавраас нөгөөд илүү жам ёсоор шилжин ажилладаг.

Дахин ашиглаж болох бүрэлдэхүүн нь үйлдлийн жагсаалт биш. Харин төлөвийг шалгаж, аюулгүй үйлдэн, үр дүнг баталгаажуулах загварын чадвар юм.

Хэт туслахын оронд хязгаарла

«Хэт туслахын оронд хязгаарла» гэсэн санааг дүрсэлсэн диаграмм.

Энэ ажлаас авсан хамгийн тод сургамж бол загварт олон туслах функц өгснөөр найдвартай байдал бий болдоггүй явдал юм. Харин цөөн боловч илүү хүчирхэг суурь үйлдэл өгч, тэдгээрийг зөв аргаар хязгаарласнаар найдвартай байдал ихэвчлэн бий болдог. Хэт туслах нь даалгаврыг хэрхэн гүйцэтгэх ёстой талаарх таамгийг кодод хатуу шингээдэг. Хязгаарлалтууд аюулгүй ажиллах хүрээг тогтоож, илүү тохиромжтой шийдлийг тухайн нөхцөлд олох боломжийг загварт олгодог.

Илүү хүчирхэг гүйцэтгэлийн орчинд аюулгүй байдлын илүү нарийн загвар мөн шаардлагатай. Агентыг урьдчилан тодорхойлсон цөөн үйлдлээр хязгаарлахаа болимогц тэр бодит программ хангамж дээр шууд ажиллаж эхэлнэ. Ингэснээр эрсдэлийн төлөв нэн даруй өөрчлөгдөнө.

Загварчлалд дөрвөн асуудлыг харгалзах хэрэгтэй:

Өгөгдөл ил гарах. Агент бодит интерфейстэй харилцахдаа нууц мэдээлэлтэй олонтаа таарна. Иймд мэдээллийг далдлах болон хандалтыг хянахдаа хатуу дэг баримтлах шаардлагатай. Өгөгдлийг зөвхөн гүйцэтгэлд шаардлагатай үед харуулах ёстой бөгөөд ажиглалтын боломж нь системийн хамгийн эмзэг хэсэг болохоос сэргийлж лог, мөрийг нямбай зохицуулах хэрэгтэй.

Гүйцэтгэлийн хамрах хүрээ. Хүчирхэг агент хүссэн бүхнээ хийх боломжтой байж болохгүй. Практикт энэ нь хаашаа шилжиж болох, ямар домэйнд хандах, ямар системтэй харилцахыг нь хязгаарлана гэсэн үг. Эдгээр хязгаарлалтыг өгөгдөл дэх тохиролцоо болгоод орхих бус, ажиллах орчны түвшинд мөрдүүлэх ёстой.

Орчинд итгэх итгэл. Орчин үеийн интерфейс төөрөгдүүлсэн эсвэл зориудын халдлагын шинжтэй заавар, агуулга, урсгал агуулж болно. Хуудасны агуулгаар дамжих зааварт халдлага нь бодит халдлагын талбар юм. Агентыг хүсээгүй заавар дагахаас сэргийлэхийн тулд системд зааврын тодорхой шатлал, баталгаажуулах шалгалт, зогсоох нөхцөл хэрэгтэй.

Бие даасан байдлын хүрээ. Бүх үйлдэл бүрэн бие даасан байх албагүй. Үйлдвэрлэлийн олон орчинд бие даасан байдлыг шаталсан хүрээ гэж үзэх нь чухал. Систем хайж судлах, гүйцэтгэхдээ өндөр бие даасан байж болох ч зарим төрлийн үйлдэлд зөвшөөрөл шаардсаар байж болно.

Үндсэн зарчим нь энгийн: загварт илүү их эрх мэдэл өгөх тусам түүнийг хүрээлэх системийг улам бэхжүүлэх шаардлагатай. Бодлогогүй бие даасан ажиллагаа үйлдвэрлэлд нэвтрүүлэхэд бэлэн биш.

Бидний сэтгэлгээг өөрчилсөн шинэ өнцөг

Бид «Хөтчийн ямар үйлдлүүдийг нээлттэй болгох нь зөв бэ?» гэж асуухаа больсон.

Харин «Загварт үйлдлийн бүрэн хүрээ өгөхийн тулд юу хийж болох вэ? Үүний зэрэгцээ аюулгүй байлгах ажиллах орчны бодлогыг хэрхэн бүрдүүлэх вэ?» гэж асууж эхэлсэн.

Ингэж өнцгөө өөрчлөхөд юуг чухалчлах нь ч өөрчлөгдөнө. Үйлдлийн ангилал болон бүрхүүлийн бүрэн байдал бага ач холбогдолтой болно. Ажиллах орчны бодлого, ажиглалтын боломж, алхам тус бүрийн үнэлгээ илүү чухал болно. Загварын чадвар, системийн загварчлал хоёр бие биеэ орлохгүй. Загварууд сайжрахын хэрээр системийн хийх ажил багасах бус, улам чухал болдог.

Үзүүлэн дээр ажилладаг хөтчийн агентуудын даалгавар нь явцуу, орчин нь таатай байдаг учраас ихэвчлэн амжилтад хүрдэг. Үйлдвэрлэлийн системд өөр зүйл хэрэгтэй: хязгаарласан гүйцэтгэл, хэмжиж хянах боломжтой үйлдэл, зөв үр дүнг азтай тохиолдлоос ялгаж чадах үнэлгээ.

Төгсгөлийн санаа

Бүрхүүлийн загварчлалыг багасга. Системийн инженерчлэлийг нэмэгдүүл.

Бид хөтчийн агентуудад төвлөрсөн ч энэ нь компьютер ашиглалтыг системийн нэг салбар хэмээн үзэх илүү өргөн сэтгэлгээний чиглэлийг зааж байна.

Зохиогч

Yuxi Huan, Yuliyan Stefanov Savchev, Sheah Wen Liaw