לעדן

חזרה למסמך הראשי

אליס והצ׳אט

נכתב בידי עוזר AI שעובד עם יוסף, מתוך תיעוד העבודה במרכז, כרקע לפגישה ב־20.10.

מה זה ומי מחזיק מה

אליס היא הסוכן הקליני של המרכז. נותנים לה מטופל, והיא שולפת את התיק שלו דרך רוזטה, הופכת אותו לאירועים, בונה ממנו פרופיל מאונדקס ועונה מעליו לשאלות של רופאים, עם הפניות למקור. מעבר לצ׳אט היא מריצה גם משימות מתוזמנות ומשימות שמופעלות מאירועים מעל אותו פרופיל. לצידה עומד cwc-web, ״צ׳אט עם התיק״, הממשק שהרופאים פותחים: שיחות, טעינת מטופל, הפניות, מטופלים אחרונים ופרומפטים שמורים.

בצוות קוראים לשני החלקים ״אליס המנוע״ ו״אליס האפליקציה״, ולכל אחד מהם בעלים אחרים. את אב הטיפוס של המנוע כתב אלון אגמון באוקטובר 2025, ובהמשך עבדו עליו כמה אנשים בצוות. ביוני הוא אמר בקבוצת ההנדסה במפורש שהוא עונה על המנוע ופחות על הבקאנד של הלקוח. הלקוח מנוהל ביום־יום בידי אופיר אליאס, מסוף אפריל 2026, ומיולי היא גם מכריזה על השחרורים שלו. עובדים בו גם יעל דהואן, טהר אברג׳ל ושרון גולדשטיין. מאיה קפלנסקי היא בעלת המוצר, והיא גם השער מצד המוצר לשחרורים. שיר אביב מחזיקה את ההערכה הקלינית ואת טריאז׳ הפידבק מהרופאים. אלכס צבטקוב מהדאטה סיינס אחראי מאפריל על ההערכה האוטומטית, ורחל ויטיס מחזיקה את השער המתודולוגי. יערה כץ מחזיקה את הניהול ההנדסי: סדרי עדיפויות, שיבוץ, נהלים וסביבות. יאיר גינת וקווין צימרמן מהדבאופס מחזיקים את הסביבות, ההגנה על הענפים והפריסה, וסלע ענבר את ההזדהות המשותפת. אלירן חדד הוא מסוף ספטמבר מי שעונה על החימום.

יוסף בן יהודה מופיע בהיסטוריה של שני החלקים, ולכן כדאי לפרט במה. בלקוח הוא כותב מייסד: הוא תכנן את בסיס הקוד של cwc-web וכתב חלק גדול ממנו, ומאז הקיץ הלקוח כולו בידי הצוות של אופיר. במנוע הוא היה הכותב הגדול ביותר אחרי אלון, בעיקר בשכבה שמתחת לסוכן: טעינה ו־Digest, הזדהות, תצפית, מודל ה־artifacts ומסלול המשימות. הפרומפט, הכלים והאמבדינג התפתחו בתוך צוות המנוע. התאריכים מופיעים בסעיפים הבאים.

ההתחלה: אוקטובר 2025 עד פברואר 2026

הבקשה הקלינית נרשמה ב־16.10.2025, בקבוצת המפתחים. גיא דולינסקי העביר מהרופאים שהם רוצים לשוחח עם התיק, והעריך שזה ייבנה בתוך PUMA, עם חיבור לקמיליון, ומיד אחרי SmartER. באותו ערב הוא ניסח גם את הקושי היסודי: הקריאות לנתונים הן החלק הקל, ומה שמחבר ביניהן הוא שיקול דעת רפואי של שנים.

