Laravel AI SDK ile Ses Transkripti Uygulaması
PHP’de AI entegrasyonunun manzarası değişti. Laravel AI SDK’sının piyasaya sürülmesiyle, geçmişte karmaşık API yönetimi veya üçüncü taraf paketler gerektiren uygulamalar, artık sevdiğimiz çerçevenin birinci tarafta vatandaşı durumuna geldi.
Amaç: Sorunsuz Ses Transkripti
Somut bir şey inşa etmek istedim. Sadece AI için bir “Merhaba Dünya” değil, gerçekten kullanacağım bir özellik: düşüncelerimi kaydetmenin ve metne dönüştürmenin hızlı bir yolu.
Uygulama
SDK’nın kurulumu ilk adımdı ve Laravel ekosisteminden beklediğiniz gibi, sorunsuzdu.
composer require laravel/aiAncak asıl sihir denetleyicide gerçekleşti. Geçmişte ses dosyası yükleme, biçimleri dönüştürme ve bunları OpenAI’nin Whisper veya Google’ın Speech-to-Text API’sine gönderme işlemleri belirli bir miktar temel kod gerektiriyordu. Dosyayı yönetmek, biçimin doğru olduğundan emin olmak, çok parçalı istek oluşturmak, yanıtı işlemek… bu işler meşakkatlidir.
Laravel AI SDK ile bu karmaşıklık kayboluyor. “Nasıl” kısmını soyutlayarak, “ne” ye odaklanmanıza olanak tanıyor.
Dettami denetleyici örneği
public function __invoke(Request $request)
{
if ($request->hasFile('audio')) {
$file = $request->file('audio');
// Dosyayı geçici olarak depola
$path = $file->storeAs('dettami', 'recording.webm');
$fullPath = Storage::path($path);
try {
// İşte sihrin olduğu yer. Şu tek satırlık akış.
$transcription = Transcription::fromPath($fullPath, 'audio/webm')
->generate();
// Temizlik yap
Storage::delete($path);
return response()->json([
'success' => true,
'transcription' => (string) $transcription,
]);
} catch (\Throwable $e) {
// ... hata yönetimi
}
}
}İşte bu kadar. Transcription::fromPath(...) -> generate();
SDK, yapılandırılan AI sağlayıcısıyla iletişim kurmanın ağır yükünü üstleniyor. Kendinizi doğal hissediyorsunuz. Doğru hissettiriyor.
Frontend Deneyimi
Frontend’i sade tuttum. Blade ve vanilla JavaScript ile MediaRecorder API’sını kullandım. Amaç, anında geri bildirim sağlamak. Kayıt butonuna tıklıyorsunuz, konuşuyorsunuz ve metni alıyorsunuz.
Transkripsiyonun Ötesi: Çeviri
Bu SDK’nın gücü sadece transkription ile sınırlı değil. Metni elde ettiğinizde, olanaklar sonsuz. Özetleyebilir, yeniden yazabilir veya deneyimlediğim gibi, çevirebilirsiniz.
SDK, bu işlemler için birleşik bir arayüz sağladığından, çeviri adımını eklemek transkription kadar basittir. İster OpenAI, ister Anthropic, ister Gemini kullanıyor olun, kod düzenli ve tutarlı kalır.
Yansımalar
Dettami’yi inşa etmek, bu çerçeveyi neden sevdiğimi hatırlattı. Zamanıma saygı gösteriyor. Laravel AI SDK sadece bir sarmalayıcı değil; uygulamalarımıza zeka entegre etmenin zarif bir yoludur. Ve bunu yaparken baş ağrısı yaşamıyorsunuz.
Yazılım mimarları ve geliştiriciler için bu, AI ile bağlantıyı kurma kaygılarını bırakıp onunla neler inşa edebileceğimize odaklanabileceğimiz anlamına geliyor. Sonuç olarak, giriş engeli neredeyse sıfıra indirildi.
Henüz denemediyseniz, bir terminal açın.
composer require laravel/aiVe harika bir şey inşa edin. Dettami’nin tam kaynak koduna GitHub’dan ulaşabilirsiniz. Transkripsiyon mantığını izole olarak görmek için bu commit ile başlamanızı öneririm.
İlerlemeye devam edin.
Kaynak: Orijinal Makale


