Program
Bir veri profesyoneliyseniz, muhtemelen her gün birçok tekrarlı kodlama göreviyle uğraşıyorsunuz. Yepyeni veri kümelerini profillemek, sıfırdan veri boru hatları kurmak veya veri dönüşümü testlerini elle yazmak gibi işler... Bunlar gerekli ama ciddi zaman alıyor.
Peki ya terminaliniz tüm bu tekrarlı şablon kodları sizin yerinize yönetip yazabilse ve siz de enerjinizi beyin fırtınası ve karar alma görevlerine odaklayabilseniz? İşte burada OpenAI'nin Codex-CLI aracı devreye giriyor. Doğrudan komut satırınıza yerleşik, son derece yetenekli bir yapay zekâ kodlama aracısıdır ve göreceğiniz üzere veri iş akışlarını düzene sokmada çok etkilidir.
Bu eğitimde, veri analistleri ve bilimcilerin günlük en yaygın veri görevlerini Codex-CLI ile nasıl hızlandırabileceklerini ele alacağız. Terminalden ayrılmadan, ilk keşif niteliğindeki veri analizinden tam teşekküllü veri boru hatları kurmaya ve dönüşümleriniz için otomatik testler oluşturmaya kadar her şeyi kapsayacağız.
Aracı yapay zekâ sistemleri kurma hakkında daha fazla bilgi edinmek istiyorsanız, her şeyi kapsayan AI Agent Fundamentals yetenek yolumuza kaydolmanızı kuvvetle tavsiye ederim.
Codex CLI Nedir?
Önce Codex CLI'nin ne olduğunu anlayalım. Temelde Codex CLI, OpenAI tarafından geliştirilen, açık kaynaklı ve terminal tabanlı bir kodlama aracısıdır.
Rust programlama diliyle yazılmıştır; bu da onu oldukça hızlı ve verimli kılar. Ama en kritik nokta, doğrudan komut satırınızdan çalışmasıdır; bu sayede dosyalarınızı okuyabilir, kodunuzu düzenleyebilir ve hatta makinenizde yerel olarak komutlar çalıştırabilir.

Veri görevleri için Codex CLI, ChatGPT'den nasıl farklıdır?
İşiniz için standart ChatGPT web arayüzünü kullanmaya alışık olsanız da Codex CLI oldukça farklıdır. Web arayüzünü kullandığınızda, yapay zekâ modeli çalışma ortamınızdan tamamen yalıtılmıştır.
Codex CLI ile aracı, yerel dosya sisteminize doğrudan erişir. Python betikleri çalıştırabilir, dönen çıktı veya hatalara bakabilir ve tüm proje yapınızın farkındalığını, siz her şeyi tek tek anlatmak zorunda kalmadan, baştan sona korur.
|
İş Akışı Adımı / Özellik |
ChatGPT (Web Tarayıcı) |
Codex CLI (Terminal) |
|
Veriye Erişim |
Anlamasına yardımcı olmak için CSV dosyanızı manuel olarak açıp ham veriden birkaç satırı kopyalayıp sohbete yapıştırmanız gerekir. |
CSV dosyanızı yerel dosya sisteminizden bağımsız olarak doğrudan açıp okuyabilir. |
|
Kod Çalıştırma |
Üretilen betiği elle kopyalayıp yerel kod düzenleyicinize yapıştırmalı ve kendiniz çalıştırmalısınız. |
Gerekli Python betiğini otomatik yazar, çalıştırır ve nihai çıktıyı doğrudan terminalde gösterir. |
|
Genel Deneyim |
Pencereler arasında ileri geri gidip gelen zahmetli bir kopyala-yapıştır trafiği içerir. |
Her şey terminal içinde tek bir kesintisiz ve akıcı akışta gerçekleşir. |
Elbette Codex aracısı dosyalarınızı doğrudan düzenleyebildiği ve makinenizde komutlar çalıştırabildiği için, daima kontrolün sizde kalmasını sağlayan farklı onay kipleriyle gelir. Üç onay kipi şunlardır:
- Auto (varsayılan): Codex, mevcut proje klasörünüz içinde uçtan uca çalışabilir. Bu sınırın dışına çıkması veya ağ erişimi gerektiren bir şey yapması gerekirse durur ve önce sorar.
- Salt okunur: Codex projenizi inceleyip ne yapılacağını önerebilir ancak siz planı onaylamadan dosyalara dokunmaz veya hiçbir şey çalıştırmaz.
- Tam Erişim: Codex artık proje diziniyle sınırlı değildir; makinenizin genelinde, ağ erişimi dahil, onay beklemeden işlem yapabilir. Bu, yalnızca depoya tamamen güvendiğiniz ve görevin güvenli olduğundan emin olduğunuzda kullanmanız gereken moddur.
Yeni başlarken Salt okunur ile başlamayı, iş akışına güvendikçe yukarı çıkmayı öneririm.
Çalışan bir Codex oturumunda /permissions komutuyla onay kiplerini değiştirebilirsiniz. Rahat ettiğinizde Salt okunur'dan Auto'ya geçmenin en kolay yolu budur.
/permissions
Başlangıçtan itibaren daha sıkı bir kipte çalıştırmak isterseniz, başlatırken sandbox ve onay politikası bayraklarını ayarlayabilirsiniz. Örneğin bu komut, gerektiğinde yine de soran tutucu bir salt okunur kurulumla başlatır.
codex --sandbox read-only --ask-for-approval on-request
Veri Projeleri için Codex CLI Kurulumu
Eğitimi düzgün takip edebilmeniz için bazı önkoşullara ihtiyacınız var.
- Makinenizde yüklü Python 3.10 veya üzeri
- Terminal ya da komut satırına temel düzeyde aşinalık
- Paketleri yönetmek için pip (Python'un paket yöneticisi)
- Codex'in üzerine inşa edildiği OpenAI modellerine erişmek için ücretli bir ChatGPT hesabı (Plus, Pro, Team, Business, Enterprise) ya da bir OpenAI API anahtarı
İlk iş olarak Codex CLI'yi makinenize kurmanız gerekir. Bunu yapmak için terminalinizi açıp aşağıdaki komutla CLI'yi sisteminize global olarak kurabilirsiniz:
npm install -g @openai/codex
Sonraki adım hesabınızı doğrulamaktır ki araç kimsiniz bilsin. Her şeyin doğru kurulduğunu doğrulamak ve aracıyı ilk kez başlatmak için terminalinize yalnızca codex yazabilirsiniz. Şuna benzer bir ekran göreceksiniz:

Enter'a bastığınızda, ChatGPT hesabınızla oturum açmanız istenen bir tarayıcı penceresi açılacaktır. Oturum açtıktan sonra aracı kullanmaya hazırsınız.
Ücretli bir ChatGPT aboneliğiniz yoksa ve bunun yerine bir API anahtarı kullanmak isterseniz, kullanım başına ödeme seçeneği de vardır. OpenAI konsolu üzerinden bir anahtar edinebilirsiniz.
Python veri ortamınızı yapılandırma
Yapay zekâdan veri analizi yapmasını istemeden önce Python veri ortamımızı doğru yapılandırmamız önemlidir. Bu kritik çünkü Codex CLI, çalıştığı mevcut ortam içinde işlem yapar. Aracının pandas, scikit-learn veya matplotlib gibi kütüphaneleri kullanan bir betik yazması gerekirse, bu kütüphanelerin kurulu ve kullanıma hazır olduğundan emin olmalısınız.
Bunu, Codex'i başlatmadan önce bir Python sanal ortamı etkinleştirerek yapabiliriz. Aşağıda, terminalinizde çalıştırabileceğiniz ve bir sanal ortam oluşturup gerekli veri paketlerini kuran, ortamı etkinleştiren ve ardından aracı başlatan komutları içeren örnek bir kurulum betiği bulunmaktadır:
python3 -m venv data_env
source data_env/bin/activate
pip install pandas scikit-learn matplotlib
codex
Veri projeleri için bir AGENTS.md dosyası oluşturma
Projeyi kurarken bir diğer önemli adım, ana proje klasörünüzde AGENTS.md adlı bir dosya oluşturmaktır. Bu dosyayı, Codex aracısının projenizi her açışında otomatik olarak okuduğu kalıcı talimatlar kümesi olarak düşünebilirsiniz. Bu çalışma alanına özel olarak nasıl davranmasını ve nasıl kod yazmasını istediğinizi yapay zekâya bildirir.
Veri işleri için, yapay zekânın ürettiği kodun temiz, okunabilir ve profesyonel olmasını isteriz. Bu nedenle aşağıda veri projesine özel olarak uyarlanmış örnek bir AGENTS.md içeriği bulunuyor. Bu dosyayı oluşturup metni içeri yapıştırabilirsiniz:
# Data Project Guidelines
When writing Python code for this project, please strictly follow these rules:
- Enforce PEP 8 formatting standards for all Python code.
- Always use highly descriptive variable names. Do not use generic, lazy names like df, data, x, or y. Instead, use specific names like transaction_data or revenue_series.
- Prefer pandas best practices, such as using vectorized operations instead of iterating through rows.
- Generate clear, descriptive docstrings for every single function.
- Always include Python type hints for function arguments and return values.
Bu dosya her seferinde, eldeki görevden bağımsız olarak okunacağından, kısa tutmak ve her talebe uygulanacak talimatlara odaklanmak en iyi uygulamadır. Daha spesifik talimatlar için bunun yerine yetenekleri kullanmalısınız.
Keşifsel Veri Analizi için Codex CLI Kullanımı
Şimdi gerçek veri işine geçelim ve Keşifsel Veri Analizi (EDA) ile başlayalım. Muhtemelen bildiğiniz gibi, bu neredeyse her yeni veri projesinin en yaygın başlangıç noktasıdır. Modeller veya boru hatları kurmadan önce verinizin nasıl göründüğünü bilmeniz gerekir.
Güzel olan, Codex CLI ile tek, basit bir doğal dil isteminin size eksiksiz ve çalışan bir EDA betiği üretebilmesidir.
Senaryo: Bugünkü örneklerimiz için gerçekçi, sentetik bir veri kümesiyle çalıştığımızı hayal edelim. Proje klasörümüzde transactions.csv adlı bir e-ticaret veri kümesi olduğunu varsayalım. Sipariş kimlikleri, kullanıcı kimlikleri, satın alma zaman damgaları ve işlem tutarları gibi gerçekçi iş verileriyle dolu.
Bir veri kümesini profilleme
Böyle yeni bir dosya aldığınızda, ilk yapmak istediğiniz şey temel yapısını anlamak için onu profillemektir. Kendi başınıza şablon pandas kodu yazmak yerine, Codex oturumunuzun çalıştığı terminali açıp birebir şu gibi bir istem yazabilirsiniz:
Profile the transactions.csv file. Show shape, dtypes, missing values, and summary statistics.
Enter'a bastığınızda, Codex transactions.csv dosyanızın ilk birkaç satırını doğrudan yerel dosya sisteminizden okur. Ardından profillemeyi yapacak eksiksiz bir Python betiği üretir ve "öneri" kipinde, çalıştırmak isteyip istemediğinizi sorar.
Anında verinin tam şeklini, e-ticaret sütunlarınızın veri tiplerini ve uğraşmanız gereken eksik değerlerin sayısını (aşağıdaki örnek gibi) görürsünüz; hem de tek satır kod yazmadan.

Doğal dilden görselleştirme oluşturma
Terminaldeki sayılar iyi hoş ama sonunda veriyi görsel olarak da görmek gerekir. Yalnızca ne istediğinizi düz İngilizce ile tarif ederek şaşırtıcı derecede karmaşık görselleştirmeler üretebilirsiniz.
Örneğin e-ticaret işinizin kuşbakışı görünümünü almak istiyorsanız, Codex'e şu tür bir istem verebilirsiniz:
Create a matplotlib dashboard with 3 subplots showing revenue by month, product categories ranked by sales, and order distribution by day of week.
Oldukça karmaşık bir istek. Ancak Codex hem istemi hem de veri dosyanızı analiz eder, tarihleri nasıl gruplandırıp geliri nasıl toplayacağını belirler, adım adım bir plan çıkarır ve tam da bu alt grafikleri üretecek sağlam bir matplotlib betiğine dönüştürür.

Burada bu tür yapay zekâ aracılarıyla çalışmanın çok kritik bir noktasına geliyoruz: Doğası gereği yinelemeli bir süreçtir. Codex görselleştirme kodunun ilk sürümünü önerdiğinde, nasıl göründüğünü görmek için onaylayın.
Belki ilk sürüm grafiği üretti ama x ekseni etiketleri üst üste bindi ve okunması zor, ya da renkler fazla parlak. Betiği açıp matplotlib parametrelerini elle düzeltmek zorunda değilsiniz.
Sadece şu gibi bir takip istemi yazın: "Alttaki etiketler üst üste biniyor, lütfen 45 derece döndürün ve lejand renklerini yumuşatın." Codex betiği iyileştirir, yeniden çalıştırır ve güncellenmiş, cilalı panoyu verir.
Codex CLI ile Veri Boru Hattı Kurma
Verinizle oynayıp ilk keşif analizini bitirdikten sonra, o dağınık, ad hoc betiklerden uzaklaşmanız gerekir.
Aslında yapmak istediğiniz, gerçek, tekrarlanabilir ve modüler koda yönelmektir. Veri dünyasında bu genellikle bir ETL (Extract, Transform, Load) boru hattı kurmak anlamına gelir. Verinizi içeri çekmenin, temizlemenin ve sonuçları daha sonra kullanmak üzere kaydetmenin standart yoludur.
Bunun nasıl çalıştığını göstermek için oldukça pratik bir senaryo kullanacağız. Aynı e-ticaret işlem verisini CSV'den içeri almak, bulduğumuz dağınık veriyi temizlemek, bazı iş toplamalarını hesaplamak ve son sonuçları temiz, yeni bir dosyaya kaydetmek istiyoruz.
Tüm o şablon mimariyi kendiniz yazmak yerine, Codex CLI ile yalnızca üst düzey bir tanımla tüm iskeleti çıkarabilirsiniz.
Boru hattı yapısını iskeletlendirme
İlk adım, gerçek proje yapısını kurmaktır. İyi bir veri boru hattı, daha sonra okunması ve bakımı kolay olması için ayrı dosyalara bölünmüştür. Bu ağır işi Codex aracısına yaptırabilirsiniz. Terminalinizde şu gibi bir istem verirsiniz:
Create a project layout for an ETL pipeline. I need separate Python modules for extraction, transformation, and loading, plus a main entry point script to run them all.
Codex bu dosyaları dizininizde oluşturur. Eylemi onayladıktan sonra dosya ağacınıza baktığınızda, şuna benzeyen temiz ve profesyonel bir mimari görürsünüz:
etl_pipeline/
├──__init__.py
├── extract.py
├── transformation.py
└── loading.py
– run_etl.py
Codex'in bu özel mimariyi seçmesinin nedeni, kodunuzun sorumluluklarını ayırmasıdır. Veri okuma mantığınız, matematik ve iş mantığınızdan tamamen ayrı yaşar; bu da veri mühendislerinin işlerini yapılandırması gereken tam olarak budur.
Dönüşüm mantığını yazma
Şimdi verimizin geçmesini istediğimiz dönüşümü tarif edelim. Bir ETL boru hattında dönüşüm mantığı genellikle en zorlu kısımdır; ancak ayrıntıları Codex'e bırakan bir istem yazabiliriz. Diyelim ki bazı eksik değerleri temizleyip her siparişin ne kadar gelir getirdiğini hesaplamamız gerekiyor.
CLI'ye doğrudan şu istemi yazabilirsiniz:
In transformation.py, write a function that takes the transactions data, drops any rows where the user ID is missing, and creates a new derived column called 'revenue' by multiplying the 'quantity' column by the 'unit_price' column.
Codex transactions.csv dosyanızı okuyabildiği için gerçek sütun adlarını bilir. Rastgele tahmin yürütüp df['qty'] * df['price'] yazıp en iyisini ummaz. Dosyanıza bakar, sütunlarınızın aslında quantity ve unit_price olduğunu görür ve o betiği çalıştıracak tam ve doğru pandas kodunu yazar.
Boru hattını çalıştırma ve doğrulama
Kod üretildikten sonra son adım, boru hattını uçtan uca çalıştırarak işe yaradığından emin olmaktır. Codex'e "run_etl.py betiğini çalıştır" diyebilirsiniz.
Çalıştığında, tüm terminal çıktısını doğrudan önünüzde görürsünüz; şu gibi görünebilir:

Yeni processed_transactions.csv dosyası şuna benzer görünmelidir:

Gerçek dünyada işler bozulabilir. Sayısal bir sütunda saklanan garip bir metin değeri TypeError'a yol açmış olabilir. Böyle bir durumda panik yapmanıza veya hatayı web tarayıcısına kopyalamanıza gerek yok. Codex CLI hatayı otomatik yakalar, Python tracback'ini okur ve çoğu zaman yerinde bir düzeltme önererek kendi kodunu kendi kendine iyileştirir.
Bu, bir yapay zekâ kodlama aracısıyla çalışmanın öz yinelemeli döngüsünü net biçimde gösterir:
- Codex'e bir istem verin
- Önerilen planı gözden geçirin
- Kod değişikliklerini onaylayın
- Terminal çıktısını birlikte inceleyin
- Yeni bir istemle iyileştirin
Elden yazmaya kıyasla çalışan yazılımı çok daha hızlı oluşturan, kesintisiz ve işbirlikçi bir döngüdür.
Codex CLI ile Veri Dönüşümleri için Test Yazma
Kodunuzu test etmek, üretimde yanlışlıkla bir şeyleri bozmanızı önlemek için kesinlikle kritiktir; yine de neredeyse her zaman atlanan adımdır.
Test yazmak zahmetlidir; özellikle de yeni bir veri kümesinden hızlı içgörüler istediğinizde, her şeyi bırakıp birim testler yazmak büyük bir angarya gibi gelir. Ancak Codex CLI'nın terminalinizde hazır olması bu engeli fiilen ortadan kaldırır.
Mevcut koddan pytest testleri üretme
Önceki bölümde yazdığımız dönüşüm kodu için testler üretmek isterseniz, terminalinizden ayrılmanıza veya boş bir dosya açmanıza gerek yok. pytest gibi standart bir Python test çerçevesi kullanabiliriz. Codex'e şu gibi basit bir istem vererek yapabilirsiniz:
Write high-quality, maintainable pytest tests for the transform module. Test null handling, extreme edge cases like zeroes or negative values, type casting, and revenue calculation.
Codex, daha önce oluşturduğu transformation.py dosyasına geri döner. Mantığınızı okur, işlevlerin ne yapması gerektiğini anlar ve sizin için yepyeni bir test dosyası üretir. Aşağıda, Codex bu testleri ürettikten sonra terminalinizde görebileceğiniz bir örnek yer alıyor.
Benim senaryomda, belirlenen dönüşüm işlevlerinin işlerini doğru yapıp yapmadığını kontrol etmek üzere yeni bir test_transformation.py betiğini tests klasörü içinde üretti.

Codex yalnızca jenerik iddialar yazmakla kalmaz; aynı zamanda çok gerçekçi, küçük sentetik veri girdileri (fixture) de üretir ve işlevlerinize besleyerek onları stres testine tabi tutar. Bilerek, tamamen eksik kullanıcı kimlikleri veya negatif satın alma miktarları gibi uç örnekler yaratır; böylece dönüşüm mantığınızın bu tuhaf, bozuk senaryolarda da sağlam ve doğru çalıştığından emin olur.
Veri doğrulama kontrolleri
Python kodunun kendisini test etmek bir şeydir; ancak veri profesyonelleri olarak o koddan geçen gerçek veriyi de test etmemiz gerekir. Buna genellikle veri doğrulama denir. Verinin paydaşlarınıza teslim edilmeden veya bir panoya yüklenmeden önce bizzat verinin kalitesini kontrol eden gerçek iddialar üretmek istersiniz.
Bunu, Codex'ten belirli bir veri doğrulama betiği üretmesini isteyerek gösterebilirsiniz. Şu gibi bir istem yazarsınız:
Create a data validation script that runs after the very end of the pipeline. It should check that the schema matches our expectations, ensure the null-percentage for user_id is exactly 0%, and verify that all revenue values are greater than or equal to zero.
Ardından Codex, projeniz için son güvenlik ağı işlevi gören özel bir doğrulama betiği üretir. Bunu boru hattınızın en sonunda çalışacak bir son adım olarak kolayca yapılandırabilirsiniz.
Böylece, ham CSV verisi yarın aniden yapısını değiştirirse veya bir aksaklık durup dururken negatif gelir değerlerine yol açarsa, bu betik bunu yakalar ve hemen hata fırlatır. Boru hattınızın hatalı veriyi iş kullanıcılarınıza sessizce iletmemesini sağlar.

Codex CLI ile Tekrarlı Veri Görevlerini Otomatikleştirme
Şimdiye kadar çoğunlukla Codex CLI'yı etkileşimli biçimde, karşılıklı yazarak kullanmayı gördük. Ancak bu aracı günlük iş akışına gerçekten entegre etmek isteyen veri profesyonelleri için, sıkıcı işleri neredeyse otomatik pilota alabilecek daha gelişmiş kullanım desenleri var.
Jupyter Notebook'larını üretim betiklerine dönüştürme
Jupyter Notebook'ları verilerle oynamak ve başlangıçta keşfetmek için harikadır; ancak o kodu üretimde güvenilir şekilde çalıştırma zamanı geldiğinde pek iyi değildir. Genellikle saatlerce hücreleri elle kopyalayıp Python dosyalarına yapıştırmanız ve tuhaf global değişken sorunlarını düzeltmeniz gerekir.
Codex CLI ile aracı not defterinize yöneltip ağır işi ona yaptırabilirsiniz. Terminali açın ve aynen şu istemi yazın:
Refactor analysis.ipynb into a modular Python package with separate files for data loading, transformation, visualization, and a main.py entry point.
Bunu onayladığınızda, Codex not defteri dosyanızın JSON yapısını okur, gerçek Python kodunu çıkarır, rastgele çıktı günlüklerini yok sayar ve her şeyi yeniden düzenler.
Önceki ve sonraki yapıları karşılaştırdığınızda büyük fark görürsünüz. Öncesinde, her şeyin birbirine dolandığı kocaman bir analysis.ipynb dosyası vardı.
Codex işini bitirdiğinde, ayrı data_loader.py, transformer.py ve visualizer.py dosyalarının (sizinkinde adlar farklı olabilir) yer aldığı temiz ve profesyonel bir klasör görürsünüz; hepsi main.py betiğiyle derli toplu bağlanmıştır. Dağınık keşif analizi ile üretim kalitesinde yazılım mühendisliği arasındaki boşluğu anında kapatır.
Etkileşimsiz otomasyon için codex exec kullanma
Bazen sohbet arayüzünde oturup etkileşimde bulunmak istemezsiniz. Otomatik boru hatları kuruyorsanız, örneğin kodunuzu ekibinizle paylaşmadan hemen önce çalışan otomatik kontroller gibi, yapay zekânın tamamen arka planda otomatik pilotta işini yapması gerekir.
İşte tam burada codex exec komutu devreye girer. Codex'i betiklerde ve etkileşimsiz ortamlarda, her adımda sizden izin istemeden çalıştırmak için özel olarak tasarlanmıştır.
Bunu nasıl kullanabileceğinize pratik bir örnek vermek için hızlı bir test çalıştıralım. codex exec komutunu hatalı verileri otomatik yakalayıp/doğrulayan simüle bir CI/CD kontrolü olarak kullanabiliriz.
Terminalinizi açın ve şu komutu aynen yazın:
codex exec --skip-git-repo-check "Read transactions.csv. Write and run a quick python script to check if the 'quantity' column contains any negative numbers. If it does, print 'DATA VALIDATION FAILED: Negative quantities detected.' If it is clean, print 'DATA VALIDATION PASSED'." 2> /dev/null
Enter'a bastığınızda, Codex etkileşimsiz çalışır. Alışıldık etkileşimli sohbet arayüzünü açmaz ve onay davranışı yapılandırılmış onay bayraklarına ve varsayılanlara bağlıdır; onayları devre dışı bırakmadığınız sürece bazı eylemlere yine de izin vermeniz gerekebilir. Daha fazla bilgi için Codex Dokümantasyonu'nu okumanızı öneririm.
Yerel CSV dosyanıza karşı doğrulama betiğini hızla yazar, çalıştırır ve dizin güvenilir kabul edildiği ve onaylar buna izin verecek şekilde yapılandırıldığı sürece son sonucu doğrudan standart terminal çıktınıza verir. Konsolunuzda aşağıdakine benzer bir çıktı görmelisiniz:

Bu yaklaşımın pek çok kullanım alanı vardır. Bu komutu, olduğu gibi bir pre-commit kancasında veya GitHub Actions iş akışında kullandığınızı hayal edin. Boru hattınız bir sütunu eksik veriye, NaN değerlere ya da diğer beklenmedik davranışlara rastlarsa, Codex bunu anında yakalayabilir; böylece bu PyTest ve doğrulama betiklerinin hiçbirini elle yazmak zorunda kalmazsınız.
Codex CLI Kullanan Veri Profesyonelleri için En İyi Uygulamalar
Veri işleri için yapay zekâ araçlarını kullanırken, aracıyla nasıl etkileşim kurduğunuz geri dönen Python kodunun kalitesini tamamen değiştirir. İş akışınızın olabildiğince sorunsuz ve profesyonel kalmasını sağlamak için bazı en iyi uygulamalara bakalım.
Veri görevleri için etkili istemler yazma
Ustalaşmanız gereken ilk şey etkili istemler yazmaktır. Yapay zekâya "veriyi temizle" deyip kusursuz sonuçlar bekleyemezsiniz. İşte isteklerinizi nasıl yapılandırmanız gerektiği:
-
Spesifik olun: Gerçek sütun adları, istediğiniz tam veri tipleri ve beklediğiniz çıktı formatı konusunda net olmalısınız. Örneğin muğlak bir istek yerine, açıkça "'purchase_date' sütununu datetime'a çevir ve özetlenmiş bir CSV üret" demelisiniz.
-
Dosyalara doğrudan referans verin: Ayrıca kullanışlı bir yöntem de isteminizde
@sözdizimiyle dosyalarınıza doğrudan referans vermektir.@transactions.csvyazarsanız, Codex'in o an bu belirli dosyayı bağlama okumasını zorunlu kılarsınız. -
Karmaşık görevleri bölün: Belki de en önemlisi, Codex'in tek bir dev mega istemle hareket etmesine izin vermek yerine, görevleri daha küçük birimlere bölmeye çalışın. Codex'in özel plan kipini kullanarak önce bir taslak oluşturup sonra adım adım uygulamak, karmaşık işler için en doğru yoldur.
İstem yazma becerinizi bir üst seviyeye taşımak isterseniz, Prompt Engineering with the OpenAI API kursumuzu öneririm.
Her onay kipini ne zaman kullanmalı
Daha önce değindiğimiz gibi, CLI farklı onay kiplerine sahiptir ve hangisini ne zaman kullanacağınızı bilmek önemlidir. Hangi modu ne zaman kullanmanız gerektiğine dair bir rehber:
- Salt okunur: Aracı hâlâ öğrenirken veya hassas üretim verileriyle ya da tanıdık olmayan görevlerle uğraşırken kesinlikle bunu kullanın. Kontrolü sıkı şekilde sizde tutar.
- Auto (çalışma alanı): Rahat ettiğinizde, sürüm kontrolü altındaki bir projede rutin dönüşümler ve yeniden düzenlemeler için Auto harikadır. Codex proje klasörü içinde dosyaları düzenleyip betikler çalıştırabilir; bu kapsam dışında riskli bir şey yapmadan önce ise hâlâ sorar.
- Tam erişim: Bunu, hızın güvenlikten daha önemli olduğu sandbox denemeleri veya bir kerelik atıl analizler için ayırın. Bu kipte Codex'in makinenize geniş erişimi vardır ve daha az onay ister; bu yüzden yalnızca tamamen güvendiğiniz depolar ve görevlerde kullanın.
Veri iş akışlarınızı tekrarlanabilir tutma
Son olarak, veri iş akışlarınızı tekrarlanabilir tutmak her veri profesyoneli için çok önemlidir. Uymanız gereken en büyük kurallardan biri, Codex'i her zaman başlatılmış bir Git deposu içinde çalıştırmaktır. Çünkü Codex makinenizde dosya yazıp düzenleyeceği için, bu değişiklikleri Git'in izlemesi yapay zekânın ne yaptığını kolayca görmenizi ve işler ters giderse geri almanızı sağlar.
Ayrıca daha önce oluşturduğumuz AGENTS.md dosyasını proje kodunuzla birlikte mutlaka sürümleyin. Böylece ekibinizdeki başka bir veri bilimci deponuzu kopyalayıp Codex'i açtığında, tüm ekip aynı kodlama standartları ve talimatlardan yararlanır.
Aynı durum, tekil görevler için tanımladığınız aracı yetenekleri için de geçerlidir. İlham için, Codex ve diğer aracı kodlama araçları için hazırladığımız yüzün üzerindeki en iyi aracı yetenekleri rehberimize göz atın.
Ve birkaç güne yayılan ağır bir analiz üzerinde çalışıyorsanız, her sabah sıfırdan başlamanıza gerek yok. Terminalinizde codex resume komutunu kullanarak çok oturumlu veri projelerine devam edebilirsiniz. Dünkü sizin ve aracının yaptıklarının değerli bağlamını kaybetmeden önceki sohbetinize geri yükler.
Birkaç güne yayılan ağır bir analiz üzerinde çalışıyorsanız, her sabah baştan başlamanız gerekmez. Terminalinizde codex resume komutunu kullanarak çok oturumlu veri projelerine devam edebilirsiniz. Projedeki son Codex oturumunuzu, önceki konuşma, planlar ve dosya değişiklikleri bağlamda kalacak şekilde (normal model ve geçmiş sınırlarına tabi) yeniden açar.
Aracı kodlamada daha fazla en iyi uygulama için Claude Code En İyi Uygulamalar rehberimize de göz atabilirsiniz. Claude Code ve Codex farklı olsa da, Codex vs Claude Code karşılaştırmamızda belirttiğimiz gibi, temel kavramların çoğu Codex için de geçerlidir.
Sonuç
Codex CLI'yı özellikle veri işleriniz ve yerel Python ortamlarınız için kurduk. Oradan, sıfırdan keşif veri analizi betikleri üretmeyi, tekrarlanabilir ETL veri boru hatları kurmayı, (çoğu zaman atlanan) otomatik dönüşüm testleri yazmayı ve son olarak bu aşırı tekrarlı günlük veri görevlerini otomatikleştirmenin ileri yollarını ele aldık.
Unutmamanız gereken en önemli kısım, tüm bunları komut satırından, web tarayıcısına ileri geri zıplamadan yapmış olmamızdır. Codex CLI, dağınık keşif veri analizi ile üretim kalitesinde veri mühendisliği arasındaki o can sıkıcı boşluğu etkili biçimde kapatır.
Codex CLI ile daha karmaşık bir aracı nasıl kuracağınızı öğrenmekle ilgileniyorsanız, Codex CLI MCP Eğitimimizi izlemenizi öneririm. Finansal portföy gösterge paneli aracısı oluşturma sürecini adım adım anlatır.
Veri Analitiği için Codex CLI SSS
Codex CLI nedir ve veri işleri için ChatGPT'den nasıl farklıdır?
Codex CLI terminalinizin içinde çalışır; bu sayede yerel proje dosyalarınızı doğrudan okuyabilir, betikler yazıp yeniden düzenleyebilir ve gerçek çıktıları ve hataları göstermek için komutlar çalıştırabilir. Tarayıcıdaki ChatGPT genellikle çalışma dizininizden kopuktur; bu yüzden veriyi, kodu ve izlekleri ileri geri kopyalayıp yapıştırmak zorunda kalırsınız.
Codex CLI bir CSV'den keşif veri analizi (EDA) betiklerini otomatik üretebilir mi?
Evet. CSV dosyası proje klasörünüzdeyse, Codex'e sütunları profillemesini, eksik değerleri kontrol etmesini, özet istatistikleri hesaplamasını ve matplotlib grafikleri üretmesini söyleyebilirsiniz. Önemli olan, dosyayı açıkça işaret ederek gerçek şemayı okumasını ve tahmin etmek yerine gerçek sütun adlarını kullanmasını sağlamaktır.
Bir veri kümesi için ETL boru hattını Codex CLI ile nasıl kurarsınız?
Güvenilir bir iş akışı, önce Codex'ten basit bir boru hattı iskeleti (extract, transform, load) çıkarmasını istemek, sonra kurallarınıza göre dönüşümleri uygulamak, ardından boru hattını çalıştırıp hata izleklerini kullanarak sorunları düzeltmektir. Dönüşüm mantığını modüler tuttuğunuzda ve Codex'e betikleri çalıştırttığınızda (varsayım değil gerçek çıktı gördüğünüz için) en tutarlı sonuçları elde edersiniz.
Codex CLI, veri dönüşümleri ve doğrulama kontrolleri için pytest testleri yazabilir mi?
Evet. Codex, null yönetimi, tür dönüşümleri, uç durumlar ve gelir hesaplaması gibi formül kontrollerini kapsayan pytest testleri üretebilir. Ayrıca, şema beklentilerini ve boru hattı çalıştıktan sonra temel veri kalitesi kurallarını zorlayan ayrı bir doğrulama betiği de oluşturabilir; bu da sessiz hataları ve sapmaları yakalamaya yardımcı olur.
Gerçek veri projelerinde Codex CLI'yi güvenli kullanmak için en iyi uygulamalar nelerdir?
Aracın davranışına güvenene kadar tutucu bir onay kipinde başlayın ve çalışmalarınızı sürüm kontrolü altındaki bir depoda tutun; böylece her değişiklik incelenebilir ve geri alınabilir. İstemlerde net olun, okunmasını istediğiniz dosyaları tam olarak referans verin ve "veriyi temizle" gibi geniş talimatlar vermekten kaçının; bunun yerine, sizin kullanım durumunuzda temizliğin ne anlama geldiğini tanımlayın.

