Představujeme službu JetBrains AI a nástroj AI Assistant v IDE
S nástupem generativní umělé inteligence a velkých jazykových modelů (LLM) začala v letošním roce proměna nejen vývojářského, ale i celého kreativního průmyslu.
Pokud jde o využití této nové technologie k rozšíření nástrojů JetBrains, neměli jsme nad čím přemýšlet a považujeme to za logický další krok v misi JetBrains, na jejímž konci stojí zlepšení práce vývojářů automatizací běžných a repetitivních úkolů, aby mohli zůstat ve flow a soustředit se hlavně na to opravdu důležité.
JetBrains IDE do hloubky porozumí vašemu kódu, aktuálnímu kontextu a celkové struktuře projektu, a na základě toho pak dokáže dodávat podkladovým jazykovým modelům relevantní údaje. Tím pádem se při programování stávají tím nejlepším pomocníkem ve své třídě. Zabudování nástroje AI Assistant do našich produktů se pro nás točí kolem dvou hlavních aspektů:
- Snoubení základních uživatelských postupů v IDE s pomocí AI.
- Vytváření funkcí na bázi AI, které jsou široce provázány s porozuměním kódu a příslušnému kontextu – v tom byly vždycky JetBrains IDE silné.
Dnes zveřejňujeme dlouho očekávaný nástroj AI Assistant. Ten teď bude k dispozici miliónům vývojářů, kteří používají vývojová prostředí a programovací nástroje od JetBrains, a to v rámci měsíčního nebo ročního předplatného pro jednotlivce i organizace.
S nástrojem AI Assistant vám přinášíme nejnovější generaci AI: do editoru i do vašich pracovních postupů. AI Assistant je k dispozici ve verzích 2023.3 všech našich komerčních IDE a ReSharperu a také ve Fleetu a funguje se spoustou jazyků, které tyto produkty podporují. Na tom všem jsme letos usilovně pracovali a na výsledek jsme patřičně hrdí.
Podle našeho pravidelného reportu State of Developer Ecosystem 2023 60 % vývojářů nástroje pro generování kódu s umělou inteligencí již zná a toto číslo pravděpodobně dále poroste. Ve fázi předběžného náhledu byl o nástroj AI Assistant eminentní zájem a také jsme měli možnost nahlédnout na to, jak ho vývojáři používají. Jsme přesvědčeni, že soubor funkcí, které AI Assistant nabízí, bude v oblasti nástrojů pro zvyšování produktivity, které od nás očekáváte, přirozeným dalším krokem.
Funkce nástroje AI Assistant
Kromě obohacení funkcí, které jsou v našich produktech dostupné již mnoho let, rozšiřuje AI Assistant vývojová prostředí o nové výkonné schopnosti. Pojďme se na některé z nich podívat.
AI chat
Otevřené rozhraní chatu funguje přímo v prostředí IDE a má tedy povědomí o kontextu. Ať už se potřebujete zeptat, co dělá konkrétní funkce, na způsob dokončení úlohy ve zvoleném jazyce nebo jak vyladit konkrétní problém, AI chat je vám k službám.
Nástroj AI Assistant při vašich otázkách bere v úvahu hluboké kontextové informace o vašem projektu. Součástí promptu je nejen obsah aktuálního souboru, ale také všechny relevantní kontextové informace, například jazyk a závislosti, nedávno použité soubory a vztahy mezi různými částmi vašeho projektu. Díky tomu získáte odpověď, která zohledňuje všechny faktory, jež by se mohly do vaší otázky promítat, a získáte tak cílené a vysoce relevantní odpovědi.
Refaktoring
Refaktoringové funkce našich IDE nadále zůstávají oblíbenou součástí našich nástrojů a AI Assistant tak jenom nabízí další způsob jejich využití. V naší nové kontextové nabídce AI Actions máte nyní možnost díky nástroji AI Assistant použít na libovolnu část kódu funkci Suggest Refactoring.
AI Assistant vám nejen navrhne potenciální refaktoring kódu, ale také vysvětlí, jaké jsou pro něj důvody. Stejně jako všechny funkce poskytované nástrojem AI Assistant jsou i tyto návrhy kontextové a zohledňují aktuální omezení projektu.
Pokud chcete použít návrh vytvořený nástrojem AI Assistant, lze kód snadno vložit jako diff do aktuálního souboru, ať máte dobrý přehled o tom, co se mění.
Dokončování kódu
AI Assistant vám nejen pomůže s vylepšením kódu, ale pomůže vám i s jeho generováním! Pomocí kontextových informací na pozadí a také procházením kódu nad i pod pozicí caretu v promptu se může AI Assistant pokusit předpovědět, co jste zamýšleli napsat dále, a doplnit to za vás.
Psaní dokumentace
AI Assistant jde mnohem dál a není jen pomocníkem při psaní a vylepšování kódu. Nabízí totiž i funkce pro další důležité úkoly ve vývojovém procesu. Jedním z nich je psaní dokumentace, což je nezbytný, ale poměrně neoblíbený, úkol!
V kontextové nabídce AI Actions můžete vybrat možnost Write Documentation a AI Assistant vygeneruje k vybrané funkci nebo třídě bohatou, formátovanou dokumentaci. Tuto akci lze vyvolat odkudkoli z cílového kódu a AI Assistant automaticky rozpozná správnou analyzovanou jednotku a vygeneruje pro ni dokumentaci.
Generování zpráv ke commitům
Dalším důležitým úkolem je psaní kvalitních zpráv ke commitům. Tento úkol je nicméně často opomíjen, protože může narušovat vývojářský proces, případně se stát až otravnou aktivitou.
AI Assistant umožňuje automaticky generovat zprávy ke commitům tím, že v rámci modelového promptu odešle diff pro commit a veškerý relevantní kontext. AI Assistant pak dokáže přirozeným jazykem vysvětlit, co bylo změněno, a poskytne vám šablonu, kterou můžete použít k vytvoření vlastní popisné a přesné zprávy commitu.
Služba JetBrains AI a partneři
AI Assistant běží na bázi naší služby JetBrains AI. Tato služba nám umožňuje bezpečně a transparentně předávat prompty generované IDE různým velkým jazykovým modelům.
Služba JetBrains AI přináší značnou flexibilitu, pokud jde o modely, které můžeme nabídnout jako součást nástroje AI Assistant. Nejsme vázáni na používání žádného konkrétního dodavatele, proto budeme moci naše používání modelů rozvíjet spolu s tím, jak se budou v této rychle se měnící oblasti vyvíjet technologie. To nám dává možnost zvolit k řešení vašeho problému ten nejlepší model nebo přístup.
Provádíme důkladnou hloubkovou kontrolu a nikdy nespolupracujeme s poskytovateli LLM, kteří shromažďují vaše data nebo na nich trénují. Služba AI Assistant v současné době běží na technologi OpenAI a našich vlastních modelech.
„Je skvělé, že společnost JetBrains integruje OpenAI modely do každodenních pracovních postupů vývojářů,“ řekl James Dyett, vedoucí oddělení Platform Accounts v OpenAI. „Díky službě JetBrains AI Assistant s pokročilými schopnostmi využití našich modelů lze výrazně zvýšit produktivitu vývojářů v celé řadě úkolů, jako je porozumění kódu a samotný vývoj.“
Pracujeme také na integraci modulů Google LLM, které budou k dispozici již brzy.
„Moc nás těší, že máme možnost spolupracovat se společností JetBrains a dát naše pokročilé programovací modely k dispozici pro použití ve službě JetBrains AI,“ řekl Warren Barkley, ředitel produktového managementu pro Vertex AI, Google Cloud. „Díky integraci s Codey a Vertex AI dokáže JetBrains povýšit zkušenost vývojářů s doplňováním kódu, laděním a generativními vysvětlivkami na bázi AI na zcela novou úroveň, a urychlit tak jednotlivé fáze životního cyklu vývoje softwaru.“
Podařilo se nám integrovat umělou inteligenci do našich nástrojů přesně ve stylu, jakým přistupujeme ke všemu, co děláme – integrovaným, produktivním a transparentním způsobem.
Obecná dostupnost
Nástroj AI Assistant je již dnes k dispozici zákazníkům placených verzí našich produktů jako doplňková funkce vyžadující předplatné služby JetBrains AI.
Upozorňujeme, že přístup ke službě AI se omezuje na regiony, kde je dostupná služba našich poskytovatelů. Úplný seznam regionů si můžete prohlédnout tady.
Doporučujeme vám stáhnout si verzi 2023.3 vašeho JetBrains IDE, otevřít okno nástroje AI Assistant, přihlásit se pomocí účtu JetBrains a vyzkoušet si tuto novou funkci.
Chcete-li se dozvědět více o službě AI Assistant, základech této technologie a plánech do budoucna, navštivte jetbrains.com/ai.
Přejeme příjemné programování!
JetBrains tým