deniz.in

Piyasalar

Hava durumu

Hava durumu yükleniyor

· kaynak Vercel blog

Vercel Run SDK, güvenilmeyen agent kodunu insan onayı için duraklatılabilen bir sandbox içinde çalıştırıyor

Vercel'in Run SDK'sı, güvenilmeyen JavaScript ve TypeScript kodunu izole bir QuickJS sandbox'ında çalıştırıyor; dar kapsamlı host fonksiyonları açığa çıkarıyor ve kimlik doğrulama ile insan onayı için geri devam ettirilebilir kesintiler ekliyor.

Vercel Run SDK, güvenilmeyen agent kodunu insan onayı için duraklatılabilen bir sandbox içinde çalıştırıyor

Vercel ne yayınladı

Vercel, Run SDK'yı yayınladı; bu paket, güvenilmeyen JavaScript ve TypeScript kodunu, o koda çevresindeki uygulamaya veya sisteme doğrudan erişim vermeden çalıştırmak için tasarlandı. Hedeflediği sorun belirli: agent'lar araçları koordine etmek ve sonuçlarını işlemek için giderek artan biçimde küçük TypeScript programları yazıyor ve bu üretilmiş kodu eval ile çalıştırmak, ona host uygulamanın yetkisinin aynısını veriyor; bu yetki sırları ve iç servisleri de kapsıyor ve bir adımın kimlik doğrulaması ya da bir insan kararı gerektirdiğinde çalışmayı kalıcı biçimde duraklatmanın bir yolu bulunmuyordu.

Dar arayüzlü bir sandbox

Vercel'e göre her çağrı, bir worker thread içinde taze bir QuickJS context'i alıyor ve Node.js'ye ya da ağa doğrudan bir yol bulunmuyor. Bunun yerine uygulama, seçili işlemleri host fonksiyonları olarak açığa çıkarıyor: sandbox içinde çağrılabilir global'lere dönüşen sıradan fonksiyonlar. Çağrılar sınırı serileştirme yoluyla geçiyor ve host fonksiyonları promise döndürebildiği için mevcut servis client'ları, sandbox'a hiçbir zaman doğrudan geçirilmeden arayüzün arkasında konumlanabiliyor. Veritabanı client'ı ve kimlik bilgileri uygulamada kalıyor; üretilen program yalnızca kendisine açılan işlemleri görüyor.

Vercel, host fonksiyonlarının genel bir request fonksiyonu yerine somut ürün eylemlerine — örneğin bir siparişi iade etmeye — karşılık gelmesini öneriyor; çünkü dar kapsamlı işlemler, uygulamaya hem kullanıcıyı hem de eylemin hedefini denetleyebileceği net bir nokta sağlıyor.

Paket, AI SDK'daki code mode araç yürütmesinin arkasındaki dahili modül. Orada, agent'a bir program vermek iş birimini değiştiriyor: tek bir model yanıtı birkaç çağrıyı ve onları bağlayan mantığı tanımlayabiliyor. Vercel'in örneğinde bir hesap ve faturaları eşzamanlı olarak çekiliyor, vadesi geçmiş faturalar program içinde filtreleniyor ve uygulamaya yalnızca özet dönüyor. Bu desen, birkaç iç servis üzerinde çalışan agent'lara uygun — bir destek agent'ı, faturalandırma yanıtının tamamını kendi context'ine çekmeden faturalandırma verisini inceleyebiliyor.

Kimlik doğrulama ve onay için kesintiye uğrayabilen çalıştırmalar

Veri okumak, o veri üzerinde eylem yapmaktan farklı. Üretilen kod hassas bir işleme ulaştığında, bir host fonksiyonu çalıştırmayı kesintiye uğratıp onay isteyebiliyor. Kesintiye uğrayan sonuç, uygulamanın onay isteğinin yanında sakladığı imzalı bir token taşıyor; bir karar geldiğinde token çalışmayı geri devam ettiriyor. Devam ettirme programı yeniden oynatıyor, ancak daha önce sonuçlanmış host fonksiyon çağrıları kaydedilmiş sonuçlarını döndürüyor; böylece tamamlanmış iş yeniden çalıştırılmıyor — kesintiye uğrayan fonksiyon onayı alıyor ve oradan devam ediyor. Vercel, aynı mekanizmanın kimlik doğrulamayı bekleyen iş akışlarını da kapsadığını, bekleme süresinin uygulamaya ait olduğunu ve worker'ı canlı tutma gerekliliği olmadığını söylüyor.

Sınırlar, izolasyon sınırları ve kökenler

Bir runner factory paylaşılan sınırları belirliyor — Vercel'in örneği on saniyelik bir timeout ve 32 MB'lık bir bellek tavanı kullanıyor — ve sınırlar çalıştırma başına da uygulanabiliyor; varsayılanlar QuickJS heap'ini ve host sınırını geçen değerleri kapsıyor. Dinamik değerlendirme devre dışı ve yerleşik prototipler sertleştirilmiş. Önemli bir nokta: sınır yalnızca üretilen program için geçerli; host fonksiyonları güvenilen uygulama kodu olarak kalıyor ve kendi yetkilendirme denetimlerini kendileri yapmalı. Vercel, SDK'yı bir uygulama içindeki JavaScript hesaplamaları için konumlandırıyor ve işletim sistemi, paket kurulumu ya da süreç düzeyinde izolasyon gerektiren iş yükleri için Vercel Sandbox'a işaret ediyor.

Runtime, just-bash içindeki js-exec olarak doğdu; agent'lar orada sanal bir dosya sistemi ve komut setine karşı TypeScript yazıyordu. Vercel bu katmanı ayıkladı, mekanizmayı eve projesinde test etti ve artık AI SDK'daki code mode'u çalıştırıyor; mevcut AI SDK araçları orada host fonksiyonlarına eşleniyor. SDK Node.js 22.13+ ve Bun destekliyor ve bir tarayıcı playground'ı, yalnızca sayfanın host fonksiyonlarına erişilebilirken denemenize izin veriyor.

Neden önemli

Agent framework'leri, kod çalıştırmanın genel amaçlı araç olduğunu defalarca yeniden keşfediyor; ancak eval tarzı çalıştırma, agent'ın yapabileceği ile uygulamanın yapabileceği arasındaki çizgiyi siliyor. Yetenekleri açık host fonksiyonları haline getirerek ve çalıştırmaları imzalı, geri devam ettirilebilir token'larla duraklatılabilir kılarak Run SDK, kapsamlı yetki ve insan-döngüde kontrol için somut bir şablon sunuyor. Uyarı şu: güvenlik artık host fonksiyon yüzeyinin biçimine bağlı — sandbox üretilen programı izole ediyor, ancak yetkilendirme mantığı tamamen uygulamada kalıyor.

  • #vercel
  • #ai-agents
  • #sandboxing
  • #typescript
  • #sdk

İlgili yazılar