Follow
Follow

Doğal Dilden Veritabanı ve API Sorgularına: Operasyon Ekipleri İçin Text-to-SQL ve Text-to-CLI Ajanları

SQL veya CLI sözdizimini ezbere bilmeyen operasyon ekiplerinin doğal dil ile veri sorgulayabilmesini sağlayan text-to-SQL/CLI yaklaşımlarını anlatıyorum.

MSSQL veritabanı yönetiminde sık karşılaştığım bir durum: operasyon ekibindeki birinin ihtiyaç duyduğu bilgi aslında basit bir SQL sorgusuyla saniyeler içinde alınabilir, ama SQL bilmedikleri için ya bana ya da veritabanı ekibine talep açıyorlar. Text-to-SQL yaklaşımı, bu bağımlılığı azaltma potansiyeli taşıyor.

Text-to-SQL Nasıl Çalışır?

Temel mantık: kullanıcının doğal dilde yazdığı soruyu (“geçen ay açılan ve hâlâ kapanmamış destek taleplerini göster”), veritabanı şemasının (tablo/kolon isimleri, ilişkiler) bir açıklamasıyla birlikte bir dil modeline vererek, geçerli bir SQL sorgusu ürettirmek.

Şema bilgisi: tickets (id, title, status, created_date, department)
Kullanıcı sorusu: "Geçen ay açılan ve hâlâ kapanmamış talepleri göster"

Üretilen SQL:
SELECT id, title, department, created_date
FROM tickets
WHERE status != 'Closed'
  AND created_date >= DATEADD(month, -1, GETDATE())

Kritik Güvenlik Önlemi: Salt Okunur Erişim

Bu tür bir sistemi kurarken en önemli kararım, modelin ürettiği SQL’in sadece salt okunur (read-only) bir veritabanı kullanıcısıyla çalıştırılmasıydı. Bir modelin yanlışlıkla (veya kötü niyetli bir prompt ile) veri silen/değiştiren bir sorgu üretme riski, bu katı sınırlama olmadan kabul edilemez.

Text-to-CLI: Operasyonel Komutlara Genişletme

Benzer mantık, CLI komutlarına da uygulanabilir. Örneğin “SRV-WEB01’de disk kullanımını göster” gibi bir istek, otomatik olarak doğru PowerShell Remoting komutuna dönüştürülebilir. Ancak burada risk SQL’den daha yüksek — bir CLI komutu potansiyel olarak sistem durumunu değiştirebilir. Bu yüzden text-to-CLI uygulamalarımda, üretilen komutu çalıştırmadan önce mutlaka insana gösterip onay istiyorum — hiçbir zaman otomatik yürütme yapmıyorum.

Doğruluk Sınırları: Ne Zaman Güvenilir?

Text-to-SQL sistemleri, şema basit ve sorular net olduğunda oldukça iyi çalışıyor. Karmaşık join’ler, belirsiz iş mantığı içeren sorularda (“aktif müşteriler” gibi tanımı şirkete özgü terimler) hata oranı artıyor. Bu yüzden üretilen sorguyu, özellikle karmaşık olanlarda, çalıştırmadan önce gözden geçirmeyi bir alışkanlık haline getirdim.

Sahadan Bir Değerlendirme

Bu tür sistemlerin asıl değeri, “SQL bilmeyen birini SQL uzmanı yapmak” değil, basit-orta karmaşıklıktaki tekrar eden sorguları bağımsızlaştırmak. Karmaşık analitik sorular hâlâ veritabanı ekibinin uzmanlığını gerektiriyor — ve bu normal.

Sonuç

Text-to-SQL/CLI, doğru güvenlik sınırlarıyla (salt okunur erişim, insan onayı) kurgulandığında, operasyon ekiplerinin veri erişim bağımsızlığını artıran değerli bir araç. Ancak “her şeyi otomatik çalıştıran” bir sistem olarak değil, doğru sorguyu önerip son kararı insana bırakan bir asistan olarak konumlandırılmalı.

Comments
Join the Discussion and Share Your Opinion
Add a Comment

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir


Newsletter
Join Design Community
Get the latest updates, creative tips, and exclusive resources straight to your inbox. Let’s explore the future of design and innovation together.