Teknolojik gelişmeleri takip etmeyenlerin dahi sıkça duyduğu AI dünyasının, günden güne içini dolduran pek çok yeni ürün tanıtılıyor. Her biri sunduğu kolaylıklarla büyük zaman tasarrufları sağlıyor. Bu yazının konusuda yazılımcıların kod yazarken sıkça dönüp stackoverflow benzeri sitelerden aramalar yaptığı konuları GitHub gibi büyük bir havuzdan beslenerek geliştiricinin çalıştığı ekrandan ayrılmadan sunan güçlü bir ürün; GitHub CoPilot.
Arkasında Büyük Dil Modelleri (LLM) nin şu an için öncüsü olan GPT-4 (bugün itibariyle) yatıyor. LLM ve GPT kavramlarını merak edenler için yazının kaynaklar kısmındaki referansları okuması faydalı olacaktır. Bu yazıda daha ziyade CoPilot’ın veri tarafındaki örnek kullanımları inceleniyor olacak.
Kurulumlar
Örnek senaryo için ihtiyaçlar; database, ide ve copilot eklentisi. Database olarak PostgreDB, IDE olarak JetBrains DataGrip ve CoPilot içinde DataGrip içinde plugin olarak kullanılabilen GitHub CoPilot eklentisi kullanılacak.
1.Adım: PostgreDB Kurulumu
Aşağıdaki compose file ile docker üzerinde kurulum sağlanabilir.
version: "3.7"
services:
db:
image: postgres:latest
restart: always
environment:
POSTGRES_DB: postgres
POSTGRES_USER: admin
POSTGRES_PASSWORD: secret
PGDATA: /var/lib/postgresql/data
volumes:
- db-data:/var/lib/postgresql/data
ports:
- "5432:5432"
pgadmin:
image: dpage/pgadmin4:4.18
restart: always
environment:
PGADMIN_DEFAULT_EMAIL: ali@mesut.com
PGADMIN_DEFAULT_PASSWORD: secret
PGADMIN_LISTEN_PORT: 80
ports:
- "8080:80"
volumes:
- pgadmin-data:/var/lib/pgadmin
links:
- "db:pgsql-server"
volumes:
db-data:
pgadmin-data:
2.Adım: JetBrains DataGrip
https://www.jetbrains.com/datagrip/ adresinden Download edildikten sonra kurulum sağlanır. Ürün ücretli olduğundan trial yada deneme sürümleri ile de ilerlenebilir.
3.Adım: GitHub CoPilot
Kurulumlar kısmının son adımı olarak DataGrip’te Settings -> Plugins kısmında aşağıdaki şekilde eklenti aranıp indirilir.
Eklenti indirildikten sonra GitHub hesabı ile (yoksa eğer önce bir hesap oluşturulması gerekecektir) login olunması isteniyor, ardından her ücretli üründe olduğu gibi kredi kartı bilgilerinide içeren bir form dolduruluyor. Bugün itibariyle 30 günlük trial sürüm kullanmak mümkün olduğundan hesap bilgilerini verdikten sonra ilk 30 gün için ücretsiz kullanılabilir.
Kullanım Senaryoları
Eklenti hem editörün console kısmından hem de ayrı bir pencere olarak gelen chat kısmından kullanılabilir. Chat kısmı aşağıdaki gibi görünecektir.
Senaryo: PensionPolicy isminde yeni bir tablo yaratılması ve bu tablonun içinin random veri ile doldurulması.
Senaryonun ilk adımında tablonun create scripti için editör ekranda comment içinde yada chat kısmında destek cümlesi yazılıp uygun olan alternatif öneri kullanılabilir. Görselde bu talebe uygun tablo create script alternatifleri görünüyor.
Table Create işlemi için yukarıda seçilen tablo desenine sahip script alındı. Tablo içerisine örnek kayıtlar oluşturmak içinde aşağıdaki ifade sonucunda gelen random data generate scripti seçilebilir yada farklı alternatifler için öneriler refresh edilebilir.
Son olarak bu tablo üzerinde örnek sorgu scripti de yapılarak bu senaryo noktalanabilir. Böylece editör ekranındaki nihai görüntü şu şekilde olacaktır.
Kaynaklar:
– https://oguzhan-bolukbas.medium.com/github-copilot-nedir-fe0e4a600965
– https://www.herodot.com/blog/getting-started-with-git-hub-copilot
– https://rajanieshkaushikk.com/2023/07/18/supercharge-your-coding-with-github-copilot-the-future-of-intelligent-autocompletion/
– https://www.komtas.com/glossary/gpt-4-nedir-nasil-kullanilir
– https://www.d-teknoloji.com.tr/tr/blog/gpt-4-nedir-chat-gpt4-nasil-kullanilir
__________________________________________________________________________
Ali Mesut Karadeniz