mirror of
https://github.com/trustgraph-ai/trustgraph.git
synced 2026-07-09 05:12:12 +02:00
update more languages
Signed-off-by: Alex Jenkins <kjenkins60@gatech.edu>
This commit is contained in:
parent
835acaa70e
commit
16c2f12a54
249 changed files with 117186 additions and 186 deletions
|
|
@ -2,7 +2,11 @@
|
|||
|
||||
## סקירה כללית
|
||||
|
||||
<<<<<<< HEAD
|
||||
מפרט זה מתאר את יישום הפרמטרים הניתנים להגדרה עבור תבניות זרימה ב-TrustGraph. פרמטרים מאפשרים למשתמשים להתאים אישית את פרמטרי המעבד בזמן הפעלת הזרימה על ידי מתן ערכים המחליפים את מקומות הפרמטרים בהגדרת תבנית הזרימה.
|
||||
=======
|
||||
מפרט זה מתאר את יישום הפרמטרים הניתנים להגדרה עבור תבניות זרימה ב-TrustGraph. פרמטרים מאפשרים למשתמשים להתאים אישית את פרמטרי המעבד בזמן הפעלת הזרימה על ידי מתן ערכים שמחליפים את מקומות הפרמטרים בהגדרת תבנית הזרימה.
|
||||
>>>>>>> 82edf2d (New md files from RunPod)
|
||||
|
||||
פרמטרים פועלים באמצעות החלפת משתנים בתבניות בפרמטרי המעבד, בדומה לאופן שבו משתנים `{id}` ו-`{class}` פועלים, אך עם ערכים שמסופקים על ידי המשתמש.
|
||||
|
||||
|
|
@ -10,7 +14,11 @@
|
|||
|
||||
1. **בחירת מודל**: לאפשר למשתמשים לבחור מודלים שונים של LLM (לדוגמה, `gemma3:8b`, `gpt-4`, `claude-3`) עבור מעבדים.
|
||||
2. **תצורת משאבים**: התאמת פרמטרי מעבד כגון גודל חבילות, גודל אצווה ומגבלות מקביליות.
|
||||
<<<<<<< HEAD
|
||||
3. **כוונון התנהגות**: שינוי התנהגות המעבד באמצעות פרמטרים כגון טמפרטורה, מקסימום טוקנים או ספי תאחזור.
|
||||
=======
|
||||
3. **כוונון התנהגות**: שינוי התנהגות המעבד באמצעות פרמטרים כגון טמפרטורה, מקסימום טוקנים או ספי הצעת מחיר.
|
||||
>>>>>>> 82edf2d (New md files from RunPod)
|
||||
4. **פרמטרים ספציפיים לסביבה**: הגדרת נקודות קצה, מפתחות API או כתובות URL ספציפיות לאזור עבור כל פריסה.
|
||||
|
||||
## מטרות
|
||||
|
|
@ -21,16 +29,28 @@
|
|||
**החלפת תבניות**: להחליף בצורה חלקה את מקומות הפרמטרים בפרמטרי המעבד.
|
||||
**אינטגרציה עם ממשק משתמש**: לאפשר הזנת פרמטרים באמצעות ממשקי API וממשקי משתמש.
|
||||
**בטיחות סוגים**: להבטיח שטיפוסי הפרמטרים תואמים לטיפוסי פרמטרי המעבד הצפויים.
|
||||
<<<<<<< HEAD
|
||||
**תיעוד**: סכימות פרמטרים המתועדות באופן עצמי בתוך הגדרות תבניות הזרימה.
|
||||
=======
|
||||
**תיעוד**: סכימות פרמטרים המתועדות באופן עצמי בתוך הגדרות תבניות זרימה.
|
||||
>>>>>>> 82edf2d (New md files from RunPod)
|
||||
**תאימות לאחור**: לשמור על תאימות לתבניות זרימה קיימות שאינן משתמשות בפרמטרים.
|
||||
|
||||
## רקע
|
||||
|
||||
<<<<<<< HEAD
|
||||
תבניות זרימה ב-TrustGraph תומכות כעת בפרמטרי מעבד שניתן להכיל ערכים קבועים או מקומות שמירת פרמטרים. זה יוצר הזדמנות להתאמה אישית בזמן ריצה.
|
||||
|
||||
פרמטרי מעבד קיימים תומכים ב:
|
||||
ערכים קבועים: `"model": "gemma3:12b"`
|
||||
מקומות שמירת פרמטרים: `"model": "gemma3:{model-size}"`
|
||||
=======
|
||||
תבניות זרימה ב-TrustGraph תומכות כעת בפרמטרי מעבד שניתן להכיל ערכים קבועים או מקומות פרמטרים. זה יוצר הזדמנות להתאמה אישית בזמן ריצה.
|
||||
|
||||
פרמטרי מעבד קיימים תומכים ב:
|
||||
ערכים קבועים: `"model": "gemma3:12b"`
|
||||
מקומות פרמטרים: `"model": "gemma3:{model-size}"`
|
||||
>>>>>>> 82edf2d (New md files from RunPod)
|
||||
|
||||
מפרט זה מגדיר כיצד פרמטרים:
|
||||
מוצהרים בהגדרות תבניות זרימה
|
||||
|
|
@ -38,7 +58,11 @@
|
|||
מוכנסים לפרמטרי מעבד
|
||||
נחשפים באמצעות ממשקי API וממשקי משתמש
|
||||
|
||||
<<<<<<< HEAD
|
||||
על ידי שימוש בפרמטרי מעבד מוגדרים, TrustGraph יכולה:
|
||||
=======
|
||||
על ידי שימוש בפרמטרי מעבד מותאמים אישית, TrustGraph יכולה:
|
||||
>>>>>>> 82edf2d (New md files from RunPod)
|
||||
להפחית שכפול של תבניות זרימה על ידי שימוש בפרמטרים עבור וריאציות
|
||||
לאפשר למשתמשים לכוונן את התנהגות המעבד מבלי לשנות הגדרות
|
||||
לתמוך בתצורות ספציפיות לסביבה באמצעות ערכי פרמטרים
|
||||
|
|
@ -51,9 +75,15 @@
|
|||
מערכת הפרמטרים הניתנים להגדרה דורשת את הרכיבים הטכניים הבאים:
|
||||
|
||||
1. **הגדרת סכימת פרמטרים**
|
||||
<<<<<<< HEAD
|
||||
הגדרות פרמטרים מבוססות סכימת JSON בתוך מטא-נתונים של תבניות זרימה
|
||||
הגדרות סוגים כולל מחרוזות, מספרים, בוליאנים, enum ואובייקטים
|
||||
כללי אימות כולל ערכים מינימליים/מקסימליים, תבניות ושדות חובה
|
||||
=======
|
||||
הגדרות פרמטרים המבוססות על סכימת JSON בתוך מטא-נתונים של תבניות זרימה
|
||||
הגדרות סוגים כולל מחרוזות, מספרים, בוליאנים, enum ואובייקטים
|
||||
כללי אימות כולל ערכים מינימליים/מקסימליים, תבניות ושדות נדרשים
|
||||
>>>>>>> 82edf2d (New md files from RunPod)
|
||||
|
||||
מודול: trustgraph-flow/trustgraph/flow/definition.py
|
||||
|
||||
|
|
@ -84,7 +114,11 @@
|
|||
תצוגה מסודרת של פרמטרים באמצעות שדה `order`
|
||||
תגיות תיאוריות של פרמטרים באמצעות שדה `description`
|
||||
אימות קלט מול הגדרות סוג פרמטרים
|
||||
<<<<<<< HEAD
|
||||
ערכות מקדימות ותבניות פרמטרים
|
||||
=======
|
||||
ערכות חכמות ותבניות פרמטרים
|
||||
>>>>>>> 82edf2d (New md files from RunPod)
|
||||
|
||||
מודול: trustgraph-ui/components/flow-parameters/
|
||||
|
||||
|
|
@ -93,7 +127,11 @@
|
|||
#### הגדרות פרמטרים (מאוחסנות בסכימה/תצורה)
|
||||
|
||||
הגדרות פרמטרים מאוחסנות באופן מרכזי במערכת הסכימות והתצורה עם סוג "parameter-type":
|
||||
<<<<<<< HEAD
|
||||
פלט חוזה (יש לעקוב בדיוק אחר הפורמט הבא).
|
||||
=======
|
||||
פלט חוזה (יש לעקוב אחר הפורמט המדויק).
|
||||
>>>>>>> 82edf2d (New md files from RunPod)
|
||||
```json
|
||||
{
|
||||
"llm-model": {
|
||||
|
|
@ -250,14 +288,22 @@
|
|||
}
|
||||
```
|
||||
|
||||
<<<<<<< HEAD
|
||||
הערה: בדוגמה זו, `llm-rag-model` אינו מסופק באופן מפורש, אך הוא יירש את הערך "claude-3" מ-`llm-model` בשל הקשר `controlled-by` שלו. באופן דומה, `chunk-overlap` יכול לרשת ערך מחושב המבוסס על `chunk-size`.
|
||||
=======
|
||||
הערה: בדוגמה זו, `llm-rag-model` אינו מסופק באופן מפורש, אך הוא יירש את הערך "claude-3" מ-`llm-model` עקב הקשר `controlled-by` שלו. באופן דומה, `chunk-overlap` יכול לרשת ערך מחושב המבוסס על `chunk-size`.
|
||||
>>>>>>> 82edf2d (New md files from RunPod)
|
||||
|
||||
המערכת תבצע את הפעולות הבאות:
|
||||
1. חילוץ מטא-נתונים של פרמטרים מהגדרת תבנית זרימה
|
||||
2. מיפוי שמות פרמטרים של זרימה להגדרות הסוג שלהם (לדוגמה, `llm-model` → סוג `llm-model`)
|
||||
3. פתרון קשרים "שולט ב" (controlled-by) (לדוגמה, `llm-rag-model` יורש מ-`llm-model`)
|
||||
4. אימות ערכים שסופקו על ידי המשתמש וערכים שירשו בהתאם להגדרות הסוג של הפרמטרים
|
||||
<<<<<<< HEAD
|
||||
5. החלפת ערכים שפתורים לתוך פרמטרים של מעבדים במהלך יצירת זרימה
|
||||
=======
|
||||
5. החלפת ערכים פתורים לפרמטרים של מעבדים במהלך יצירת זרימה
|
||||
>>>>>>> 82edf2d (New md files from RunPod)
|
||||
|
||||
### פרטי יישום
|
||||
|
||||
|
|
@ -268,13 +314,19 @@
|
|||
1. **טעינת תבנית זרימה**: טעינת הגדרת תבנית זרימה וחילוץ מטא-נתונים של פרמטרים
|
||||
2. **חילוץ מטא-נתונים**: חילוץ `type`, `description`, `order`, `advanced` ו-`controlled-by` עבור כל פרמטר המוגדר בתבנית הזרימה בסעיף `parameters`
|
||||
3. **חיפוש הגדרת סוג**: עבור כל פרמטר בתבנית הזרימה:
|
||||
<<<<<<< HEAD
|
||||
אחזור הגדרת הסוג של הפרמטר ממחסן הסכימה/התצורה באמצעות השדה `type`
|
||||
הגדרות הסוג מאוחסנות עם הסוג "parameter-type" במערכת התצורה
|
||||
=======
|
||||
אחזור הגדרת הסוג של הפרמטר ממחסן הסכימה/הגדרות באמצעות השדה `type`
|
||||
הגדרות הסוג מאוחסנות עם הסוג "parameter-type" במערכת ההגדרות
|
||||
>>>>>>> 82edf2d (New md files from RunPod)
|
||||
כל הגדרת סוג מכילה את הסכימה של הפרמטר, ערך ברירת מחדל וכללי אימות
|
||||
4. **פתרון ערך ברירת מחדל**:
|
||||
עבור כל פרמטר המוגדר בתבנית הזרימה:
|
||||
בדיקה האם המשתמש סיפק ערך עבור פרמטר זה
|
||||
אם לא סופק ערך על ידי המשתמש, השתמש בערך `default` מהגדרת סוג הפרמטר
|
||||
<<<<<<< HEAD
|
||||
יצירת מפת פרמטרים שלמה המכילה הן ערכים שסופקו על ידי המשתמש והן ערכי ברירת מחדל
|
||||
5. **פתרון ירושה של פרמטרים** (קשרים "שולט ב"):
|
||||
עבור פרמטרים עם שדה `controlled-by`, בדוק האם סופק ערך באופן מפורש
|
||||
|
|
@ -284,13 +336,28 @@
|
|||
6. **אימות**: אימות קבוצת הפרמטרים השלמה (ערכים שסופקו על ידי המשתמש, ברירות מחדל וערכים שירשו) בהתאם להגדרות הסוג
|
||||
7. **אחסון**: אחסון קבוצת הפרמטרים השלמה שפתורה עם מופע הזרימה לצורך ביקורת
|
||||
8. **החלפת תבניות**: החלפת מקומות שמורות של פרמטרים בפרמטרים של מעבדים עם ערכים שפתורים
|
||||
=======
|
||||
יצירת מפת פרמטרים שלמה המכילה גם ערכים שסופקו על ידי המשתמש וגם ערכי ברירת מחדל
|
||||
5. **פתרון ירושה של פרמטרים** (קשרים "שולט ב"):
|
||||
עבור פרמטרים עם שדה `controlled-by`, בדוק האם סופק ערך באופן מפורש
|
||||
אם לא סופק ערך מפורש, ירוש את הערך מהפרמטר השולט
|
||||
אם גם לפרמטר השולט אין ערך, השתמש בברירת המחדל מהגדרת הסוג
|
||||
ודא שאין תלות מעגלית בקשרי `controlled-by`
|
||||
6. **אימות**: אימות קבוצת הפרמטרים השלמה (ערכים שסופקו על ידי המשתמש, ברירות מחדל וערכים שירשו) בהתאם להגדרות הסוג
|
||||
7. **אחסון**: אחסון קבוצת הפרמטרים הפתורים השלמה עם מופע הזרימה לצורך ביקורת
|
||||
8. **החלפת תבניות**: החלפת מקומות שמורות של פרמטרים בפרמטרים של מעבדים עם ערכים פתורים
|
||||
>>>>>>> 82edf2d (New md files from RunPod)
|
||||
9. **יצירת מעבדים**: יצירת מעבדים עם פרמטרים שהוחלפו
|
||||
|
||||
**הערות חשובות ליישום:**
|
||||
שירות הזרימה חייב למזג פרמטרים שסופקו על ידי המשתמש עם ברירות מחדל מהגדרות סוג הפרמטרים
|
||||
קבוצת הפרמטרים השלמה (כולל ברירות המחדל המיושמות) חייבת להיות מאוחסנת עם הזרימה לצורך מעקב
|
||||
פתרון פרמטרים מתרחש בזמן התחלת הזרימה, ולא בזמן יצירת המעבד
|
||||
<<<<<<< HEAD
|
||||
פרמטרים חסרים שנדרשים ללא ברירות מחדל חייבים לגרום לכישלון התחלת הזרימה עם הודעת שגיאה ברורה
|
||||
=======
|
||||
פרמטרים חסרים הדורשים ברירות מחדל חייבים לגרום לכישלון התחלת הזרימה עם הודעת שגיאה ברורה
|
||||
>>>>>>> 82edf2d (New md files from RunPod)
|
||||
|
||||
#### ירושת פרמטרים עם "שולט ב"
|
||||
|
||||
|
|
@ -311,7 +378,11 @@
|
|||
**התנהגות ממשק משתמש**:
|
||||
במצב בסיסי/פשוט: פרמטרים עם `controlled-by` עשויים להיות מוסתרים או מוצגים כקריאה בלבד עם ערך שירש
|
||||
במצב מתקדם: מוצגים כל הפרמטרים וניתן להגדיר אותם באופן אינדיבידואלי
|
||||
<<<<<<< HEAD
|
||||
כאשר פרמטר שולט משתנה, פרמטרים תלויים מתעדכנים אוטומטית אלא אם כן הם נדחפים באופן מפורש
|
||||
=======
|
||||
כאשר פרמטר שולט משתנה, פרמטרים תלויים מתעדכנים אוטומטית אלא אם כן הם דורסים באופן מפורש
|
||||
>>>>>>> 82edf2d (New md files from RunPod)
|
||||
|
||||
#### אינטגרציה עם Pulsar
|
||||
|
||||
|
|
@ -370,9 +441,15 @@
|
|||
```
|
||||
|
||||
פונקציה זו צריכה:
|
||||
<<<<<<< HEAD
|
||||
לחלץ מטא-נתונים של פרמטרים מתוך סעיף `parameters` של תוכנית העבודה (blueprint).
|
||||
עבור כל פרמטר, לשלוף את הגדרת הסוג שלו ממאגר התצורה.
|
||||
להחיל ערכי ברירת מחדל עבור כל פרמטרים שאינם מסופקים על ידי המשתמש.
|
||||
=======
|
||||
לחלץ מטא-נתונים של פרמטרים מסעיף `parameters` של תוכנית העבודה (blueprint).
|
||||
עבור כל פרמטר, לשלוף את הגדרת הסוג שלו ממאגר התצורה.
|
||||
להחיל ערכי ברירת מחדל עבור כל פרמטרים שלא סופקו על ידי המשתמש.
|
||||
>>>>>>> 82edf2d (New md files from RunPod)
|
||||
לטפל ביחסי ירושה `controlled-by`.
|
||||
להחזיר את קבוצת הפרמטרים השלמה.
|
||||
|
||||
|
|
@ -429,7 +506,11 @@
|
|||
אימות סוג מתרחש בהתבסס על הגדרת הפרמטר המאוחסנת במרכז.
|
||||
**חשוב**: כל ערכי הפרמטרים מאוחסנים ומועברים כרצף תווים.
|
||||
מספרים מומרים לרצף תווים (לדוגמה, `0.7` הופך ל-`"0.7"`).
|
||||
<<<<<<< HEAD
|
||||
ערכים בוליאניים מומרים לרצף תווים קטן (לדוגמה, `true` הופך ל-`"true"`).
|
||||
=======
|
||||
בוליאנים מומרים לרצף תווים קטן (לדוגמה, `true` הופך ל-`"true"`).
|
||||
>>>>>>> 82edf2d (New md files from RunPod)
|
||||
זה נדרש על ידי הסכימה של Pulsar, אשר מגדירה `parameters = Map(String())`.
|
||||
|
||||
דוגמה לפענוח:
|
||||
|
|
@ -457,14 +538,22 @@ Substituted in processor: "0.7" (string)
|
|||
## תוכנית מעבר
|
||||
|
||||
1. המערכת צריכה להמשיך לתמוך בתבניות זרימה ללא פרמטרים
|
||||
<<<<<<< HEAD
|
||||
מוצהרים.
|
||||
=======
|
||||
מוגדרים.
|
||||
>>>>>>> 82edf2d (New md files from RunPod)
|
||||
2. המערכת צריכה להמשיך לתמוך בזרימות ללא פרמטרים מוגדרים:
|
||||
זה עובד עבור זרימות ללא פרמטרים, וזרימות עם פרמטרים
|
||||
(שיש להם ערכי ברירת מחדל).
|
||||
|
||||
## שאלות פתוחות
|
||||
|
||||
<<<<<<< HEAD
|
||||
ש: האם הפרמטרים צריכים לתמוך באובייקטים מקוננים מורכבים או להישאר בסוגים פשוטים?
|
||||
=======
|
||||
ש: האם פרמטרים צריכים לתמוך באובייקטים מקוננים מורכבים או להישאר בסוגים פשוטים?
|
||||
>>>>>>> 82edf2d (New md files from RunPod)
|
||||
ת: ערכי הפרמטרים יועברו כרצף תווים, סביר להניח שנרצה
|
||||
להישאר ברצפים תווים.
|
||||
|
||||
|
|
@ -473,11 +562,19 @@ Substituted in processor: "0.7" (string)
|
|||
ת: רק בפרמטרים כדי למנוע הזרקות ותופעות לוואי.
|
||||
|
||||
ש: כיצד לטפל בקונפליקטים בין שמות פרמטרים למשתנים של המערכת כמו
|
||||
<<<<<<< HEAD
|
||||
`id` ו- `class`?
|
||||
ת: לא חוקי לציין id ו-class בעת הפעלת זרימה.
|
||||
|
||||
ש: האם אנו תומכים בפרמטרים מחושבים (נגזרים מפרמטרים אחרים)?
|
||||
ת: רק החלפת רצפי תווים כדי למנוע הזרקות ותופעות לוואי.
|
||||
=======
|
||||
`id` ו-`class`?
|
||||
ת: לא חוקי לציין id ו-class בעת הפעלת זרימה.
|
||||
|
||||
ש: האם אנו תומכים בפרמטרים מחושבים (נגזרים מפרמטרים אחרים)?
|
||||
ת: רק החלפת רצפים תווים כדי למנוע הזרקות ותופעות לוואי.
|
||||
>>>>>>> 82edf2d (New md files from RunPod)
|
||||
|
||||
## הפניות
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue