стуб ЦхатДев : Комуникативни агенти за развој софтвера - Уните.АИ
Повежите се са нама

Вештачка интелигенција

ЦхатДев : Комуникативни агенти за развој софтвера

mm
Ажурирано on
ЦхатДев: развој софтвера уз помоћ вештачке интелигенције

Индустрија развоја софтвера је домен који се често ослања и на консултације и на интуицију, коју карактеришу сложене стратегије доношења одлука. Штавише, развој, одржавање и рад софтвера захтевају дисциплинован и методичан приступ. Уобичајено је да програмери софтвера заснивају одлуке на интуицији, а не на консултацијама, у зависности од сложености проблема. У настојању да побољшају ефикасност софтверског инжењеринга, укључујући ефикасност софтвера и смањене трошкове развоја, научници истражују употребу оквира заснованих на дубоком учењу како би се позабавили различитим задацима у оквиру процеса развоја софтвера. Са недавним развојем и напретком у секторима дубоког учења и вештачке интелигенције, програмери траже начине да трансформишу процесе и праксе развоја софтвера. Они то раде користећи софистициране дизајне имплементиране у различитим фазама процеса развоја софтвера.

Данас ћемо разговарати о ЦхатДев-у, иновативном приступу заснованом на моделу великог језика (ЛЛМ) који има за циљ да револуционише област развоја софтвера. Ова парадигма настоји да елиминише потребу за специјализованим моделима током сваке фазе процеса развоја. ЦхатДев оквир користи могућности ЛЛМ оквира, користећи комуникацију на природном језику да обједини и поједностави кључне процесе развоја софтвера.

У овом чланку ћемо истражити ЦхатДев, виртуелну компанију специјализовану за развој софтвера. ЦхатДев усваја модел водопада и педантно дели процес развоја софтвера у четири примарне фазе.

  1. Дизајнирање. 
  2. Кодирање. 
  3. Тестирање. 
  4. Документација. 

Свака од ових фаза поставља тим виртуелних агената као што су програмери кода или тестери који сарађују једни са другима користећи дијалоге који резултирају беспрекорним током рада. Ланац ћаскања ради као фасилитатор и разлаже сваку фазу процеса развоја на атомске подзадатке, омогућавајући на тај начин двоструке улоге, омогућавајући предлоге и валидацију решења коришћењем комуникације свесне контекста која омогућава програмерима да ефикасно решавају наведене подзадатке. 

ЦхатДев: развој софтвера уз помоћ вештачке интелигенције

ЦхатДев-ова инструментална анализа показује да не само да је ЦхатДев оквир изузетно ефикасан у довршавању процеса развоја софтвера, већ је и изузетно исплатив, као и да комплетира цео процес развоја софтвера за нешто мање од једног долара. Штавише, оквир не само да идентификује, већ и ублажава потенцијалне рањивости, исправља потенцијалне халуцинације, уз одржавање високе ефикасности и исплативости. 

ЦхатДев: Увод у развој софтвера заснованог на ЛЛМ-у

Традиционално, индустрија развоја софтвера је она која је изграђена на темељима дисциплинованог и методичног приступа не само развоју апликација, већ и њиховом одржавању и раду. Традиционално говорећи, типичан процес развоја софтвера је веома замршен, сложен и педантан процес који одузима време са дугим развојним циклусима, пошто постоји више улога укључених у процес развоја укључујући координацију унутар организације, доделу задатака, писање кода, тестирање, и на крају, документација. 

У последњих неколико година, уз помоћ ЛЛМ или модели великих језика, заједница вештачке интелигенције је постигла значајне прекретнице у областима компјутерског вида и обраде природног језика, а након обуке о парадигмама „предвиђања следеће речи“, модели великих језика су добро показали своју способност да поврате ефикасне перформансе на широком спектру задатака на низу попут машинског превођења, одговарања на питања и генерисања кода. 

Иако велики језички модели могу писати код за цео софтвер, они имају велики недостатак: код халуцинација, што је прилично слично халуцинацијама са којима се суочавају оквири за обраду природног језика. Халуцинације кода могу укључивати проблеме као што су неоткривене грешке, недостајуће зависности и непотпуне имплементације функција. Постоје два главна узрока кодних халуцинација. 

  • Недостатак спецификације задатка: Када генеришете софтверски код у једном кораку, недефинисање специфичности задатка збуњује ЛЛМ јер задаци у процесу развоја софтвера као што су анализа корисничких захтева или одабир жељеног програмског језика често пружају вођено размишљање, нешто што недостаје високом задаци на нивоу којима се баве ови ЛЛМ. 
  • Недостатак унакрсног испитивања : Значајни ризици настају када се унакрсно испитивање не изврши, посебно током процеса доношења одлука. 