שבוע אחר כך, ב־23.10.2025, אלון כתב בעצמו את אב הטיפוס של המנוע. הוא לקח את ה־JSON של סמי, שיטח אותו, טען אותו בזמן ריצה ל־LanceDB עם אינדקס טקסט ואינדקס וקטורי, ושם מעליו סוכן. זה הוצג להנהלת המרכז, וההחלטה מצד המוצר הייתה שזו תהיה אפליקציה עצמאית עם עיצוב משלה, רכיב שאפשר להלביש על אפליקציות אחרות, ולא חלק מ־PUMA. ב־26.10 הוחלט על פיילוט, ואלון העביר את הפרויקט ליוסף באותו ערב. ב־30.10 כבר רץ חדר המוצר, ״CWC / Alice Squad״, עם אפיון כתוב ו־MVP: ילדים ופנימית אשפוז רגיל, עם כמה רופאים מובילים, בלי מטוויז׳ן ובלי טיפול נמרץ.

ב־31.10.2025 אלון קבע את הכלל שמסביר כמעט כל מה שקרה אחר כך: הבקאנד צריך להיות עצמאי ולשרת הרבה אפליקציות, והצ׳אט הוא רק לקוח אחד שלו. מהכלל הזה נגזר הפיצול של 2026 למנוע וללקוח, וגם השילוב המאוחר של אליס בתוך SmartER.

הצ׳אט הראשון שאפשר היה לפתוח מול רופא נבנה ב־3.11.2025. יוסף בנה אותו בהמתנה לבילד אחר, והוא הורם מקומית על המחשב של ד״ר רועי טונק, רופא שבדק את המערכת מההתחלה. מאחוריו היה SQL פשוט מעל קמיליון, והטוען לקח כל מזהה ומשך את הנתונים חיים, במקום מטופל קרדיולוגיה אחד קבוע. מאיה פרגנה עליו בקבוצה באותו ערב, וקבעה שהשלב הבא הוא התקנה במקום אחד ולא על כל מחשב בנפרד. כדאי להבחין בין שני אבות הטיפוס: של אלון הוא המנוע, לפני ההעברה, ושל יוסף הוא הלקוח שרופא יכול לפתוח, אחריה. באותו יום אלון קבע שהפיילוט ירוץ בפנימית א׳ ולא ישולב ב־PUMA. ב־5.11 נפתח ערוץ בטימס, ומאיה עיצבה את הלוגו הראשון.

אופיר הצטרפה לחדר באמצע נובמבר וכתבה חלקים מהלקוח כבר בשבוע הראשון, ויחד עם יוסף פתרה את אריזת המודל המקומי. ב־23.11.2025 היא הכריזה על הבטא הראשונה, עם הקרדיט ליאיר מהדבאופס שהרים אותה. המדידה שיוסף פרסם באותו יום הייתה כ־25 שניות עד הטוקן הראשון וכ־55 שניות עד סוף התשובה, ולכן הסטרימינג היה מהדברים הראשונים שנכנסו. ב־30.11 רופא ילדים כבר השתמש בכלי חי, והתלונה העיקרית הייתה האיטיות של האמבדינג.

בדצמבר המנוע התבגר. ב־4–6.12 עמית קפלן העלה מודל אמבדינג רב־לשוני ל־GPU, ואלון כתב מולו את הקוד. ב־8.12 יוסף הוסיף פאנל כלים פנימיים, וב־9.12 יאיר הקים סביבת show. ב־12.12 אלון הוסיף דירוג מחדש שנותן משקל לאירועים אחרונים, בעקבות פידבק מהמשתמשים. ב־13.12 נמצאה רשימת מודלים קשיחה בקוד; אלון קבע שבגרסה שרופאים רואים יופיעו רק מודלים שידוע שעובדים טוב, ויערה ביקשה נוהל כתוב להוספת מודל. ב־24.12 יאיר הגן על ענף הבטא בכל מאגרי הצוות. ב־30.12 נכנס לממשק עץ מטופל שיוסף בנה בכוונה כך שייראה כמו העץ של קמיליון, כי זה מה שרופא מכיר.

ינואר 2026 היה החודש של המחלקות. ב־13.1 מאיה הובילה את המפגשים הראשונים עם רופאים בילדים: שני רופאי זיהומים בבוקר ושני מתמחים בצהריים. מה שחזר היה זמני טעינה, תשובות שלקחו בין חצי דקה לשתיים וחצי, תאריכי בדיקות חסרים ושאלה קלינית אחת שנענתה לא נכון. הבקשה הראשונה מהשטח הייתה הצ׳אט בטלפון. ב־16.1 גיא אפיין את הלקוח כחלון צ׳אט קלאסי שיכול לבקש אישור לפעולות ולפתוח מסכי צד, ויערה קבעה שהצ׳אט צריך לעבוד מעל רוזטה. ב־20.1 החימום כבר היה נוהג עם שם, מחלקה אחרי מחלקה. ב־26.1 יוסף חיבר לצינור שני סוגי הערכה, שאלות אמריקאיות שנוצרות אוטומטית וזיהוי עובדות, ואלון הגדיר את גבול החימום: מחממים רק כמה מחלקות אשפוז, וכל מי שאושפז אי פעם אפשר לטעון. ב־27.1 טהר הצטרף עם נעילת הקלט ותוסף הפרומפטים, ושחר היה המעצב. ב־28.1 הייתה העלייה הראשונה לפרודקשן, אחרי שאלון ביקש אישור ומאיה נתנה אותו, ובאותו ערב הכלי התחיל להתפשט בשיתופים שאף אחד בצוות לא יזם.

פברואר היה שקט יחסית. ב־14.2 צוות המוצר דיווח שמטופלים לא נטענים, ואלון אבחן תוך חצי שעה ששרת האמבדינג לא עונה ולא האפליקציה. ב־22.2 אלון בחן ספריות ממשק צ׳אט לתמיכה בהפניות למקור. ב־24.2 רשימת המשימות היומית של יערה הפנתה את הבאגים והמשימות של הצ׳אט לאלון.

הפיצול: מרץ עד יוני 2026

במרץ נקבעו שני דברים שמעצבים את אליס עד היום. הראשון הוא מודל המשימות: ב־17.3 אלון הגדיר משימה כריצה של הסוכן בלוח זמנים, עם פרומפט מוגדר, מעל קבוצת מטופלים, וב־19.3 נוסף worker שבודק כל שלוש דקות אם יש משימות, וגם מחזור שחרורים שבועי. יוסף הציע אז להפריד בין ״מתי זה רץ״ ל״מה רץ״, כלומר שתזמון יהיה שכבה מעל פונקציה ולא עמודה בשורת המשימה. ההפרדה הזו חזרה באוקטובר בתכנון החימום.

השני הוא הפיצול. ב־26.3 עלתה הצעה להשתמש בבקאנד של Open WebUI כמאגר משותף להיסטוריה, לפידבק ולאנליטיקה, כי לפחות שלוש אפליקציות במרכז היו צריכות אותו דבר. אלון קבע שהמרכז בונה מערכת אחת משלו שתשרת את כולם, וב־28.3 סוכם על מאגר קוד נפרד ומסד נתונים משלו. ב־31.3 יאיר הציע את השם cwc-web, שינה את שם המאגר והכתובת באותו יום, והרים אותה בבטא עם Postgres משלה. מכאן יש מנוע ויש לקוח, שיצאו מאותו בסיס קוד מקורי, כך שהשכבות העמוקות בשניהם חוזרות לאב הטיפוס של 2025. בשבועות שלפני כן יוסף כתב את הבקאנד של הפרונטאנד עם סביבת Compose, סקריפט הקמה ובדיקות (19.3), ופתח את חיבור הפרונט (22.3).

