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

אפליקציות ורכיבים שמורים

מצאו אפליקציות ורכיבים שמורים ב-Nodaro, בדקו את הקלטים שלהם והריצו אותם דרך עוזר AI, כולל ניסיון חוזר להרצות שנכשלו, עם run_app ו-retry_app_run.

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

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

list_apps

מחפש באפליקציות שפורסמו: בשוק הציבורי, או באפליקציות שלכם.

הרשאה: apps:read. קרדיטים: חינם.

פרמטרסוגהערות
scopestringpublic (ברירת המחדל) לשוק, או mine לאפליקציות שלכם.
searchstringנושא לחיפוש, עד 100 תווים.
categorystringקטגוריה, עד 50 תווים.
limitintegerמ-1 עד 50.
cursorstringה-cursor מהעמוד הקודם.

מה חוזר: האפליקציות שמתאימות לחיפוש, עם המזהים בכתובת (slug) שלהן. השדה estimated_credits של כל אפליקציה הוא המחיר הרשום שלה. כשהמחיר נקבע לפי האורך של הקלטה שנותנים לאפליקציה, כגון רינדור של פרק שלם ברכיב החלת רשימת עריכה, estimated_credits הוא החלק הקבוע ו-per_minute_credits הוא הקרדיטים לכל דקה של ההקלטה. כשלאפליקציה יש קלט רשימה שממלאים, per_item_credits הוא מה שמוסיף כל פריט מעבר לפריטים שהיוצר שמר. כששני השדות האלה לא רלוונטיים, הערך שלהם הוא 0 או שהם חסרים.

המחיר הרשום הוא טווח. השדות שלמעלה הם מחיר ה״החל מ״, בהגדרות השמורות של האפליקציה. השדות max_estimated_credits, max_per_minute_credits ו-max_per_item_credits הם מחיר ה״עד״: הסכום הגבוה ביותר שהרצה יכולה לעלות, בכל הבחירות שעומדות לרשות מי שמשתמש באפליקציה. הם מופיעים רק כשהם שונים ממחיר ה״החל מ״. באפליקציה שפורסמה לפני שהטווח נוסף, הם מופיעים רק אחרי הפרסום הבא שלה.

כשמחיר רשום כולל קריאה ל-LLM שמחויבת לפי שימוש, בשורה מופיע estimated_credits_is_estimate: true. המספר הוא אז המחיר של קריאה טיפוסית למודל, וההרצה מחויבת לפי הטוקנים שהקריאה השתמשה בהם בפועל, ולכן הציגו את המחיר כ-≈N. במחיר קבוע השדה לא מופיע.

get_app_inputs

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

הרשאה: apps:read. קרדיטים: חינם.

פרמטרסוגהערות
slugstringנדרש. המזהה בכתובת של האפליקציה, למשל photo-restoration.

מה חוזר: ה-slug, ה-name וה-description של האפליקציה, ופריט אחד לכל קלט, עם ה-key, ה-label וה-type שלו (image, video, audio, text, select, number, boolean, list או color), ציון אם הוא required, וה-options של קלט בחירה.

  • מחוון שהאפליקציה חושפת, כגון יציבות של רכיב טקסט לדיבור, טמפרטורה של LLM או משך, הוא type: "number" עם ה-min, ה-max וה-step של המחוון עצמו. הכלי run_app מקבל בשבילו מספר או מחרוזת מספרית.
  • הגדרה מהירה שהאפליקציה חושפת, כגון המודל, הרזולוציה, האורך, יחס הגובה־רוחב או הבחירה טיוטה של רכיב, מקבלת סוג לפי סוג הערכים שלה. היא select שה-options שלו הם הערכים שלה, number עם min ו-max להגדרה שמקבלת כל ערך בטווח, או boolean, כגון טיוטה או כלי (ללא שירה). כשהאפשרויות תלויות במודל של הרכיב, options מפרט את הערכים של כל המודלים, וה-description מציין זאת. בחרו ערך שהמודל של הרכיב מקבל. בקלטים האלה, run_app הופך מחרוזת מספרית למספר, ו-"true" או "false" לערך בוליאני. ערך שלא נמצא ברשימה קבועה נדחה עם 400 validation_error.
  • קלט של רכיב כתובת וידאו הוא type: "video" ו-required: true. הערך שלו הוא קישור לסרטון: הדף של הסרטון, או קישור ציבורי אחר באינטרנט. ערך שהוא לא קישור לאינטרנט נדחה עם 400 locked_field. מאתר ש-Nodaro קורא בו קודם את אורך הסרטון, סרטון של 4 דקות או יותר יורד רק כקטע שאתם מציינים ב-inputOverrides, עם sectionStartSec ו-sectionEndSec ברכיב. הרצה בלי הקטע נדחית לפני כל חיוב.

