Шта је ЦодеГПТ и може ли заиста писати код?

Brze veze

Ključni zaključci

  • CodeGPT je AI asistent za kodiranje koji pomaže programerima da pišu i popravljaju kod, sa funkcijama kao što su automatsko dovršavanje i objašnjenje koda.
  • CodeGPT je dostupan besplatno, ali pretplatnički planovi za određene funkcije kreću se od 9,99 do 49,99 dolara mesečno.
  • Iako CodeGPT može da piše kod, njegov izlaz možda neće uvek biti bez grešaka ili slediti najbolje prakse, tako da biste trebali težiti da razumete i modifikujete generisani kod po potrebi.

Ako tražite pomoćnika sa veštačkom inteligencijom koji će vam pomoći pri pisanju koda, velike su šanse da ste naišli na CodeGPT. To je jedan od mnogih alata sa veštačkom inteligencijom koje možete koristiti za pomoć pri programiranju. Ali, da li CodeGPT zaista može da piše kod?

Šta je CodeGPT?

CodeGPT je specijalizovani dodatak koji koristi različite modele veštačke inteligencije (AI) kako bi pomogao programerima u pisanju i ispravljanju koda. Sadrži raznovrsne funkcije usmerene na brže i jednostavnije programiranje, uključujući automatsko dovršavanje, objašnjenje koda, refaktorisanje, dokumentaciju, testiranje jedinica, detekciju grešaka i ispravljanje grešaka. Takođe poseduje interfejs sličan ChatGPT-u, kojem možete pristupiti direktno iz vašeg uređivača koda.

Ovaj dodatak je posebno moćan zato što vam omogućava da se povežete sa različitim vodećim modelima velikih jezika (LLM) od raznih provajdera, kao što su OpenAI i Google. Uz to, CodeGPT vam omogućava da kreirate sopstvene AI agente koje možete koristiti u svojim projektima ili deliti sa drugima.

Iako postoji nekoliko uređivača koda za Linux, macOS i Windows, CodeGPT je dostupan samo u dva. Trenutno možete instalirati i koristiti CodeGPT u VS Code-u ili u Cursor-u, koji je modifikovana verzija VS Code-a.

Koliko košta CodeGPT?

Možete besplatno preuzeti i instalirati CodeGPT, ali korišćenje ovog dodatka ima svoju cenu. CodeGPT nudi različite pretplatničke pakete koje možete platiti ukoliko vam je potreban neograničen pristup.

CodeGPT Plus ima tri nivoa pretplate. Osnovni plan košta 9,99 dolara mesečno, a zatim slede Standard (19,99 dolara mesečno) i Gold (49,99 dolara mesečno). Dostupan je besplatan probni period koji možete koristiti za testiranje dodatka. Svaki paket vam daje pristup određenim AI agentima sa neograničenim interakcijama.

Važno je napomenuti da ćete morati platiti za neograničeno korišćenje AI modela trećih strana, kao što je OpenAI GPT-4 model, na primer. Iako možete besplatno pristupiti OpenAI GPT-4 modelu, ne možete to učiniti direktno iz VS Code-a ili Cursor-a.

Može li CodeGPT zaista napisati kod?

Da bismo ovo procenili, koristićemo dodatak da nam pomogne da generišemo dva različita primera koda u Python-u.

Prvo, tražimo od modela da generiše strukturu podataka steka u Python-u sa svim relevantnim metodama. Koristili smo sledeći upit:

Napravi stek u Python-u i uključi sve potrebne metode

Model je dao sledeći odgovor:

 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) 

Ovaj primer pokazuje da je CodeGPT dovoljno pametan da kreira stek koristeći klasu i da uključi neophodne provere za rešavanje specifičnih grešaka koje mogu nastati. Na primer, kod daje informativne greške ako pokušate da zavirite ili uklonite element sa praznog steka.

U drugom zadatku, tražili smo od CodeGPT-a da sačuva odgovor formatiran u JSON-u sa JSONPlaceholder API-ja u CSV datoteku. Za kontekst, odgovor JSONPlaceholder API-ja izgleda ovako:

 {
  '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'
} 

Pitali smo CodeGPT sledeće:

Napravio sam zahtev eksternom API-ju na https://jsonplaceholder.typicode.com/posts/1 i dobijam odgovor. Formatirao sam odgovor kao JSON, kako da ga sačuvam u CSV datoteku?

Kod koji je CodeGPT generisao je:

 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)

Generalno, ovaj odgovor je dobar; nije potrebno nikakvo podešavanje da bi funkcionisao. CodeGPT je takođe dodao komentare koji objašnjavaju svrhu različitih linija koda, što je korisno ako nešto radite prvi put.

Jedini problem ovde je što odgovor ne specificira tip kodiranja prilikom pozivanja open(). Iako će podrazumevana vrednost automatski biti primenjena, navođenje tipa kodiranja se preporučuje i smatra najboljom praksom prilikom upisivanja u datoteke u Python-u. Ovo vas može spasiti od netačne interpretacije, što može dovesti do zbrkanog teksta.

Dakle: CodeGPT može da piše kod, ali treba da budete oprezni jer vam neće uvek dati najbolji rezultat. Ono što dobijete može biti podložno greškama i možda neće pratiti najbolje prakse. Kad god koristite CodeGPT ili bilo koji drugi AI alat za pisanje koda, pokušajte da prvo razumete šta kod radi. Nemojte samo kopirati i nalepiti.