באפריל הכול עבד מקצה לקצה. ב־14.4 אלון ביקש מיוסף את ההזדהות של המנוע, וב־15.4 היא נמסרה: התחברות, בדיקת הרשאות בבקאנד ונתיבים מוגנים. באותו יום הפרונט והמנוע דיברו לראשונה, עם טרייסים מקצה לקצה ב־Tempo. המדידה הראשונה הייתה כ־47 שניות עד שהזרם הראשון כתב משהו לרופא, לעומת כ־14 שניות על מחשב מפתח. בסוף אפריל יוסף שכתב את הטעינה ל־fan-out, וזמן טעינה של מטופל ירד לעשר עד עשרים שניות. ב־28.4 התחלקו התפקידים: אופיר התחילה לנהל את היום־יום של הלקוח, וכתיבת ההערכות עברה מיוסף לאלכס, אחרי שיחה ארוכה עם הדאטה סיינס, ורחל אישרה את זה באותו יום. ב־29.4 מחלקת ילדים ב׳ הייתה הראשונה שכל הצוות שלה עובד עם אליס.

מאי היה החודש של השימוש. ב־2.5 רופא ילדים ביקש מאליס עזרה בכתיבת מכתב שחרור, ועד 25.5 מכתבי שחרור באליס הפכו לברירת המחדל באונקולוגיה־המטולוגיה ילדים. ב־3.5 שיר פרסמה את רשימת המחלקות והמרפאות לחימום. ב־8.5 התברר שהמכתבים בקמיליון מחוברים לנתונים עצמם, ולכן אפשר להרכיב מכתב מהסעיפים שלו במקום לקרוא PDF, ובאותו בוקר ארבע מחלקות נכנסו לסבב חימום של כל שמונה שעות. גם ב־8.5 אלון כיבה את צינור האמבדינג וכתב במקומו וקטורים ריקים, עד החלטה. ב־10.5 וב־14.5 היו שתי סדנאות ״משתמשי כוכב״, ומה שהרופאים הגיבו אליו היה המהירות. באמצע מאי עקיפה של שלב ההזדהות מול רוזטה הורידה מטופל אחד מ־41 שניות לכשמונה. ב־20.5 אלון העביר את טריאז׳ הפידבק ואת השאלה מה חשוב קלינית לשיר ולמאיה. ב־27.5 נכנס מודל ה־artifacts: מזהה artifact-id שמתעד את כל מה שנמשך בטעינה ואת הקלט והפלט של כל ריצה, עם מצביעים ב־Postgres ותוצרים באחסון אובייקטים. באותו יום הלקוח עלה לפרודקשן בפעם הראשונה כשירות נפרד, עם ניתובי שיחות שמאפשרים לשתף שיחה ולחזור אליה ומצב mock לפיתוח. ב־31.5 מטופלים הפסיקו להיטען בפרודקשן, כי תלות של האחסון החזירה שגיאה במקום חריגה; התיקון היה נעילת גרסת ספרייה.

ביוני הצוות גדל והתהליכים התחזקו. ב־2.6 התחיל המעבר של הלקוח ל־Keycloak, וב־8.6 יוסף העלה את הכניסה החדשה לפרודקשן. ב־6.6 לוח הסיפורים המשותף פוצל לפי מוצרים, וממנו נולד לוח אליס. ב־10–11.6 הגנה חדשה ב־Wildfire, שמחזירה שגיאה ברורה מעל חמישה מכתבים, שברה את הבקשות של אליס לשלושים עד ארבעים מכתבים, והפתרון היה לפצל את הבקשה. ב־16.6 הייתה תקלה רחבה במסד הנתונים של קמיליון, ומשימות חימום הוקפאו. ב־18–20.6 אלון קבע שמיקרו־שירותים בארגון מדברים REST, ושהעבודה על אליס נכנסת דרך הספרינט, כי זה כבר פרויקט עם הרבה תוכן והרבה אנשים. ב־21.6 יערה חילקה את הפתוחים לפי מערכות: הלקוח לאופיר, המנוע לאלירן. ב־29.6 מאיה החזירה את שער השחרור למפתחים: מי שבדק, מעלה.

החימום, משלושה ניסיונות לתכנון משותף

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

החימום התחיל בינואר 2026: מחלקות אשפוז מסוימות נטענות שוב ושוב בסבבים. במאי ארבע מחלקות היו בסבב של כל שמונה שעות, וסבב כיסה בין 100 ל־300 מטופלים. ביוני התחילו הכשלים: ב־10.6 סבב שלם נכשל, ב־16.6 משימות הוקפאו בגלל עומס על הרפליקה של קמיליון, וב־18.6 כל החימומים בבטא נכשלו. ב־24.6 אלירן הפעיל מסלול מקביל משלו, חימום של מרפאות לפי תור QFlow: שבע מרפאות, 350 מטופלים בשעה ורבע עם 13 כשלים, והריצה עברה לשלוש וחצי בלילה. ב־6.7 אלון פתח את השער לפרודקשן אחרי שראה סבב אחד עובר בבטא.

בתחילת יולי הצוות התיישב על תכנון חדש, חימום דיפרנציאלי: לא לטעון מחדש מחלקה שלמה, אלא רק את מה שהשתנה מאז הטעינה הקודמת. ב־16.7 אלירן הציג שתי הוכחות היתכנות, אחת שלו שנשענה על RabbitMQ ואחת של יוסף שלא נזקקה לו, ונבחרה השנייה. באותו יום יוסף יצר שירות בשם heating לצד משימה ב־WSP. ב־21.7 החימום הדיפרנציאלי נכתב מאפס, וב־23.7 הוא רץ על ארבע מחלקות בסביבת show, עם דלי אחסון משלו, רשימת משימות ודשבורד ב־Grafana. ב־22.7 הארכיטקטורה אישרה אותו לשימוש, והשאירה פתוחה שאלה שעדיין לא הוכרעה: האם החימום בכלל שייך לתוך אליס, או לשכבה משותפת של הפלטפורמה. ההתנגדות הכתובה הראשונה להכנסת לוגיקה של נתונים חמים לתוך אליס נרשמה כבר ב־10.5.

ב־30.7 חימום המרפאות לפי שירותי טיפול הגיע לבטא, ובאותו ערב פורסם שבמנגנון הישן עשרה עד חמישה עשר אחוז מהמטופלים נכשלים בחימום, בעיקר בגלל פודים של רוזטה שנגמר להם הזיכרון. ב־12.8 חצי מהמטופלים לא חוממו בלילה אחד, כי מספר המופעים של שכבת הנתונים הוגבל מ־50 לעשרה כדי להגן על קמיליון. ב־19.8 יאיר סיים את בקשת המיזוג של החימום אחרי מפגש עבודה עם יוסף, והדבאופס התנו פריסה רחבה במטריקה שאפשר לבצע עליה autoscaling. ב־20.8 החימום החדש עלה לבטא. ב־24.8 נמצאה מגבלה שגויה, שבגללה רק חמישה מטופלים נמשכו בזמן ש־25 workers התנגשו על נעילות; אחרי התיקון ההתנגשויות נעלמו.

ב־8–9.9 אלירן תיאר את המצב: מחלקה אחת רצה בבטא תחת שני המנגנונים, ושלוש תחת הישן; הנתונים מתרעננים כל רבע שעה, וסעיפי המכתבים כל 24 שעות. הוא אמר שאינו יכול עדיין לאשר שהמנגנון החדש עובד טוב, כי השוואת השלמות מול הישן לא הושלמה, והוא גם לא החזיק בקנה מידה. מאיה פתחה משימה כדי שיהיה אפשר לתחקר אותו. לכן המנוע עלה לפרודקשן ב־14.9 כשהחימום החדש כבוי. ב־9.9 אלירן ויוסף החליטו לתכנן אותו מחדש.

גרסה 3 היא תכנון משותף של אלירן ויוסף. אלירן הציג אותה לאלון, ליערה וליוסף ב־4.10: SDK בתוך WSP למשימות מחזוריות; הביצוע עובר מהשירות heating לשירות שנקרא Lifecycle, שמחזיק את מצב המטופל, את השייכות לקוהורטים ואת ה־snapshot; הטעינה עוברת ל־Digest, שמקבל את המידע מרוזטה והופך אותו לאירועים; ויש משימה לכל מטופל. ב־6.10 העבודה חולקה, יוסף על Lifecycle ואלירן על Digest. ב־7.10 יוסף מסר ארבעה commits: Lifecycle כמשימות רקע מחזוריות לכל snapshot רשום, handler ב־Digest עם mock לסקירה, תאימות טיפוסים ב־WSP וסביבת Compose מקומית שאפשר לשחזר. הם נבדקו מקומית בלבד ולא מוזגו.