run_app

מריץ אפליקציה שפורסמה. אתם משלמים את הקרדיטים של ההרצה.

הרשאה: workflows:execute. קרדיטים: הקרדיטים של הרכיבים שרצים בתוך האפליקציה.

פרמטרסוגהערות
slugstringנדרש. המזהה בכתובת של האפליקציה.
inputsobjectאובייקט שטוח שהמפתחות שלו הם המפתחות של הקלטים מ-get_app_inputs. השמיטו אותו כדי להשתמש בערכי ברירת המחדל.
inputOverridesobjectמתקדם. שדות גולמיים של רכיבים, לפי מזהה רכיב ושם שדה, שמוחלים מעל inputs, למשל { "n1": { "promptPrefix": "..." } }. שדה שמוגדר ל-null מתרוקן בהרצה הזו: הרכיב רץ בלי ערך בשדה, ולא עם הערך שהיוצר שמר.
client_request_idstringאסימון ניסיון חוזר: בין 8 ל-128 תווים של אותיות, ספרות ו-_ - . :. אם אתם מנסים שוב אחרי פסק זמן, שלחו את אותו ערך, כדי ש-Nodaro לא יתחיל את ההרצה ולא יחייב אותה פעמיים.

מה חוזר: מזהה הרצה, וה-runId של הרצת האפליקציה. בדקו את מצב ההרצה עם get_app_run. כשההרצה נכשלת, הכלי retry_app_run מקבל את ה-runId.

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

retry_app_run

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

הרשאה: workflows:execute. קרדיטים: השלבים שרצים שוב, ועוד תוספת המחיר של היוצר על האפליקציה.

פרמטרסוגהערות
slugstringנדרש. המזהה בכתובת של האפליקציה.
run_idstringנדרש. המזהה של הרצת האפליקציה: ה-runId מ-run_app, או המזהה שמופיע ברמז להמשך ההרצה.
versionintegerגרסת האפליקציה שאתם מצפים שהניסיון החוזר יריץ. ברירת המחדל היא הגרסה האחרונה של האפליקציה. שלחו את הגרסה של ההרצה עצמה כדי להמשיך עליה אחרי שהאפליקציה השתנתה.
confirmbooleanהערך true רק אחרי שהקרדיטים שבאומדן אושרו בשיחה הזו.

מה חוזר: בלי confirm, אומדן מחיר, ושום דבר לא מתחיל. באומדן נמצאים השלבים שירוצו שוב, המחיר (estimatedCredits, כולל תוספת המחיר של היוצר), reusedClips ו-sufficient. השדה sufficient מציין אם היתרה והקרדיטים לאפליקציות מכסים את הניסיון החוזר. השדה appCreditsAllowance מופיע כשהקרדיטים לאפליקציות הם מה שעוצר את הניסיון החוזר, והאומדן מציין זאת. הציגו את האומדן, וקראו שוב עם confirm: true רק אחרי שהוא אושר. אז הכלי נותן אומדן נוסף, שגם בודק את ההרצה, ומתחיל את הניסיון החוזר. הכלי מחזיר את מזהה ההרצה: בדקו את הסטטוס שלה מדי כמה שניות עם get_app_run.

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

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

delete_app_run

מעביר הרצת אפליקציה לארכיון שלכם. אפשר לשחזר אותה או למחוק אותה לצמיתות בכתובת app.nodaro.ai/archived-runs. אפשר למחוק הרצה לצמיתות רק אחרי שהיא הסתיימה או נעצרה.

