- API'ye "Structured Outputs" eklendi
- Geliştiricinin sağladığı JSON şemasına model çıktısının tam olarak uymasını sağlayan yeni bir özellik
- Geçen yılki DevDay'de JSON modu tanıtılmıştı, ancak belirli bir şemaya uyan yanıtları garanti etmiyordu
- Yapılandırılmış çıktılar, model çıktısını geliştiricinin sağladığı şemaya göre sınırlar ve modeli karmaşık şemaları daha iyi anlayacak şekilde eğitir
- Yapılandırılmış çıktılara neden ihtiyaç var
- Yapılandırılmamış girdilerden yapılandırılmış veri üretmek, yapay zekanın temel kullanım senaryolarından biri
- OpenAI API kullanılarak veri alma, soru yanıtlama, veri çıkarma, çok adımlı iş akışları kurma gibi çeşitli işler yapılabiliyor
- Daha önce model çıktısını sistemlerle birlikte çalışabilir bir biçime uydurmak için açık kaynak araçlar, istemler ve yeniden denemeler gibi ek çabalar gerekiyordu
- Yapılandırılmış çıktılar bu sorunu çözüp model çıktısını geliştiricinin sağladığı şemaya göre sınırlar
- Performans değerlendirmesi
- Karmaşık JSON şemalarına uyumu ölçen değerlendirmede
gpt-4o-2024-08-06 modeli %100 puan aldı
gpt-4-0613 modeli ise %40'ın altında kaldı
- Yapılandırılmış çıktılar nasıl kullanılır
- Fonksiyon çağrısı yoluyla yapılandırılmış çıktı: fonksiyon tanımı içinde
strict: true ayarı
- Tüm araçları destekleyen modellerde kullanılabiliyor
- Güvenli yapılandırılmış çıktılar
- OpenAI'nin mevcut güvenlik politikalarına uyuyor
- Model güvenli olmayan istekleri reddedebilir
- API yanıtında bir reddetme dizesi değeri bulunur; böylece modelin reddetme üretip üretmediği programatik olarak tespit edilebilir
- Yerel SDK desteği
- Python ve Node SDK'ları yapılandırılmış çıktıları yerel olarak destekliyor
- Pydantic veya Zod nesneleri verilerek bunlar JSON şemasına dönüştürülüyor; JSON yanıtları da otomatik olarak serileştirilip ayrıştırılıyor
- Kısıtlar
- JSON şemasının yalnızca bir bölümü destekleniyor
- Yeni bir şemayla yapılan ilk API yanıtında ek gecikme oluşuyor
- Model güvenli olmayan istekleri reddedebilir
- Paralel fonksiyon çağrılarıyla uyumlu değil
- Yapılandırılmış çıktılar Zero Data Retention (ZDR) kapsamında değil
- Kullanılabilirlik
- Yapılandırılmış çıktılar API'de genel kullanıma açık
- Fonksiyon çağrısı yoluyla yapılandırılmış çıktılar, fonksiyon çağrısını destekleyen tüm modellerde kullanılabiliyor
- Yanıt biçimi seçeneği en yeni modellerde kullanılabiliyor
GN⁺ Özeti
- OpenAI'nin yeni özelliği yapılandırılmış çıktılar, model çıktısının JSON şemasıyla tam eşleşmesini sağlıyor
- Geliştiriciler bununla veri alma, soru yanıtlama, veri çıkarma gibi işleri daha güvenilir biçimde yapabiliyor
- Python ve Node SDK'larında yerel destek sunulduğu için geliştirme kolaylaşıyor
- Yapılandırılmamış veriden yapılandırılmış veri çıkarma gibi ek kullanım senaryoları bulunuyor
- Geçerli JSON üretimini sağlamak için constrained decoding tekniğiyle model çıktısı sınırlandırılıyor
2 yorum
İlginç bir özellikmiş.
Hacker News yorumları
GPT-4o kullanarak dinamik UI ve kod geliştiriliyor
gpt-4o-2024-08-06 sürümündeki başlıca değişiklikler
vLLM'de Outlines Structured Output kullanma deneyimi
Yapay zeka performansına dair görüş
OpenAI'nin yaklaşımına dair görüş
"strict: true"seçeneğine dair kafa karışıklığıJSON'u modele sabit kodlamanın AGI hedefiyle ters yönde olduğu görüşü
OpenAI özellikleri kullanılırken kilitlenme etkisine dair endişe
JSON biçim hatasına dair bir not
En üst seviyenin neden nesne olmak zorunda olduğuna dair soru