Agent Frameworks

Mastra ile Güvenilir AI Ajanları Oluşturma: Yeni TypeScript Çerçevesine Derin Bir Bakış

Yapay zeka geliştirme dünyası hızla değişiyor. Basit sohbet botlarından ve istem temelli API'lerden ziyade, karmaşık ve otonom Ajan İş Akışlarına geçiş yapıyoruz. Bu sistemleri oluşturmaya yardımcı olan birçok çerçeve olsa da, üretim seviyesinde uygulamalar için gerekli yapısal bütünlüğü ve geliştirici deneyimini sunanlar azdır. İşte tam da burada Mastra devreye giriyor; güvenilir, üretim için hazır AI uygulamaları oluşturmaya özel olarak tasarlanmış, ortaya çıkan TypeScript tabanlı bir çerçevedir.

Bu yazıda, Mastra'nın kalabalık ajan çerçeveleri alanında neden öne çıktığını, İş Akışları ve Bellek gibi temel kavramlarının yaygın LLM sorunlarını nasıl çözdüğünü ve pratik kod örnekleri kullanarak ilk ajanınızı nasıl oluşturabileceğinizi inceleyeceğiz.

Mastra'yı Farklı Kılan Nedir?

Mevcut LLM çerçevelerinin çoğu, "ne" sorusuna —hangi modeli kullanacağımıza, yanıtı nasıl ayrıştıracakımıza— yoğun bir şekilde odaklanır. Ancak sağlam ajanlar oluşturmak, "nasıl" sorusunu çözmeyi gerektirir —durumu nasıl koruyacağımıza, uzun süren görevleri nasıl yöneteceğimize ve birden fazla işlev çağrısı arasında tutarlılığı nasıl sağlayacağınıza. Mastra, bu sorunları üç kritik temel üzerinde entegre ederek ele alır:

  • Yerel TypeScript Desteği: Tür güvenliği göz önünde bulundurularak geliştirilmiştir; ajanlarınızın tür güvenli olmasını ve hata ayıklamanın daha kolay olmasını sağlar.
  • Bildirimsel İş Akışları: Çok adımlı süreçleri tanımlamak için görsel ve kod öncelikli bir yaklaşım sunar.
  • Dahili Bellek: Ajanlarınıza uzun vadeli bağlam sağlamak için vektör veritabanlarıyla sorunsuz entegrasyon sağlar.

Temel Kavram: İş Akışları

Mastra'nın en güçlü özelliklerinden biri iş akışı motorudur. Basit düşünce zinciri istemlerinden farklı olarak, iş akışları koşullu dallanma, paralel yürütme ve hata işleme dahil olmak üzere karmaşık mantık akışlarını tanımlamanıza olanak tanır. Bu, "veri ara, sonuçları analiz et ve güven skoru düşükse kullanıcıdan açıklama iste" gibi görevleri yerine getirmesi gereken ajanlar için hayati önem taşır.

Mastra'da basit bir iş akışı tanımlamanın pratik bir örneğine bakalım. Bu örnek, kullanıcı girdisini bir LLM'ye geçirmeden önce işleyen bir adım oluşturmanın nasıl yapılacağını gösterir.

import { Workflow, step } from '@mastra/core';

// Girdiyi doğrulayan bir adım tanımlayın
const validationStep = step('validate-input', async (input) => {
  if (!input.query) {
    throw new Error('Sorgu gereklidir');
  }
  return { isValid: true, data: input };
});

// Sorguyu işleyen bir adım tanımlayın
const processingStep = step('process-query', async (context) => {
  // Doğrulanmış veriyi işleme mantığı
  return { result: 'İşlenmiş Veri' };
});

// İş akışını oluşturun
const myWorkflow = new Workflow('data-processor')
  .addStep(validationStep)
  .addStep(processingStep)
  .run();

Bağlamsal Farkındalık İçin Bellek Uygulama

Bir ajanın gerçekten yardımcı olabilmesi için geçmiş etkileşimleri hatırlaması gerekir. Mastra, Pinecone, Weaviate veya Supabase gibi popüler vektör depolarıyla sorunsuz entegre olan dahili bir bellek sistemi sağlar. Bu, ajanınızın soruları yanıtlarken ilgili geçmiş bağlamı almasını sağlayarak halüsinasyonları azaltır ve alakalılığı artırır.

Mastra ajanında belleği nasıl yapılandırabileceğinize dair bir örnek:

import { Memory } from '@mastra/memory';

const memory = new Memory({
  storage: {
    type: 'sqlite', // veya 'pinecone', 'weaviate', vb.
  },
  queries: {
    topK: 3,
  },
});

// Bir konuşma dönüşünü depolayın
await memory.storeMessages([
  {
    role: 'user',
    content: 'TypeScript için en iyi uygulamalar nelerdir?',
    id: 'msg-1'
  },
  {
    role: 'assistant',
    content: 'İşte en iyi 5 uygulama...',
    id: 'msg-2'
  }
]);

// İlgili bağlamı alın
const context = await memory.recall('TypeScript için en iyi uygulamalar');

Pratik Uygulama: Bir Araştırma Ajanı Oluşturma

İş akışlarını ve belleği birleştirerek sofistike bir araştırma ajanı oluşturabilirsiniz. Konuyu alabilen, son makaleleri arayabilen, özetleyebilen ve bulgularını gelecekteki referanslar için belleğine kaydedebilen bir ajan hayal edin. Mastra'nın yapısı bunu modüler ve sürdürülebilir kılar.

Mastra'nın tür güvenli API'lerinden yararlanarak, ajanınızın hattındaki her adımın derleme zamanında doğrulandığını güvence altına alabilirsiniz; bu da çalışma zamanı hatalarını önemli ölçüde azaltır. Bu, güvenilirliğin her şeyden önemli olduğu kurumsal ortamlarda özellikle faydalıdır.

Sonuç

Mastra, ajan çerçevelerinin evriminde önemli bir adım temsil eder. TypeScript'e, yapılandırılmış iş akışlarına ve entegre belleğe öncelik vererek geliştiricilere, sadece işlevsel değil, aynı zamanda sağlam ve sürdürülebilir AI uygulamaları oluşturmaları için gerekli araçları sağlar. Sektör daha otonom ve karmaşık AI sistemlerine doğru ilerledikçe, Mastra gibi çerçeveler geliştirme uygulamalarını standartlaştırmada kritik bir rol oynayacaktır. Temel LLM entegrasyonlarının ötesine geçmek isteyen orta ve ileri düzey geliştiriciler için Mastra, keşfedilmesi ve benimsenmesi değerinde bir çerçevedir.

Share: