Skip to content

Latest commit

 

History

History

he-IL

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 

PowershAI

סיכום

PowershAI (Powershell + AI) הוא מודול שמוסיף גישה ל-AI דרך Powershell

פרטים

PowershAI הוא מודול שמוסיף יכולות AI לפעולת Powershell שלך.
המטרה היא להקל ולעטוף שיחות וטיפולים מורכבים עבור ה-APIs של שירותי AI מובילים.

PowershAI מגדיר מערכת של תקנים המאפשרים למשתמש לשוחח עם LLMs ישירות משורת הפקודה, או להשתמש בתוצאות של פקודות כקונטקסט בשורת הפקודה.
ואמצעי מערכת תקנית של פונקציות, ספקים שונים יכולים לשמש: למשל, אתה יכול לשוחח עם GPT-4o או Gemini Flash באמצעות אותו קוד בדיוק.

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

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

בסופו של דבר, יש לך אפשרויות שונות להתחיל להשתמש ב-AI בתוך הסקריפטים שלך.

דוגמאות לספקים ידועים שכבר ממומשים באופן מלא או חלקי:

  • OpenAI
  • Hugging Face
  • Gemini
  • Ollama
  • Maritalk (LLM ישראלי)

התחלת השימוש ב-PowershAI היא פשוטה מאוד:

# התקן את המודול!
Install-Module -Scope CurrentUser powershai 

# ייבא!
import-module powershai

# רשימת ספקים 
Get-AiProviders

# עליך להתייעץ עם התיעוד של כל ספק לקבלת פרטים אודות השימוש בו!
# ניתן לגשת לתיעוד באמצעות Get-Help 
Get-Help about_NomeProvider

# דוגמא:
Get-Help about_huggingface

קבלת עזרה

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

אתה יכול למנות את כל הפקודות הזמינות כאשר הפקודה Get-Command -mo powershai.
פקודה זו תחזיר את כל ה-cmdlets, alias ופונקציות שיוצאו מהמודול powershsai.
היא נקודת ההתחלה הקלה ביותר כדי לגלות אילו פקודות. פקודות רבות הן ברורות מאליהן, רק על ידי התבוננות בשם.

ולכל פקודה, אתה יכול לקבל פרטים נוספים באמצעות Get-Help -Full NomeComando. אם הפקודה עדיין לא תועדה במלואה, או שאם יש ספק ספציפי שחסר לך, אתה יכול לפתוח issue בגיט ולבקש תוספת.

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

אנו נעדכן את התיעוד ככל שיוצאות גרסאות חדשות. אנו מעודדים אותך לתרום ל-PowershAI, להגיש Pull Requsts או issues עם שיפורים בתיעוד אם אתה מוצא משהו שניתן להסביר טוב יותר, או שעדיין לא הוסבר.

מבנה של פקודות

PowershAI מוציא פקודות רבות שניתן להשתמש בהן.
רוב הפקודות הללו מכילות "Ai" או "Powershai". אנו קוראים לפקודות אלו פקודות גלובליות של Powershai, משום שהן אינן פקודות לספק ספציפי.

לדוגמה: Get-AiProvider, Send-PowershaiChat, New-PowershaiChat.
ה-providers גם מוציאים פקודות, שיכולות להיות עם שם של הספק. התייעץ עם התיעוד של הספק כדי ללמוד עוד אודות תבנית הפקודות שיוצאת.

לפי מוסכמה, אין ספק שיתממש פקודות עם "Ai" או "Powershai" בשם, משום שהן שמורות לפקודות הגלובליות, ללא קשר לספק.
כמו כן, alias שמוגדרים על ידי ספקים חייבים לכלול תמיד יותר מ-5 תווים. Alias קצרים יותר שמורים לפקודות הגלובליות.

אתה יכול למצוא את התיעוד של פקודות אלו בתיעוד של פקודות גלובליות.
אתה יכול להשתמש בפקודה Get-PowershaiGlobalCommands כדי לקבל את הרשימה!

תיעוד של ספקים

תיעוד של ספקים הוא המקום הרשמי לקבלת עזרה אודות אופן פעולתו של כל ספק.
תיעוד זה זמין גם באמצעות הפקודה Get-Help של powershell.

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

צ'אטים

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

שוחח עם המודל

ברגע שההגדרה הראשונית של הספק הושלמה, אתה יכול להתחיל בשיחה!
הדרך הקלה ביותר להתחיל בשיחה היא באמצעות הפקודה Send-PowershaiChat או ה-alias ia:

ia "שלום, אתה מכיר PowerShell?"

פקודה זו תשלח את ההודעה למודל של הספק שהוגדר והתגובה תוצג בהמשך.
שים לב שזמן התגובה תלוי ביכולת המודל ובشبكة.

אתה יכול להשתמש בצינור כדי להזריק את התוצאה של פקודות אחרות ישירות כקונטקסט של ה-ia:

1..100 | Get-Random -count 10 | ia "ספר לי חידודים אודות המספרים האלה"

הפקודה לעיל תיצור רצף מ-1 ל-100 ותזריק כל מספר לצינור של PowerShell.
אז, הפקודה Get-Random תסנן רק 10 מספרים אלה, באופן אקראי.
ולבסוף, רצף זה יוזרק (כולו בבת אחת) ל-ia ויישלח עם ההודעה שהכנסת בפרמטר.

אתה יכול להשתמש בפרמטר -ForEach כדי שה-ia תעבד כל קלט בנפרד, למשל:

1..100 | Get-Random -count 10 | ia -ForEach "ספר לי חידודים אודות המספרים האלה"

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

מצב אובייקט

