דילוג לתוכן
תיעוד Nodaro
תיעודמדריך הרכיביםמודליםתבניותסוכני AI (MCP)מפתחיםאירוח עצמימחקרהשוואות
CLI

פלט וקודי יציאה

איך לקרוא את הפלט של ה-CLI של Nodaro כטבלה או כ-JSON, לחכות לסיום הרצה עם ‎--watch ולפעול בסקריפט לפי קודי היציאה של כשל, ביטול והמתנה לבדיקה.

הפלט של ה-CLI של Nodaro קריא בטרמינל כברירת מחדל, וקריא למכונה עם --json. עם --watch, פקודת הרצה מחכה עד שההרצה מסתיימת ומדווחת על התוצאה בקוד היציאה שלה, כך שסקריפט shell או משימת CI יכולים לפעול לפיו.

טבלאות ו-JSON

בלי --json, פקודת list מדפיסה טבלת ASCII קטנה, ופקודת get מדפיסה JSON מעוצב. כל פקודת קריאה מקבלת את הדגל --json, ואז מדפיסה את המטען המלא, מוכן ל-jq:

nodaro projects list --json | jq '.[].id'
nodaro workflows run wf_abc --json

המתנה לסיום ההרצה עם --watch

פקודת הרצה מסתיימת ברגע ש-Nodaro מקבל את ההרצה. הוסיפו --watch כדי להמשיך לבדוק את הסטטוס עד שההרצה מסתיימת:

nodaro workflows run wf_abc --watch
nodaro nodes run generate-image --param prompt="a snow leopard" --watch --poll-interval 1000

הדגל --watch עובד בפקודות ההרצה, כגון workflows run, apps run ו-nodes run, בפקודה executions get ובפקודות היצירה של קבוצות הפקודות נכסים ומדיה. הדגל --poll-interval קובע את הזמן בין שתי בדיקות סטטוס, באלפיות שנייה.

קודי יציאה

קודמשמעות
0הצלחה.
1שגיאת הרשאה, משאב שלא נמצא, ארגומנט שגוי או שגיאת רשת.
2ההמתנה עם --watch הסתיימה, וההרצה נכשלה.
3ההמתנה עם --watch נעצרה כי המשימה ממתינה לבדיקה (pending_review). אדם מחליט עכשיו; זה לא כשל.
130ההמתנה עם --watch הסתיימה, וההרצה בוטלה.

עם --json, ה-CLI מדפיס את המטען ומסיים בלי לקבוע את הקודים 2, 3 ו-130. במצב הזה, פעלו לפי השדה status בפלט:

status=$(nodaro workflows run wf_abc --watch --json | jq -r '.status')

כשהאסימון חסר, פג תוקפו או לא תקין, ה-CLI מודיע על כך, מציע להריץ nodaro auth login ויוצא עם הקוד 1. בשגיאות API אחרות, ה-CLI מדפיס את ההודעה ואת קוד השגיאה. הקודים מפורטים בדף ה-API שגיאות.

כשמשימה ממתינה לבדיקה

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

הסטטוס לא משתנה מעצמו, ולכן הדגל --watch מפסיק לבדוק אותו, מדפיס awaiting review (a human decision is pending; not a failure) (ממתינה לבדיקה: אדם צריך להחליט, וזה לא כשל) ויוצא עם הקוד 3.

  • אל תריצו את הבקשה שוב. גם בקשה כפולה תמתין לבדיקה.
  • בדקו את המשימה מאוחר יותר עם nodaro jobs get <id>. המשימה מסתיימת באחד משלושה סטטוסים:
סטטוסמשמעות
completedהתוצאה אושרה ושוחררה.
failedהתוצאה נדחתה. השדה error_hint.kind הוא policy-block, והשדה error_hint.reason הוא הטקסט שאפשר להציג למשתמש שלכם.
cancelledהמשימה בוטלה.
nodaro nodes run generate-image --param prompt="..." --watch
case $? in
  0) echo "released" ;;
  3) echo "awaiting review, check back later" ;;
  *) echo "failed" ;;
esac

שאלות נפוצות

איך מקבלים מה-CLI של Nodaro פלט קריא למכונה?

הוסיפו את הדגל ‎--json לפקודת קריאה. בלעדיו, פקודות list מדפיסות טבלה קטנה, ופקודות get מדפיסות JSON מעוצב.

מה המשמעות של קוד היציאה 3 ב-CLI של Nodaro?

קוד היציאה 3 אומר שהמשימה ממתינה לבדיקה. העבודה הסתיימה, והקרדיטים נשארים משוריינים בזמן שאדם מחליט אם לשחרר את התוצאה. זה לא כשל, ולכן אל תריצו את הבקשה שוב. בדקו את המשימה מאוחר יותר עם הפקודה nodaro jobs get.

למה הסקריפט שלי לא מקבל את קוד היציאה 2 כשהרצה נכשלת?

עם הדגל ‎--json, ה-CLI מדפיס את התוצאה ומסיים בלי לקבוע את קודי היציאה 2, 3 או 130. במקום זאת, בדקו את השדה status בפלט ה-JSON.

איך גורמים למשימת CI לחכות להרצה של Nodaro?

הוסיפו את הדגל ‎--watch לפקודת ההרצה. ה-CLI בודק את הסטטוס מדי כמה שניות עד שההרצה מסתיימת, ויוצא עם הקוד 0 כשהיא מצליחה, 2 כשהיא נכשלת ו-130 כשהיא מבוטלת, כך שהשלב הבא יכול להיות תלוי בתוצאה.

עודכן לאחרונה

בדף הזה