הרשאה: workflows:execute. קרדיטים: חינם.

פרמטרסוגהערות
slugstringנדרש. המזהה בכתובת של האפליקציה, החלק האחרון בכתובת ה-URL שלה.
runIdstringנדרש. מזהה ההרצה.

מה חוזר: אישור.

list_components

מחפש ברכיבים שמורים שפורסמו: בשוק הציבורי, או ברכיבים השמורים שלכם. כדאי להשתמש בו כשמבקשים רכיב שמור בשמו, או כשמבקשים פייפליין של כמה שלבים שתואם רכיב שמור מוכר.

הרשאה: workflows:read. קרדיטים: חינם.

פרמטרסוגהערות
scopestringpublic (ברירת המחדל) לשוק, או mine לרכיבים השמורים שלכם.
searchstringנושא לחיפוש, עד 100 תווים.
limitintegerמ-1 עד 50.
cursorstringה-cursor מהעמוד הקודם.

מה חוזר: הרכיבים השמורים שמתאימים לחיפוש, עם המזהים בכתובת שלהם. בכל אחד מהם נמצאים estimated_credits, per_minute_credits ו-per_item_credits, ושדות ה-max_ המתאימים, באותה משמעות כמו ב-list_apps. בשורה שיש בה אומדן של קריאה ל-LLM שמחויבת לפי שימוש מופיע estimated_credits_is_estimate: true, כמו ב-list_apps.

get_component_inputs

מחזיר את הקלטים של רכיב שמור. קראו לכלי לפני run_component כדי לגלות את המפתחות של הקלטים.

הרשאה: workflows:read. קרדיטים: חינם.

פרמטרסוגהערות
component_idstringנדרש. המזהה בכתובת של הרכיב השמור.

מה חוזר: פריט אחד לכל קלט, עם ה-key, ה-label וה-type שלו, וציון אם הוא required.

run_component

מריץ רכיב שמור שפורסם.

הרשאה: workflows:execute. קרדיטים: הקרדיטים של הרכיבים שרצים בתוך הרכיב השמור.

פרמטרסוגהערות
component_idstringנדרש. המזהה בכתובת של הרכיב השמור.
inputsobjectאובייקט שטוח שהמפתחות שלו הם המפתחות של הקלטים מ-get_component_inputs. השמיטו אותו כדי להשתמש בערכי ברירת המחדל.
client_request_idstringאסימון ניסיון חוזר: בין 8 ל-128 תווים של אותיות, ספרות ו-_ - . :. אם אתם מנסים שוב אחרי פסק זמן, שלחו את אותו ערך.

מה חוזר: מזהה משימה. כשהמשימה מסתיימת, הפלטים של הרכיב השמור נמצאים ב-output_data שלה. בלקוחות עם MCP Apps, כרטיס המשימה מציג את הפלטים אחד מתחת לשני.

שאלות נפוצות

מה ההבדל בין אפליקציה לרכיב שמור?

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

מי משלם על הרצת אפליקציה שעוזר AI התחיל?

אתם משלמים על הרצת אפליקציה שעוזר AI התחיל. הכלים run_app ו-run_component מוציאים קרדיטים מהחשבון שלכם, במחירים של הרכיבים שבתוך האפליקציה או הרכיב השמור.

האם עוזר AI יכול לשנות הגדרות מוסתרות של אפליקציה?

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

איך עוזר AI מנסה שוב הרצת אפליקציה שנכשלה?

העוזר קורא לכלי retry_app_run עם המזהה בכתובת של האפליקציה ועם מזהה ההרצה. הקריאה הראשונה רק מחזירה את השלבים ואת אומדן המחיר. אחרי שאתם מאשרים, העוזר קורא שוב עם confirm true, ורק השלבים שההרצה לא השלימה רצים, ורק עליהם משלמים.

איך מוחקים הרצת אפליקציה דרך העוזר?

קראו לכלי delete_app_run עם המזהה בכתובת של האפליקציה ועם מזהה ההרצה. ההרצה עוברת לארכיון שלכם, ושם אפשר לשחזר אותה או למחוק אותה לצמיתות.

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

בדף הזה