אָרקעסטרייטינג אַי אַגענץ מיט LangChain און DSPy פֿאַר ענכאַנסט ווייכווארג אַרקאַטעקטשער
הקדמה
אין הייַנט ס שנעל-פּייסט דיגיטאַל לאַנדשאַפט, ווייכווארג סיסטעמען ווערן ינקריסינגלי קאָמפּליצירט, מיט די ינאַגריישאַן פון קייפּאַבילאַטיז פון אַרטיפיסיאַל ינטעלליגענסע (AI) און מאַשין לערנען (ML). ווי אַ רעזולטאַט, דיזיינינג סקאַלאַבלע און ריזיליאַנט סיסטעמען וואָס קענען יפעקטיוולי אָרקעסטרירן אַי אגענטן איז געווארן אַ דרינגלעך דייַגע פֿאַר ווייכווארג ענדזשאַנירז. דער אַרטיקל יקספּלאָרז די ינטערסעקשאַן פון אַי, ווייכווארג ינזשעניעריע און אָרקעסטראַטיאָן מכשירים צו פּלאַן עפעקטיוו ווייכווארג אַרקאַטעקטשערז, מיט אַ פאָקוס אויף ימפּלאַמענינג אַי אגענטן ניצן LangChain און DSPy.
די נויט פֿאַר אַי אָרטשעסטראַטיאָן
טראַדיציאָנעל ווייכווארג סיסטעמען זענען אָפט דיזיינד מיט אַ מאַנאַליטיק אַרקאַטעקטשער, ווו אַלע קאַמפּאָונאַנץ זענען טייטלי קאַפּאַלד און אַרבעט צוזאַמען אין אַ לינעאַר מאָדע. אָבער, מיט די אַדווענט פון AI און ML, ווייכווארג סיסטעמען ווערן ינקריסינגלי פונאנדערגעטיילט און דיסענטראַלייזד, מיט קייפל אגענטן ארבעטן צוזאַמען צו דערגרייכן אַ פּראָסט ציל. דאָס האָט געפֿירט צו די נויט פֿאַר אַי אָרקעסטראַטיאָן, וואָס ינוואַלווז דיזיינינג סיסטעמען וואָס קענען יפעקטיוולי פירן און קאָואָרדאַנאַט די ינטעראַקשאַנז צווישן קייפל אַי אגענטן.
LangChain: א פריימווערק פֿאַר בנין אַי אַגענץ
LangChain איז אַ פּיטהאָן פריימווערק פֿאַר בנין אַי אגענטן וואָס קענען ינטעראַקט מיט יעדער אנדערע און מיט פונדרויסנדיק סיסטעמען. עס גיט אַ סכום פון מכשירים און לייברעריז וואָס געבן דעוועלאָפּערס צו שאַפֿן אַגענץ וואָס קענען סיבה, לערנען און אַדאַפּט זיך צו טשאַנגינג ינווייראַנמאַנץ. LangChain איז געבויט אויף שפּיץ פון די רוסט פּראָגראַממינג שפּראַך און גיט אַ הויך-מדרגה API פֿאַר בנין אַי אגענטן.
DSPy: א פראַמעוואָרק פֿאַר אָרטשעסטראַטיאָן
DSPy איז אַ פּיטהאָן פריימווערק פֿאַר בנין פונאנדערגעטיילט סיסטעמען וואָס קענען אָרקעסטרירן קייפל אַי אגענטן. עס גיט אַ גאַנג פון מכשירים און לייברעריז וואָס געבן דעוועלאָפּערס צו פּלאַן און צעוויקלען סקאַלאַבלע און ריזיליאַנט סיסטעמען וואָס קענען פירן קאָמפּלעקס ינטעראַקשאַנז צווישן קייפל אגענטן. DSPy איז געבויט אויף שפּיץ פון די Apache Kafka מעסידזשינג סיסטעם און גיט אַ הויך-מדרגה API פֿאַר בנין פונאנדערגעטיילט סיסטעמען.
ימפּלעמענטינג אַי אַגענץ מיט LangChain און DSPy
צו ינסטרומענט אַי אגענטן ניצן LangChain און DSPy, מיר דאַרפֿן צו נאָכפאָלגן די סטעפּס:
- ** דעפינירן די אַגענט אַרקאַטעקטשער **: דעפינירן די אַרקאַטעקטשער פון די אַי אַגענט, אַרייַנגערעכנט די ינפּוץ, אַוטפּוץ און ינטעראַקשאַנז מיט אנדערע אגענטן.
- ** ימפּלעמענט די אַגענט לאָגיק **: ימפּלעמענט די לאָגיק פון די אַי אַגענט ניצן LangChain, אַרייַנגערעכנט די ריזאַנינג, לערנען און אַדאַפּטיישאַן מעקאַניזאַמז.
- אָרטשעסטרירן די אַגענט ינטעראַקטיאָנס: ניצן DSPy צו אָרקעסטרירן די ינטעראַקשאַנז צווישן קייפל אַי אגענטן, אַרייַנגערעכנט די קאָמוניקאַציע פּראָטאָקאָלס און דאַטן וועקסל מעקאַניזאַמז.
- ** דעפּלוי די סיסטעם **: דיפּלוי די סיסטעם ניצן אַ וואָלקן פּלאַטפאָרמע אָדער אַ קאַנטיינעריזאַטיאָן פריימווערק, אַזאַ ווי דאָקער.
קאָד ביישפּיל: ימפּלעמענטינג אַ פּשוט אַי אַגענט מיט LangChain
דאָ איז אַ פּשוט קאָד ביישפּיל וואָס דעמאַנסטרייץ ווי צו ינסטרומענט אַן אַי אַגענט ניצן LangChain:
אַרייַנפיר לאַנגטשאַין
פֿון langchain.chains אַרייַנפיר LLMChain
אַגענט = לאַנגטשאַין.אַגענט(
input_schema={"text": str},
output_schema={"text": str},
קייט=LLMCain(
model="davinci:instructix",
מאַקס_לענגטה=2048,
טעמפּעראַטור=0.7,
),
)
# ימפּלעמענט די אַגענט לאָגיק
דעף אַגענט_לאָגיק (ינפּוט_טעקסט):
output_text = agent.run(ינפּוט_טעקסט)
צוריקקומען רעזולטאַט_טעקסט
# פּרוּווט דעם אַגענט
input_text = "וואָס איז דער טייַטש פון לעבן?"
output_text = אַגענט_לאָגיק (ינפּוט_טעקסט)
דרוק (אויסצוג_טעקסט)
דעם קאָד ביישפּיל דעמאַנסטרייץ ווי צו דעפינירן אַן אַי אַגענט ניצן LangChain, אַרייַנגערעכנט די אַרייַנשרייַב און רעזולטאַט סטשעמאַס, און די לאָגיק פון דעם אַגענט. דער אַגענט איז ימפּלאַמענאַד ניצן אַ גרויס שפּראַך מאָדעל (LLM) קייט, וואָס איז אַ טיפּ פון אַי אַגענט וואָס קענען סיבה און דזשענערייט טעקסט.
שפּיץ 5-10 מערסט געוויינט קאַמאַנדז / סניפּאַץ פֿאַר LangChain און DSPy
דאָ זענען די שפּיץ 5-10 מערסט געוויינט קאַמאַנדז / סניפּאַץ פֿאַר LangChain און DSPy:
- langchain.Agent(): קרעאַטעס אַ נייַ אַי אַגענט בייַשפּיל.
אַגענט = לאַנגטשאַין.אַגענט(
input_schema={"text": str},
output_schema={"text": str},
קייט=LLMCain(
model="davinci:instructix",
מאַקס_לענגטה=2048,
טעמפּעראַטור=0.7,
),
)
- agent.run(): לויפט די אַי אַגענט מיט אַ געגעבן אַרייַנשרייַב.
output_text = agent.run(ינפּוט_טעקסט)
- DSPy.create_cluster(): קריייץ אַ נייַ קנויל פון נאָודז פֿאַר די פונאנדערגעטיילט סיסטעם.
קנויל = DSPy.create_cluster(
נומער_נאָדעס=5,
node_type="אַרבעטער",
)
- DSPy.create_agent(): קרעאַטעס אַ נייַ אַי אַגענט בייַשפּיל פֿאַר די פונאנדערגעטיילט סיסטעם.
אַגענט = DSPy.create_agent(
קנויל = קנויל,
agent_type="LLM",
)
- DSPy.deploy_agent(): דיפּלוידז די אַי אַגענט צו די פונאנדערגעטיילט סיסטעם.
DSPy.deploy_agent(
אַגענט = אַגענט,
קנויל = קנויל,
)
- DSPy.get_agent_status(): ריטריווז די סטאַטוס פון די אַי אַגענט.
סטאַטוס = DSPy.get_agent_status(
אַגענט = אַגענט,
קנויל = קנויל,
)
- DSPy.update_agent(): דערהייַנטיקונגען די אַי אַגענט מיט נייַע דאַטן אָדער פּאַראַמעטערס.
DSPy.update_agent(
אַגענט = אַגענט,
קנויל = קנויל,
new_data={"text": "נײַער אַרייַנשרייַב טעקסט"},
)
- DSPy.delete_agent(): דיליץ די אַי אַגענט פון די פונאנדערגעטיילט סיסטעם.
DSPy.delete_agent(
אַגענט = אַגענט,
קנויל = קנויל,
)
- DSPy.create_chain(): קריייץ אַ נייַע קייט פון אַי אגענטן פֿאַר די פונאנדערגעטיילט סיסטעם.
קייט = DSPy.create_chain(
אגענטן=[אַגענט1, אַגענט2, אַגענט3],
)
- DSPy.deploy_chain(): דיפּלוידז די קייט פון אַי אגענטן צו די פונאנדערגעטיילט סיסטעם.
DSPy.deploy_chain(
קייט = קייט,
קנויל = קנויל,
)
וויסואַליזאַטיאָן
דאָ איז אַ וויזשוואַלאַזיישאַן פון די LangChain און DSPy אַרקאַטעקטשער ניצן Chart.js:
{
"type": "פּיעטשאַרט",
"דאַטן": {
"labels": ["לאַנגטשאַין", "DSPy"],
"דאַטאַסעטס": [
{
"label": "AI אַגענץ",
"דאַטן": [50, 50],
"backgroundColor": ["#4CAF50", "#FF9800"]
}
]
},
"אָפּציעס": {
"טיטל": {
"ווייַז": אמת,
"text": "לאַנגטשאַין און דספּי אַרקאַטעקטשער"
},
"לעגענד": {
"ווייַז": אמת
}
}
}
די וויזשוואַלאַזיישאַן דעמאַנסטרייץ די פאַרשפּרייטונג פון אַי אגענטן צווישן LangChain און DSPy, מיט 50% פון די אגענטן פליסנדיק אויף LangChain און 50% פליסנדיק אויף DSPy.
** מסקנא**
LangChain און DSPy צושטעלן אַ שטאַרק פריימווערק פֿאַר בנין און אָרקעסטרייטינג אַי אגענטן, וואָס אַלאַוז דעוועלאָפּערס צו פּלאַן סקאַלאַבלע און ריזיליאַנט סיסטעמען וואָס קענען יפעקטיוולי פירן קאָמפּלעקס ינטעראַקשאַנז צווישן קייפל אגענטן. דורך נאָכפאָלגן די סטעפּס אַוטליינד אין דעם אַרטיקל, דעוועלאָפּערס קענען ינסטרומענט אַי אגענטן ניצן LangChain און DSPy און צעוויקלען זיי צו אַ פונאנדערגעטיילט סיסטעם ניצן DSPy. די קאָד ביישפילן און וויזשוואַלאַזיישאַן צוגעשטעלט באַווייַזן די קייפּאַבילאַטיז פון LangChain און DSPy, און די שפּיץ 5-10 מערסט געוויינט קאַמאַנדז / סניפּאַץ צושטעלן אַ שנעל רעפֿערענץ פֿאַר דעוועלאָפּערס.