בשבוע שאחרי זה התכנון התחדד בכמה שיחות ארוכות, והתקבעו כמה עקרונות. טעינה לא מחייבת חימום: אפשר לטעון מטופל, למשל ממסך ״המטופלים שלי״, בלי להכניס אותו לסבב קבוע, ולכן שמירת ה־snapshot וניהול המצב מופרדים מההחלטה לחמם. בקשות ותשובות עוברות דרך התור. בשלב הזה המשימות נשארות בתוך Digest עם הפרדה פנימית ולא מתפצלות לעוד שירותים. שלושת הקוהורטים הקיימים מסתכלים על אותו snapshot ואותה טבלת אירועים, גם אם לא כולם צריכים את אותן פעולות; אצל המרפאות, למשל, אין צורך ברענון. ב־13.10 סוכמו גם תנאי הקבלה: השוואת ספירת אירועים לא מספיקה, וצריך שתי בדיקות. האחת, שהטעינה החדשה מחזירה בבטא את אותו תוכן כמו הקיימת. השנייה, שרצף של רענונים מצטבר בסופו לאותו תוכן שטעינה מלאה מחזירה. ההשוואה היא לפי תאריך, סוג ותוכן ולא לפי מזהים שנוצרים דינמית, קוד הטעינה הישן נשמר כבסיס להשוואה, וההרצה היא על כמה מחלקות ועל נתונים חדשים. ב־18.10 נוספו תפוגה להודעות של משימות מחזוריות, בנפרד מה־timeout של מי שמחכה לתשובה, ומגבלת ניסיונות חוזרים שלא מריצה מחדש את הבקשה המקורית.

איך זה עובד היום ומי משתמש

הנתונים הקליניים מגיעים לאליס דרך רוזטה. קמיליון, מטוויז׳ן ו־QFlow לא נקראים מהמנוע ישירות, עם חריג אחד: השליפה של רשימת המאושפזים במחלקה, שהחימום נשען עליה, נכתבה במקור מול קמיליון, והתאמתה לרוזטה עדיין פתוחה. מסלול הטעינה הוא בקשת טעינה ל־Digest, ו־worker שבונה את נתוני המטופל משאילתות GraphQL לרוזטה, עם ארבעה ניסיונות לכל פעולה, וטבלאות אירועים ומטא־דאטה לכל מטופל ב־LanceDB. הטבלאות יושבות באחסון אובייקטים תואם S3 ולא בזיכרון הפוד. אחרי זה נוצר רקע מסוכם, מתפרסם מצביע ״פעיל״, ומסלול התשובות קורא את המצביע, את הרקע ואת הטבלאות וכותב רשומת ריצה. ההזדהות עוברת דרך Keycloak, המודלים דרך LiteLLM, וההתחברות בפרודקשן נשענת על MongoDB. הסביבות הן show, beta ו־prod, וקידום בין סביבות נעשה במיזוג, עם ArgoCD ו־Helm מתחת. מאז 7.7 ענף ברירת המחדל לבקשות מיזוג בשני המאגרים הוא beta ולא main, כדי ששינוי לא ינחת ב־main בטעות.

שני דברים במנוע כדאי להכיר. הראשון: צינור האמבדינג כבוי מאז 8.5, והאחזור רץ על השאילתה הקצרה שהמודל מעביר לכלי של LanceDB, ולא על השאלה של המשתמש. השני: הסוכן כן יכול לעשות עוד סבב חיפוש כשחסר לו מידע, אבל לפי מדידה מ־26.8 זה קורה בערך בריצה אחת מתוך 300. מכאן נפתחה משימה על חוסר עקביות באחזור, ובאותו יום נקבע שאין משנים את הפרומפט של אליס בלי הארכיטקט.