ЦхатДев има за циљ да реши ове проблеме и омогући ЛЛМ-ове са моћи да креирају најсавременије и ефикасне софтверске апликације стварањем виртуелне компаније за развој софтвера која успоставља модел водопада и педантно дели процес развоја софтвера на четири основна фазе,

  1. Дизајнирање. 
  2. Кодирање. 
  3. Тестирање. 
  4. Документација. 

Свака од ових фаза поставља тим виртуелних агената као што су програмери кода или тестери који сарађују једни са другима користећи дијалоге који резултирају беспрекорним током рада. Штавише, ЦхатДев користи ланац ћаскања који ради као фасилитатор, и разлаже сваку фазу развојног процеса на атомске подзадатке, омогућавајући на тај начин двоструке улоге, омогућавајући предлоге и валидацију решења коришћењем комуникације свесне контекста која омогућава програмерима да ефикасно решити наведене подзадатке. Ланац ћаскања се састоји од неколико чворова где сваки појединачни чвор представља одређени подзадатак, а ове две улоге учествују у вишеструким дискусијама свесне контекста како би не само предложиле, већ и потврдиле решења. 

У овом приступу, ЦхатДев оквир прво анализира захтеве клијента, генерише креативне идеје, дизајнира и имплементира прототипне системе, идентификује и решава потенцијалне проблеме, креира привлачну графику, објашњава информације за отклањање грешака и генерише корисничке приручнике. Коначно, ЦхатДев оквир испоручује софтвер кориснику заједно са изворним кодом, корисничким приручницима и спецификацијама окружења зависности. 

ЦхатДев : Архитектура и рад

Сада када имамо кратак увод у ЦхатДев, хајде да погледамо архитектуру и рад ЦхатДев оквира почевши од Цхат Цхаин-а. 

Цхат Цхаин

Као што смо поменули у претходном одељку, ЦхатДев оквир користи метод водопада за развој софтвера који дели процес развоја софтвера у четири фазе укључујући пројектовање, кодирање, тестирање и документацију. Свака од ових фаза има јединствену улогу у процесу развоја, и постоји потреба за ефикасном комуникацијом између њих, а постоје и потенцијални изазови са којима се суочавају приликом идентификације појединаца са којима треба да се ангажују и одређивања редоследа интеракција. 

Да би се решио овај проблем, ЦхатДев оквир користи Цхат Цхаин, генерализовану архитектуру која разлаже сваку фазу у субатомско ћаскање, при чему се свака од ових фаза фокусира на играње улога усмерено на задатке које укључује двоструке улоге. Жељени излаз за ћаскање чини виталну компоненту циљног софтвера, а постиже се као резултат сарадње и размене инструкција између агената који учествују у процесу развоја. Парадигма ланца ћаскања за средње решавање задатака је илустрована на слици испод. 

За сваки појединачни разговор, инструктор прво иницира упутства, а затим води дијалог ка завршетку задатка, ау међувремену асистенти прате упутства инструктора, дају идеална решења и учествују у дискусијама о изводљивости. решења. Инструктор и агент затим се упуштају у вишеструке дијалоге док не постигну консензус и сматрају да је задатак успешно обављен. Ланац ланца пружа корисницима транспарентан поглед на процес развоја, баца светло на пут доношења одлука и нуди могућности за отклањање грешака када се појаве, што омогућава крајњим корисницима да анализирају и дијагностикују грешке, прегледају посредне излазе, и интервенисати у процесу ако се сматра неопходним. Укључујући ланац ћаскања, ЦхатДев оквир је у могућности да се фокусира на сваки одређени подзадатак на грануларној скали која не само да олакшава ефикасну сарадњу између агената, већ такође резултира брзим постизањем потребних резултата. 

Пројектовање

У фази дизајна, ЦхатДев оквир захтева почетну идеју као инпут од људског клијента, а у овој фази постоје три унапред дефинисане улоге. 

  1. генерални директор или главни извршни директор. 
  2. ЦПО или главни директор производа. 
  3. ЦТО или главни технички директор. 

