Categories: AI v podnikáníBlog

Je AI skutečně hrozbou pro vývojáře? Devin a Microsoft AutoDev | AI v podnikání #115

Je AI hrozbou pro vývojáře?

I když otázky o nebezpečích vývoje AI poněkud utichly a nástroje AI používané v každodenní práci stále zanechávají mnoho přání, nové vývoje a průlomy nás nutí klást si tyto otázky znovu a znovu. Vývoj umělé inteligence v podnikání a programování vyvolává spoustu vzrušení a debat.

Pokud se podíváme na programování, existuje základní otázka o budoucnosti profese – je AI opravdu hrozbou pro programátory, nebo se stane jejich největším spojencem, takže programátoři zruční v používání AI budou schopni rychle a bezchybně vytvářet jakoukoli aplikaci? Abychom na tuto otázku odpověděli, je nutné se podívat na některé klíčové argumenty:

  1. AI nenahradí lidi, ale ti, kteří ji dokážou efektivně používat, nahradí ty, kteří to nechtějí nebo nemohou.
  2. Jedním příkladem je použití AI k automatizaci rutinních úkolů, což umožňuje vývojářům soustředit se na složitější problémy.

  3. V současné fázi vývoje AI není schopna nahradit zkušené programátory pracující na složitých systémech.
  4. Je však schopna automatizovat některé úkoly a výrazně zvýšit efektivitu těchto specialistů. Například může automaticky generovat kód pro relativně jednoduché funkce.

  5. Jednodušší úkoly, které programátoři obvykle dělají na začátku své kariéry, budou také automatizovány.
  6. Toto by však nemělo být důvodem k obavám. Příklady zahrnují automatické kontrolování kódu s ohledem na aplikované programovací vzory nebo automatizaci vytváření základních testů.

  7. AI může automatizovat některé aspekty práce programátora, ale zcela programátora nenahradí.
  8. Programátoři budou stále potřební k tomu, aby činili důležitá rozhodnutí, řešili složité problémy a vytvářeli software s přidanou hodnotou. Například navrhování architektury informačních systémů, což vyžaduje hlubokou analýzu a porozumění podnikání.

Devin