גם הקיץ הוסיף יכולות ושגרות. ב־22.7 הגיעה לבטא ספרות מצוטטת מ־Clinical Key: הצד של המנוע, התצוגה של טהר, וההערכה אצל אלכס. אלון הסביר אז שהסוכן פונה לספרות רק כשמבקשים המלצה או אבחנה, ושהסיבה שצ׳אטים אחרים מעל תיק לא עושים את זה היא כלל אבטחה שאוסר לחשוף נתוני תיק לאינטרנט. ב־8.7 אליס הוצגה על אייפדים באירוע של המרכז, לצד SmartER. ב־11.8 עלייה של המנוע לפרודקשן לא הביאה דבר, כי לא הוגדר לו לקוח הזדהות בסביבת הפרודקשן; ההגדרה נוספה ועברה דרך הבטא, ומאז שינויי תשתית עוברים סקירה לפני מיזוג. ב־20.8 קרס צומת של MongoDB, ומכיוון שהוא משרת את ההתחברות בפרודקשן, הלקוח כולו נפל לכעשרים דקות עד שיאיר וקווין הפעילו אותו מחדש. ב־27.8 התחיל הדיילי של אליס למיין את הדחופים לפי בעלים, ובאותו יום אזהרות של זרם שנסגר בפרודקשן פתחו שלושה ליקויים בתצפית: שמירת טרייסים, חיבור המנוע ללוגר המרכזי, ושימוש באזהרות במקום חריגות. ב־7.9 אלכס קבע שניתוח העלויות של ההערכה נמצא אצל הדאטה סיינס ולא אצל המפתחים. ב־9.9 אלון קבע שהלוח מנהל משימות ולא מתעד את המערכת.

הגרסאות שרצות היום עלו לפרודקשן ב־14.9 (המנוע) וב־17.9 (הלקוח, בהכרזה של אופיר). המשתמשים הם רופאים: ילדים, פנימית, קרדיולוגיה, שיקום נשימתי, אורולוגיה ומרפאות חוץ חוממו בנקודות שונות בזמן. הדרך של רופא לאליס עוברת דרך Citrix וחנות האפליקציות של המרכז, בלי קישור שמור. ב־28.7 הגיעו ל־550 שאלות ביום, בעיקר ממשתמשים חדשים. ב־5.8 הפרומפט הנפוץ ביותר לא היה ברירת המחדל: 350 שימושים בחודש אצל כמאה רופאים. בתחילת אוקטובר אונקולוגית בכירה העבירה יום שלם במרפאה עם אליס, וביקשה לטעון את כל המטופלים של היום מראש ולעבור למצב פרואקטיבי, וזה בדיוק מה שהחימום וה־Lifecycle אמורים לאפשר. מעבר לרופאים משתמשים באליס גם המוצר והדאטה סיינס, שמתייגים ומעריכים את התשובות. צינור ההערכה האוטומטי בודק נאמנות למקור, דיוק של עובדות אטומיות ועלות, ורץ אחרי פריסה. קו ההערכה עצמו ותיק מאליס: הוא התחיל ב־2024 בבקשה לפלטפורמה למדידת המודל, ומאור סגי החזיק בו את המדדים ואת סכמות השאלות והתשובות לאורך 2025.

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

אוקטובר 2026: מה קורה עכשיו

החימום אצל אלירן. ב־12.10 הוא הציע לממש גם את ה־Lifecycle, ויוסף הסכים, כך שהמימוש כולו אצל אדם אחד ויוסף נשאר שותף בתכנון ובאינטגרציה. ב־15.10 אלירן אמר שהוא כותב את ה־Lifecycle מחדש. אצל יוסף נשארו שני דברים: איחוד השאילתות של החימום ושל Digest, שעליו נפתחה בקשת מיזוג ב־15.10 והיא ממתינה לסקירה, והתאמת השליפה של המאושפזים לרוזטה. בלוח, המשימה עברה לספרינט 34, עד 30.10. בדיקת שלמות הנתונים האוטומטית, שהיא גם מבחן הקבלה של החימום, תקועה. הדשבורד וההתראות של החימום רשומים על יוסף ועוד לא התחילו.