לפי ברירת מחדל, הפקודה ia לא מחזירה דבר. אבל אתה יכול לשנות התנהגות זו באמצעות הפרמטר -Object.
כאשר פרמטר זה מופעל, הוא מבקש מה-LLM לייצר את התוצאה ב-JSON ורושם את התשובה חזרה לצינור.
זה אומר שאתה יכול לעשות משהו כזה:

ia -Obj "5 מספרים אקראיים, עם הערך שלהם כתוב במילים"

#או באמצעות ה-alias, io/powershellgallery/dt/powershai

io "5 מספרים אקראיים, עם הערך שלהם כתוב במילים"

חשוב: שים לב שכל ספק לא יכול לתמוך במצב זה, מכיוון שהמודל צריך להיות מסוגל לתמוך ב-JSON! אם אתה מקבל שגיאות, ודא שהפקודה זהה עובדת עם מודל של OpenAI. אתה יכול לפתוח issue גם

שמירת הגדרות

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

כדי שלא תצטרך לייצר אסימונים כל פעם, למשל, Powershai מספק 2 פקודות לייצוא וייבוא ​​של הגדרות.
הפקודה Export-PowershaiSettings מייצאת את ההגדרות לקובץ בתיקיית הפרופיל של המשתמש המחובר.
בשל העובדה שהנתונים שיוצאים עלולים להיות רגישים, עליך לציין סיסמה שתשמש לייצור מפתח הצפנה.
הנתונים שיוצאים מוצפנים באמצעות AES-256.
אתה יכול לייבא באמצעות Import-PowershaiSettings. עליך לציין את הסיסמה שבה השתמשת לייצוא.

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

עלויות

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

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

ייצוא וייבוא ​​של הגדרות ואסימונים

כדי להקל על השימוש חוזר בנתונים (אסימונים, מודלים ברירת מחדל, היסטוריית צ'אטים, וכו') PowershAI מאפשר לך לייצא את הפעולה.
לשם כך, השתמש בפקודה Export-PowershaiSettings. תצטרך לספק סיסמה שתשמש ליצירת מפתח ולהצפנת קובץ זה.
רק עם סיסמה זו, אתה יכול לייבא אותה שוב. כדי לייבא, השתמש בפקודה Import-PowershaiSettings.
לפי ברירת מחדל, צ'אטים לא יוצאים. כדי לייצא אותם, אתה יכול להוסיף את הפרמטר -Chats: Export-PowershaiSettings -Chats.
שים לב שזה יכול להגדיל את גודל הקובץ, בנוסף להגדלת זמן הייצוא/ייבוא. היתרון הוא שאתה יכול להמשיך את השיחה בין פעולות שונות.
פונקציונליות זו נוצרה במקור במטרה להימנע מהצורך לייצר Api Key בכל פעם שצריך להשתמש ב-PowershAI. עמו, אתה מייצר 1 פעמים את api keys שלך בכל ספק, ואתה מייצא ככל שאתה מעדכן. מכיוון שזה מוגן באמצעות סיסמה, אתה יכול לשמור אותו בבטחה בקובץ במחשב שלך.
השתמש בעזרה בפקודה כדי לקבל מידע נוסף אודות השימוש בה.

דוגמאות

שימוש בסיסי

שימוש ב-PowershAI הוא פשוט מאוד. הדוגמה להלן מראה כיצד ניתן להשתמש בו עם OpenAI:

# שינוי הספק הנוכחי ל-OpenAI
Set-AiProvider openai 

# הגדרת אסימון אימות (עליך לייצר את האסימון באתר platform.openai.com)
Set-OpenaiToken 

# השתמש באחת מהפקודות כדי להתחיל בצ'אט!  ia הוא alias ל-Send-PowershaiChat, שמשגר הודעה לצ'אט ברירת המחדל!
ia "שלום, אני מדבר איתך מהPowershaui!"

ייצוא הגדרות

# הגדר אסימון, למשל 
Set-OpenaiToken 

# לאחר שהפקודה לעיל תרוץ, פשוט ייצא!
Export-PowershaiSettings

# תצטרך לספק את הסיסמה!

ייבוא ​​הגדרות

import-module powershai 

# ייבוא ​​הגדרות 
Import-PowershaiSettings # הפקודה תבקש את הסיסמה שהשתמשת בה לייצוא

מידע חשוב

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

פתרון בעיות

למרות שיש בו הרבה קוד ויש לו כבר פונקציונליות רבה, PowershAI הוא פרויקט חדש שעדיין בפיתוח.
אפשרי למצוא באגים, ובשלב זה, חשוב שתמיד תעזור בדיווח, באמצעות issues, במאגר הרשמי ב- https://github.com/rrg92/powershai

אם תרצה לבצע איתור באגים של בעיה, אני ממליץ לך לבצע את השלבים הבאים:

  • השתמש ב-Debug כדי לעזור לך. פקודות כמו Set-PSBreakpoint קלות להפעלה בשורת הפקודה ויכולות לחסוך לך זמן.
  • חלק מהפונקציות לא מציגות את השגיאה המלאה. אתה יכול להשתמש במשתנה $error, ולגשת לאחרון. לדוגמה:
$e = $error[0];
$e.ErrorRecord.ScriptStackTrace # זה עוזר למצוא את השורה המדויקת שבה התרחשה החריגה!

ראה גם

  • סרטון אודות השימוש בספק של Hugging Face: https://www.youtube.com/watch?v=DOWb8MTS5iU
  • ראה את התיעוד של כל ספק לקבלת פרטים נוספים אודות השימוש ב-cmdlets שלו

תגיות

  • בינה מלאכותית
  • AI

_תרגם אוטומטית באמצעות PowershAI ובינה מלאכותית. _