Ale pojďme dál k Devinovi, inovativnímu nástroji, který, ačkoliv je v současnosti pouze teaser publikovaný společností Cognition (https://www.cognition-labs.com), ukazuje budoucnost vývoje umělé inteligence v oblasti programování.

Devin, první plně autonomní AI softwarový inženýr na světě, je odpovědí na rostoucí poptávku po automatizaci v průmyslu vývoje softwaru. Jeho schopnost učit se nové technologie, hledat a opravovat chyby v kódu, stejně jako trénovat a přizpůsobovat své vlastní AI modely, z něj činí neocenitelný nástroj pro vývojáře. Klíčové vlastnosti Devina zahrnují:

  • schopnost plánovat a vykonávat složité úkoly nezávisle,
  • autonomii při hledání a opravování chyb v kódu,
  • schopnost nezávisle se učit nové technologie.

Cognition publikovala srovnání schopností Devina s výkonem známých jazykových modelů, které podporují programování. Z hlediska uvažování a odvozování Devin překonal nejlepší modely dostupné dnes, jako jsou OpenAI’s GPT-4 a Anthropic’s Claude 2, o několik procentních bodů.

Microsoft AutoDev

Dalším krokem v automatizaci vývojových procesů je AutoDev, plně automatizované prostředí pro vývoj softwaru založené na AI. Jeho klíčové principy jsou zvyšování autonomie, efektivity a bezpečnosti AI systémů. A co je nejdůležitější, na rozdíl od Devina je k dispozici v otevřeném zdrojovém modelu, což znamená, že je dostupný pro každého.

Zdroj: ArXiv (https://arxiv.org/html/2403.08299v1)

Hlavní výhodou používání AutoDev je, že výrazně pomáhá při automatizaci opakujících se úkolů. Jedním příkladem je automatické generování jednotkových testů, což umožňuje vývojářům soustředit se na složitější aspekty projektu.

Druhým problémem je schopnost vytvářet agenty, kteří kontrolují výkon jeden druhého. To snižuje chyby a umožňuje umělé inteligenci kontrolovat výkon řešení, která vytváří sama, což umožní vývojářům soustředit se na kreativní řešení problémů a inovace. Například AutoDev automaticky vytváří a nasazuje aplikace, což dává vývojářům více času na navrhování nových funkcí.

Spolupráce s AI nebo automatizace programovacích úkolů?

AI párové programování je řešení, které dnes používá většina softwarových vývojářů, podle průzkumu GitHub – až 92 % amerických vývojářů. Pomáhá urychlit práci o 55 % (https://github.blog/2023-06-13-survey-reveals-ais-impact-on-the-developer-experience/). Umělá inteligence může dokončit opakující se řádky kódu nebo navrhnout další funkce na základě programovacích vzorů nebo předchozích příkladů.

V kontextu spolupráce s AI a automatizace programovacích úkolů stojí za to zvážit, který přístup je výhodnější. A zda je potřeba zvolit jeden nebo je moudře kombinovat. Na jedné straně může spolupráce s AI výrazně zlepšit práci vývojářů, například automatizací testování kódu, což umožňuje rychlejší a přesnější detekci potenciálních chyb.

Na druhé straně může plná automatizace programovacích úkolů vést k chybám v softwaru, které jsou obtížně detekovatelné a potenciálně nebezpečné, stejně jako k nedostatku důležité funkčnosti, jako je bezpečnost. Je důležité si pamatovat, že AI se učí z dostupných repozitářů vytvořených programátory různé úrovně sofistikovanosti. I s chybami. Kromě toho mnoho softwarových řešení nemá komplexní dokumentaci nebo velké množství veřejně dostupných příkladů, takže umělá inteligence má omezené porozumění tomu, jak fungují. To může vést k halucinacím, tedy k tomu, že AI vymýšlí kousky a útržky řešení, která používá, a jejich API.

Zdroj: ArXiv (https://arxiv.org/html/2403.08299v1)

Shrnutí. Stane se angličtina hlavním programovacím jazykem?

Vývoj AI a nástrojů, jako jsou Devin a AutoDev, které používají AI agenty, vytváří nové příležitosti a výzvy pro průmysl vývoje softwaru. S rostoucí rolí angličtiny jako nového programovacího jazyka – používaného k vydávání příkazů asistentům – se stane dalším jazykem, který budou muset mnozí programátoři ovládnout ještě lépe než dříve. Abychom realizovali plný potenciál AI, je důležité se zaměřit nejen na technické aspekty programování, ale také na rozvoj komunikačních dovedností a porozumění podnikatelskému a kulturnímu kontextu, který je kritický pro vytváření softwaru navrženého… pro lidi.

Pokud se vám náš obsah líbí, připojte se k naší komunitě pilných včel na Facebooku, Twitteru, LinkedInu, Instagramu, YouTube, Pinterestu, TikToku.

Robert Whitney

Odborník na JavaScript a lektor, který školí IT oddělení. Jeho hlavním cílem je zvýšit produktivitu týmu tím, že učí ostatní, jak efektivně spolupracovat při programování.

View all posts →

Robert Whitney

Odborník na JavaScript a lektor, který školí IT oddělení. Jeho hlavním cílem je zvýšit produktivitu týmu tím, že učí ostatní, jak efektivně spolupracovat při programování.

Share
Published by
Robert Whitney

Recent Posts

Role AI v moderaci obsahu | AI v podnikání #129

Společnosti se potýkají s řízením obrovského množství obsahu publikovaného online, od příspěvků na sociálních médiích…

2 days ago

Analýza sentimentu s AI. Jak pomáhá řídit změny v podnikání? | AI v podnikání #128

V éře digitální transformace mají společnosti přístup k bezprecedentnímu množství dat o svých zákaznících –…

2 days ago

Nejlepší nástroje pro přepisování pomocí AI. Jak převést dlouhé nahrávky na stručné shrnutí? | AI v podnikání #127

Věděli jste, že můžete získat podstatu několika hodinového záznamu ze schůzky nebo rozhovoru s klientem…

2 days ago

Generování videa pomocí AI. Nové obzory ve výrobě video obsahu pro podniky | AI v podnikání #126

Představte si svět, kde vaše firma může vytvářet poutavá, personalizovaná videa pro jakoukoli příležitost, aniž…

2 days ago

LLMOps, neboli jak efektivně spravovat jazykové modely v organizaci | AI v podnikání #125

Aby plně využily potenciál velkých jazykových modelů (LLM), musí společnosti implementovat efektivní přístup k řízení…

2 days ago

Automatizace nebo augmentace? Dva přístupy k AI ve společnosti | AI v podnikání #124

V roce 2018 se Unilever již vydal na vědomou cestu k vyvážení automatizace a rozšiřování…

2 days ago