בנתונים, יוסף ושרון בררו ב־13–15.10 כשל שנגרם מכך שאותה מדידה, משקל או גובה, מגיעה גם ישירות וגם דרך סעיפי מכתב. כשהעץ משוטח לאירועים, נוצרים שני אירועים עם אותו מפתח ותוכן שונה. התיקון המצומצם הכניס אזהרה במקום שגיאה; השאלה העקרונית, אם להפריד בין הייצוגים או לאחד אותם, עוד פתוחה. אירוע ייעודי למשקל, לגיל ול־BMI נכנס לבטא באוקטובר. אחרי תיקונים שנעשו בחול המועד, הכשלים בטעינה בפרודקשן ירדו בצורה ניכרת. במקביל, ב־5.10 שרון מצאה שכשליש מהתשובות ״הריקות״ שאספה שיר הן משתמשים שלחצו עצור, פעולה שלא מגיעה ללוגר, ונפתחה משימה להעביר שגיאות פרונט ללוגים של השרת.

כיוון המנוע פתוח. ב־14.10 אלון הודיע בקבוצה שאחרי כמה סבבי הערכה עם אלכס הם ינסו להעביר את מודל הבסיס של אליס ל־gpt-5.6-Terra, שלפי המדידות שלהם זול בערך בחצי, מהיר יותר וקיבל ציון גבוה יותר ב־HealthBench. מעבר לזה אין תוכנית מאושרת לשנה הבאה: האם המנוע נשאר צ׳אט מעל תיק עם משימות לצידו, האם הוא יבצע פעולות מעל קמיליון, ואיזה חלק מהיכולות שלו יעבור לשכבה המשותפת. בצוות נדון גם כלי לבניית קוהורטים ומבחינים שיוסף בנה לאחרונה. ב־18.10 גיא הציע בפגישה לפרק אותו לרכיבי פלטפורמה: מקום שבונה מבחינים, קוד ופרומפטים, בנפרד מהקוהורט, מהטריגר ומהריצה, שאליס, SmartER ו־AI Flows יוכלו להשתמש בהם. הדיון הזה לא הוכרע.

בעיות פתוחות, והערכת הסוכן

הערכת הסוכן: הדפוס שחוזר בהיסטוריה של אליס הוא שהמוצר רץ לפני התשתית שלו. השימוש בשטח, ממכתבי השחרור ועד 550 שאלות ביום, צמח בלי תוכנית, ובכל פעם התשתית, הטעינה, החימום והתצפית, הייתה צריכה להדביק אותו. באוקטובר 2026 הצוואר הוא לא הסוכן אלא הנתונים שמתחתיו: האם הם שלמים, טריים, ואפשר לראות מתי הם לא.

המלצת הסוכן: להתחיל מבדיקות ההשוואה ושלמות הנתונים שסוכמו ב־13.10, כי הן התנאי להדליק את החימום ולפתוח מחלקות עם אליס בתוך SmartER, וגם ההגנה הטובה ביותר מפני שינוי ברוזטה שישבור את אליס בשקט. מיד אחריהן דשבורד והתראות לחימום, כדי שמי שקם בבוקר לכשל ידע איפה לחפש. רק אחרי שאלה קיימים כדאי לפתוח מחדש את שאלת המקום של החימום, את האחזור ואת כיוון המנוע, ולהכריע בהן יחד עם החלפת המודל, כי שלושתן משנות את אותה שכבה.

חזרה לתשובות

רוזטה ו־Wildfire · מערכת SmartER ו־TMR · הפלטפורמה: הזדהות, מודלים, תצפית וכלי קוד · הצוותים והתפקידים · מה קורה עכשיו ומה פתוח (אוקטובר 2026)