יום שלישי, 20 באוקטובר 2026 מתעדכן אוטומטית כל שעה
→ חזרה למהדורה

Amazon Bedrock מוסיפה פלט מובנה לכל מודלי Claude: תשובות JSON לפי סכמה מוגדרת מראש

AWS הודיעה ש-Amazon Bedrock תומכת עכשיו ב-structured outputs, כלומר פלט מובנה, לכל מודלי Claude של אנתרופיק. המודלים מחזירים JSON שתואם לסכמה שהמפתח הגדיר, בלי קוד פרסור ייעודי ובלי ניסיונות חוזרים. העדכון נוגע בעיקר למפתחים שבונים על Bedrock אפליקציות לחילוץ נתונים וסוכנים.

Amazon Web Services הודיעה ש-Amazon Bedrock, שירות הענן שלה לגישה למודלי שפה, תומך עכשיו ב-structured outputs (פלט מובנה) לכל מודלי Claude של אנתרופיק. התמיכה קיימת בשתי נקודות הגישה של השירות, bedrock-runtime ו-bedrock-mantle, בכל מקום שבו המודל זמין. מפתח מגדיר מבנה נתונים, והמודל מחזיר JSON שתואם לו. לדברי AWS, כבר אין צורך בקוד פרסור ייעודי, בלוגיקה של ניסיונות חוזרים או בעיבוד נוסף של התשובה.

מה הבעיה שזה פותר

מי שבנה מוצר על גבי LLM מכיר את הבעיה. מבקשים מהמודל להחזיר JSON, ולפעמים מקבלים JSON שבור, שדה חסר או מספר שהגיע כמחרוזת טקסט. בדרך כלל הפתרון היה לעטוף את הקריאה בקוד שבודק את התשובה ושולח את הבקשה שוב כשמשהו נכשל. השיטה הזו עובדת, אבל היא מוסיפה עלות, זמן תגובה ומורכבות.

לפי AWS, הפתרון החדש מבוסס על constrained decoding (פענוח מוגבל): הסכמה נאכפת כבר בזמן שהמודל מייצר את הטוקנים, ולא נבדקת רק בסוף. המודל פשוט לא מייצר טוקנים שיפרו את הסכמה. כך, כלשון ההודעה, עיצוב הפלט הופך מ"הסתברותי" ל"דטרמיניסטי". התוצאה היא JSON תקין בכל תשובה, סוגי שדות שנאכפים ושדות חובה שתמיד מופיעים.

שני מנגנונים

AWS מציגה שני מנגנונים משלימים, וכל אחד מהם זמין בשתי נקודות הגישה:

  • JSON Schema output format: שליטה במבנה התשובה של המודל. מתאים לחילוץ נתונים, להפקת דוחות ולתשובות API.
  • Strict tool use: אימות של הפרמטרים שהמודל מעביר לכלים חיצוניים מול סכמה. מתאים לתהליכים אגנטיים, ל-function calling (קריאה לפונקציות) ולאוטומציה רב-שלבית.

בין הדוגמאות שהחברה מביאה: חילוץ שדות מדוחות כספיים וממסמכי ציות, המרת סיכומים קליניים לרשומות רפואיות אלקטרוניות (EHR), ניתוח חוזים לאיתור צדדים והתחייבויות, וניתוב פניות תמיכה. בהודעה מופיעה גם דוגמת קוד ב-Python שמחלצת מתוך מייל של לקוח את שמו, כתובת המייל שלו, התוכנית שמעניינת אותו והאם ביקש הדגמה.

ביצועים ועלויות

כשמשתמשים בסכמה חדשה, Bedrock מאמתת אותה מול תת-קבוצה נתמכת של JSON Schema Draft 2020-12, ואז "מקמפלת" ממנה דקדוק שמגביל את הפלט. לכן הבקשה הראשונה עם סכמה חדשה עשויה לקחת קצת יותר זמן. הדקדוק המקומפל נשמר במטמון (cache) למשך 24 שעות מהגישה הראשונה, והמטמון מוגבל לחשבון של הלקוח. שינוי במבנה הסכמה מבטל את המטמון, אבל שינוי של שדות השם או התיאור בלבד לא משפיע עליו.

AWS מציינת עוד שהתשובות מכילות רק את השדות שהוגדרו בסכמה. לכן מספר טוקני הפלט קטן, והדבר יכול להוזיל את עלויות ההרצה בעומסים גבוהים. הפלט המובנה עובד גם ב-batch inference (עיבוד אצווה אסינכרוני) וגם בהזרמה (streaming) של תשובות בזמן אמת כאירועים מוגדרי טיפוס. בנקודת הגישה bedrock-runtime הוא עובד גם עם cross-Region inference, כלומר הרצה על פני כמה אזורי AWS בלי הגדרות נוספות.

המשמעות

בפועל, נראה שהעדכון מסיר שכבת קוד שכמעט כל צוות שבנה על Bedrock נאלץ לכתוב בעצמו. ההשפעה צפויה להיות מורגשת בעיקר במערכות סוכנים, שבהן פרמטר שגוי אחד שנשלח לכלי יכול לשבש תהליך שלם. כדאי לשים לב גם לסייג: התמיכה היא בתת-קבוצה של תקן JSON Schema. מי שעובד עם סכמות מורכבות יצטרך ככל הנראה לבדוק שהן נתמכות לפני מעבר לייצור.

💬 יש לכם הערה על הכתבה?
פרסומת

→ לכל הכתבות