Ланац ћаскања тада улази у игру и дели фазу пројектовања на секвенцијалне субатомске задатке ћаскања који укључују програмски језик (ЦТО и ЦЕО) и модалитет циљног софтвера (ЦПО и ЦЕО). Фаза пројектовања укључује три кључна механизма: додељивање улога или специјализација улоге, ток меморије и саморефлексија. 

Додељивање улога

Сваком агенту у оквиру Цхат Дев-а се додељује улога помоћу посебних порука или посебних упита током процеса играња улога. За разлику од других модела говорног језика, ЦхатДев оквир се ограничава само на покретање сценарија играња улога између агената. Ова упутства се користе за додељивање улога агентима пре дијалога. 

У почетку, инструктор преузима одговорности генералног директора и укључује се у интерактивно планирање, док одговорности ЦПО-а обавља агент који извршава задатке и даје потребне одговоре. Оквир користи „инцептион сумптинг” за специјализацију улога која омогућава агентима да ефикасно испуњавају своје улоге. Упутства помоћника и инструктора састоје се од виталних детаља у вези са одређеним улогама и задацима, критеријумима завршетка, протоколима комуникације и неколико ограничења која имају за циљ да спрече нежељена понашања као што су бесконачне петље, неинформативни одговори и редундантност инструкција. 

Мемори Стреам

Меморијски ток је механизам који користи ЦхатДев оквир који одржава свеобухватан запис разговора о претходним дијалогима агента и помаже у процесу доношења одлука који следи на начин свестан изговора. ЦхатДев оквир користи упите за успостављање потребних комуникационих протокола. На пример, када укључене стране постигну консензус, завршна порука која задовољава специфичне захтеве форматирања као што је ( : Десктоп Апплицатион”). Да би се осигурала усклађеност са назначеним форматом, оквир континуирано прати и коначно омогућава да се тренутни дијалог закључи. 

Селф Рефлецтион

Програмери ЦхатДев оквира су приметили ситуације у којима су обе укључене стране постигле заједнички консензус, али унапред дефинисани комуникациони протоколи нису били покренути. Да би се позабавили овим питањима, ЦхатДев оквир уводи механизам саморефлексије што помаже у проналажењу и издвајању сећања. Да би применио механизам саморефлексије, ЦхатДев оквир покреће ново и свеже ћаскање уносећи „псеудо себе“ као новог питача. „Псеудо селф“ анализира претходне дијалоге и историјске записе и обавештава тренутног асистента након чега тражи резиме коначних информација вредних акције као што је приказано на слици испод. 

Уз помоћ механизма самопомоћи, ЦхатДев асистент се подстиче да размисли и анализира одлуке које је предложио. 

Кодирање

Постоје три унапред дефинисане улоге у фази кодирања, а то су ЦТО, програмер и дизајнер уметности. Као и обично, механизам ланца ћаскања дели фазу кодирања на појединачне субатомске задатке као што је генерисање кодова (програмер и ЦТО) или осмишљавање ГУИ или графички кориснички интерфејс (програмер и дизајнер). ЦТО затим даје упутства програмеру да користи маркдовн формат за имплементацију софтверског система након чега дизајнер уметности предлаже кориснички прилагођен и интерактивни ГУИ који користи графичке иконе за интеракцију са корисницима уместо да се ослања на традиционалне команде засноване на тексту. 

Управљање кодом

ЦхатДев оквир користи објектно оријентисане програмске језике као што су Питхон, Јава и Ц++ за руковање сложеним софтверским системима јер модуларност ових програмских језика омогућава употребу самосталних објеката који не само да помажу у решавању проблема, већ и у заједничком развоју , а такође помаже у уклањању сувишности поновним коришћењем објеката кроз концепт наслеђивања. 

Упутства за размишљање

Традиционалне методе одговарања на питања често доводе до ирелевантних информација или нетачности, посебно када се генерише код, јер давање наивних инструкција може довести до ЛЛМ халуцинација и може постати изазовно питање. Да би се позабавио овим проблемом, ЦхатДев оквир уводи механизам „упутстава за размишљање“ који црпи инспирацију из ланца мисли. Механизам „упутстава за размишљање“ експлицитно се односи на појединачне мисли за решавање проблема укључене у упутства, слично решавању задатака на секвенцијални и организован начин. 

Тестирање

Писање кода без грешака у првом покушају је изазов не само за ЛЛМс, али и за људске програмере, и уместо да потпуно одбаце нетачан код, програмери анализирају свој код како би идентификовали грешке и исправили их. Фаза тестирања у оквиру ЦхатДев подељена је на три улоге: програмер, тестер и рецензент. Процес тестирања је даље подељен на два узастопна субатомска задатка: Пеер Ревиев или Статичко отклањање грешака (Рецензент и Програмер), и Тестирање система или динамичко отклањање грешака (Програмер и тестер). Статичко отклањање грешака или Пеер ревиев анализира изворни код да би се идентификовале грешке, док динамичко отклањање грешака или тестирање система верификује извршавање софтвера кроз различите тестове које програмер спроводи помоћу тумача. Динамичко отклањање грешака се првенствено фокусира на тестирање црне кутије за процену апликација. 

документација

Након што је ЦхатДев оквир завршен са фазама пројектовања, кодирања и тестирања, он запошљава четири агента, односно ЦЕО, ЦТО, ЦПО и Програмер да генерише документацију за софтверски пројекат. Оквир ЦхатДев користи ЛЛМ да би искористио упите са неколико снимака са примерима у контексту за генерисање докумената. ЦТО налаже програмеру да обезбеди упутства за конфигурацију зависности од окружења и креира документ као што је „захтеви зависности.ткт“. Истовремено, ЦЕО саопштава захтеве и дизајн система ЦПО-у, како би се направио кориснички приручник за производ. 

Резултати

Статистика софтвера

Да бисте анализирали перформансе ЦхатДев оквира, тим програмера је извршио статистичку анализу софтверских апликација које је генерисао оквир на основу неколико кључних метрика укључујући потрошене токене, укупне окрете дијалога, средства слике, софтверске датотеке, ажурирања верзија и још неколико, а резултати су приказано у табели испод. 

Анализа трајања

Да би испитали време производње софтвера ЦхатДев-а за различите упите за захтеве, програмери су такође спровели анализу трајања, а разлика у времену развоја за различите упите одражава различиту јасноћу и сложеност додељених задатака, а резултати су приказани на слици испод . 

Истраживање случаја

Следећа слика показује да ЦхатДев развија игру Фиве ин а Ров или Гомоку. 

Крајња лева фигура показује основни софтвер креиран од стране оквира без коришћења било каквог ГУИ. Као што се јасно може видети, апликација без икаквог ГУИ-а нуди ограничену интерактивност, а корисници ову игру могу да играју само преко командног терминала. Следећа слика приказује визуелно привлачнију игру креирану коришћењем ГУИ, нуди боље корисничко искуство и побољшану интерактивност за привлачно окружење играња у којем корисници могу много више уживати. Агент дизајнера затим креира додатну графику како би додатно побољшао употребљивост и естетику игре без утицаја на било коју функционалност. Међутим, ако људски корисници нису задовољни сликом коју је креирао дизајнер, могу заменити слике након што ЦхатДев фрамеворк заврши софтвер. Флексибилност коју нуди ЦхатДев фрамеворк за ручну замену слика омогућава корисницима да прилагоде апликације према својим преференцијама за побољшану интерактивност и корисничко искуство без утицаја на функционалност софтвера на било који начин. 

Завршне мисли

У овом чланку смо говорили о ЦхатДев-у, ан ЛЛМ или модел великог језика заснована на иновативној парадигми која има за циљ да револуционише област развоја софтвера елиминисањем захтева за специјализованим моделима током сваке фазе процеса развоја. ЦхатДев оквир има за циљ да искористи способности ЛЛМ оквира коришћењем комуникације на природном језику да обједини и поједностави кључне процесе развоја софтвера. ЦхатДев оквир користи механизам ланца ћаскања да разбије процес развоја софтвера у секвенцијалне субатомске задатке, чиме се омогућава грануларно фокусирање и промовише жељени резултати за сваки субатомски задатак. 

„Инжењер по занимању, писац по срцу“. Кунал је технички писац са дубоком љубављу и разумевањем АИ и МЛ, посвећен поједностављивању сложених концепата у овим областима кроз своју занимљиву и информативну документацију.