Tag Archives: vscode

Cursor

U nastavku istraživanja toga kako AI može da nam pomogne u programiranju, instalirao sam Cursor. Cursor je komercijalni projekat, specijalno izbildovan VSCode editor sa ugrađenom podrškom za AI. Autori kažu da su se radije opredelili za ovaj pristup nego da prave ekstenziju zbog veće fleksibilnosti, odnosno, bolje integracije sa editorom. Poseduje standardne opcije na koje smo već navikli:

  • automatsko dovršavanje
  • objašnejnje šta radi deo koda
  • refaktorizacija
  • čet

I sve opcije rade vrlo dobro. Program ima dobru predikciju kako treba da izgleda sledeći blok koda, prikazuje ga kao predlog i nakon vizuelne inspekcije dovoljno je pritisnuti tabulator da bi bio umetnut na pravo mesto. Takođe može da da predlog kako da se izgeneriše ceo novi fičr. Svestan je konteksta u kojem se nalazi pošto ima pristup celom kodu. Pošto je u pitanju komercijalan projekat, poželjno je u podešavanjima uključiti privacy mod 🙂 Profesionalna licenca košta dvadeset imperijalističkih dolara mesečno.

Apdejt: istekao mi besplatan period pa sam kupio pretplatu na pro paket. Odlučio sam se da platim celu godinu pa sam sa 20 pao na 16 dolara mesečno odnosno 62 dinara dnevno. Imam nekoliko započetih projekata i još više ideja za nove projekte, možda će me ovo ubrzati odnosno naterati da počnem sa realizacijom 🙂

AI programira

Zainteresovao se malo za tzv. “kopilote” odnosno AI koji ti pomaže u programiranju. Već duže vreme koristim ChatGPT kako bih na brži način saznao stvari poput toga kako da napišem neki složeniji upit nad bazom, kako se u JavaScript-u filtriraju nizovi ili da mi izgeneriše jSON sa testnim podacima. Procedura se svodi na to da odeš na ChatGPT sajt, ukucaš prompt, on ti da odgovor pa ti onda to kopiraš u editor ili gde ti već treba. Sledeći korak je da u samom editoru (a ja trenutno koristim VSCodium) mogu da imam asistenta. Pored toga što ne moram da otvaram sajt da bih pisao prompt već to mogu da uradim u samom editoru, prednost ovog pristupa je i u tome što je asistent svestan konteksta u kojem se nalazi. Primera radi, želim da mi napiše testove za određeni kontroler, asistent zna koji kontroler je u pitanju, šta radi, koje su mu metode i što je takođe važno u kom programskom jeziku i frejmvorku je pisan.

U skladu sa ličnom filozofijom, najpre sam instalirao rešenje otvorenog koda 🙂 Postoji ekstenzija za VSCodium pod nazivom Continue. Ova ekstenzija pruža osnovne olakšice iz domena AI asistenata u programiranju kao što su:

  • automatsko dovršavanje
  • objašnejnje šta radi deo koda
  • refaktorizacija
  • čet

Sama ekstenzija nema u sebi AI ali može da se poveže sa željenim modelima kao što su Claude, GPT, Gemini, Llama, a može da se poveže i sa lokalnim modelom, na primer sa Ollama. Meni je interesanto da sve držim kod sebe pa sam se odlučio za Ollamu a i hteo sam da isprobam moj novi Ryzen računar.

Ollama se prvo instalira npr. preko menadžera paketa a onda se pomoću komandi tipa

ollama run qwen2.5-coder:1.5b

instaliraju odgovarajući modeli. Sve je opisano u Continue dokumentaciji. Ono što se da primetiti jeste da, kada je AI u lokalu, sve jako dugo traje 😀 Automatsko dovršavanje može da potraje minut dok objašnjenje ili generisanje nekog koda može da uzme i preko deset minuta.

Praktično neupotrebljivo ovako u kućnim uslovima za nas koji nemamo superkompjutere u garaži koji se napajaju iz mini nuklearnog reaktora. Sve je neuporedivo brže ako se koristi AI iz klauda ali to ću da probam iz projekta koji se zove Cursor.

https://bartwullems.blogspot.com/2024/09/running-fully-local-ai-code-assistant.html | Cursor