Co je CodeGPT a může skutečně psát kód?

Rychlé odkazy

Zásadní informace

  • CodeGPT je inteligentní asistent pro kódování, který programátorům usnadňuje tvorbu a ladění kódu pomocí funkcí jako automatické doplňování a vysvětlování kódu.
  • Základní verze CodeGPT je zdarma, avšak pokročilejší funkce jsou dostupné v rámci placeného předplatného, které se pohybuje od 9,99 do 49,99 dolarů měsíčně.
  • Ačkoli CodeGPT dokáže generovat kód, jeho výstup nemusí být vždy zcela bezchybný nebo v souladu s doporučenými postupy. Je tedy nutné vygenerovaný kód pečlivě zkontrolovat a případně upravit.

Pokud hledáte pomocníka s umělou inteligencí pro psaní kódu, pravděpodobně jste narazili na CodeGPT. Jedná se o jeden z mnoha nástrojů s podporou AI, které vám mohou pomoci s programováním. Ale je CodeGPT skutečně schopen psát kód?

Co je to CodeGPT?

CodeGPT je speciální rozšíření, které využívá různé modely umělé inteligence k podpoře programátorů při psaní a opravování kódu. Nabízí řadu funkcí zaměřených na zrychlení a usnadnění programování, včetně automatického dokončování, vysvětlení kódu, refaktorování, generování dokumentace, unit testů, kontroly chyb a jejich oprav. K dispozici je také rozhraní podobné ChatGPT, které je přístupné přímo z vašeho editoru kódu.

Toto rozšíření je obzvláště užitečné, protože umožňuje připojení k různým hlavním jazykovým modelům (LLM) od poskytovatelů jako OpenAI nebo Google. CodeGPT navíc umožňuje vytvářet vlastní AI agenty, které můžete používat ve svých projektech nebo sdílet s ostatními.

Ačkoli existuje celá řada editorů kódu pro Linux, macOS a Windows, CodeGPT je dostupný pouze pro dva z nich. V současnosti můžete CodeGPT nainstalovat a používat ve VS Code nebo v Cursor, což je varianta VS Code.

Jaká je cena CodeGPT?

CodeGPT si můžete stáhnout a nainstalovat bezplatně, avšak používání tohoto rozšíření vyžaduje platbu. CodeGPT nabízí různé balíčky předplatného, které vám poskytnou neomezený přístup k funkcím.

CodeGPT Plus nabízí tři různé plány předplatného. Základní plán stojí 9,99 dolarů měsíčně, následuje Standard (19,99 dolarů měsíčně) a Gold (49,99 dolarů měsíčně). K dispozici je také bezplatná zkušební verze, kterou můžete využít k otestování rozšíření. Každý balíček vám poskytuje přístup k různým AI agentům s neomezenými interakcemi.

Je důležité si uvědomit, že za neomezené používání AI modelů třetích stran, jako je například GPT-4 od OpenAI, budete muset platit. I když máte přístup k modelu GPT-4 od OpenAI zdarma, není to možné přímo z VS Code nebo Cursor.

Umí CodeGPT skutečně vytvářet kód?

Pro účely ověření této otázky jsme použili rozšíření k vygenerování dvou různých ukázek kódu v Pythonu.

Nejprve jsme požádali model o vygenerování datové struktury zásobníku v Pythonu, včetně všech relevantních metod. Použili jsme následující zadání:

Vytvořte zásobník v jazyce Python a zahrňte všechny potřebné metody

Model vygeneroval následující odpověď:

 class Stack:
    def __init__(self):
        self.stack = []

    def push(self, item):
        self.stack.append(item)

    def pop(self):
        if self.is_empty():
            raise IndexError("Pop from empty stack")
        return self.stack.pop()

    def peek(self):
        if self.is_empty():
            raise IndexError("Peek from empty stack")
        return self.stack[-1]

    def is_empty(self):
        return len(self.stack) == 0

    def size(self):
        return len(self.stack)

Tato ukázka demonstruje, že CodeGPT je dostatečně inteligentní na to, aby vytvořil zásobník pomocí třídy a zahrnul nezbytné kontroly pro ošetření specifických chyb, které mohou nastat. Kód například vygeneruje informativní chybové hlášky, když se pokusíte nahlédnout nebo vyjmout prvek z prázdného zásobníku.

V druhém zadání jsme požádali CodeGPT, aby uložil odpověď ve formátu JSON z JSONPlaceholder API do souboru CSV. Pro kontext, odpověď z JSONPlaceholder API vypadá takto:

 {
 'userId': 1,
 'id': 1,
 'title': 'sunt aut facere repellat provident occaecati excepturi optio reprehenderit',
 'body': 'quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto'
}

CodeGPT byl dotázán:

Zaslal jsem požadavek na externí API na adrese https://jsonplaceholder.typicode.com/posts/1 a obdržel jsem odpověď. Odpověď mám ve formátu JSON, jak ji mohu uložit do souboru CSV?

Kód, kterým CodeGPT odpověděl, byl:

 import csv
import requests


response = requests.get('https://jsonplaceholder.typicode.com/posts/1')
data = response.json()


data = [data]


with open('output.csv', 'w', newline="") as output_file:
   
   writer = csv.DictWriter(output_file, fieldnames=data[0].keys())
   
   writer.writeheader()
   
   writer.writerows(data)

Celkově je tato odpověď kvalitní a nepotřebuje žádné úpravy, aby fungovala. CodeGPT také přidal komentáře vysvětlující účel jednotlivých řádků kódu, což je užitečné zejména pro začátečníky.

Jediným nedostatkem je, že odpověď neuvádí typ kódování při volání funkce open(). I když je výchozí kódování automaticky použito, doporučuje se a považuje za osvědčený postup při zápisu do souborů v Pythonu definovat typ kódování explicitně. Tím se vyhnete případným problémům s nesprávnou interpretací dat a poškozením textu.

Závěr tedy je, že CodeGPT skutečně umí psát kód, ale je potřeba k němu přistupovat s opatrností, jelikož ne vždy poskytne ideální výstup. Vygenerovaný kód může být náchylný k chybám a nemusí dodržovat osvědčené postupy. Vždy, když používáte CodeGPT nebo jiný nástroj založený na umělé inteligenci pro psaní kódu, je důležité nejprve porozumět tomu, co kód dělá. Není vhodné pouze kopírovat a vkládat kód bez hlubšího pochopení.