Kengaytirilgan dasturiy ta'minot arxitekturasi uchun LangChain va DSPy bilan AI agentlarini tashkil qilish
Kirish
Bugungi tez sur'atlar bilan rivojlanayotgan raqamli landshaftda dasturiy ta'minot tizimlari sun'iy intellekt (AI) va Machine Learning (ML) imkoniyatlarini integratsiyalashgan holda tobora murakkablashmoqda. Natijada, AI agentlarini samarali boshqarishi mumkin bo'lgan kengaytiriladigan va moslashuvchan tizimlarni loyihalash dasturiy ta'minot muhandislari uchun dolzarb muammoga aylandi. Ushbu maqola LangChain va DSPy-dan foydalangan holda AI agentlarini amalga oshirishga e'tibor qaratgan holda samarali dasturiy ta'minot arxitekturasini loyihalash uchun sun'iy intellekt, dasturiy injiniring va orkestratsiya vositalarining kesishishini o'rganadi.
AI orkestratsiyasiga ehtiyoj
An'anaviy dasturiy ta'minot tizimlari ko'pincha monolit arxitektura bilan ishlab chiqilgan bo'lib, unda barcha komponentlar bir-biriga mahkam bog'langan va chiziqli tarzda birga ishlaydi. Biroq, AI va ML paydo bo'lishi bilan dasturiy ta'minot tizimlari tobora ko'proq taqsimlanadi va markazlashtirilmaydi, bir nechta agentlar umumiy maqsadga erishish uchun birgalikda ishlaydi. Bu bir nechta sun'iy intellekt agentlari o'rtasidagi o'zaro ta'sirlarni samarali boshqaradigan va muvofiqlashtiradigan tizimlarni loyihalashni o'z ichiga olgan sun'iy intellektni orkestratsiya qilish zaruratiga olib keldi.
LangChain: AI agentlarini yaratish uchun asos
LangChain - bu bir-biri bilan va tashqi tizimlar bilan o'zaro aloqada bo'lishi mumkin bo'lgan AI agentlarini yaratish uchun Python ramkasi. U ishlab chiquvchilarga fikrlash, o'rganish va o'zgaruvchan muhitga moslasha oladigan agentlarni yaratishga imkon beruvchi vositalar va kutubxonalar to'plamini taqdim etadi. LangChain Rust dasturlash tilining ustiga qurilgan va AI agentlarini yaratish uchun yuqori darajadagi API taqdim etadi.
DSPy: Orkestratsiya uchun asos
DSPy bir nechta AI agentlarini boshqarishi mumkin bo'lgan taqsimlangan tizimlarni yaratish uchun Python ramkasidir. U ishlab chiquvchilarga bir nechta agentlar o'rtasidagi murakkab o'zaro ta'sirlarni boshqarishi mumkin bo'lgan kengaytiriladigan va moslashuvchan tizimlarni loyihalash va o'rnatishga imkon beruvchi vositalar va kutubxonalar to'plamini taqdim etadi. DSPy Apache Kafka xabar almashish tizimi ustiga qurilgan va taqsimlangan tizimlarni yaratish uchun yuqori darajadagi API taqdim etadi.
LangChain va DSPy bilan AI agentlarini joriy qilish
LangChain va DSPy yordamida AI agentlarini amalga oshirish uchun biz quyidagi bosqichlarni bajarishimiz kerak:
- Agent arxitekturasini aniqlang: AI agenti arxitekturasini, jumladan kirishlar, chiqishlar va boshqa agentlar bilan oʻzaro aloqalarni aniqlang.
- Agent mantiqini amalga oshirish: LangChain yordamida AI agenti mantiqini, jumladan, fikrlash, o‘rganish va moslashish mexanizmlarini amalga oshiring.
- Agentning oʻzaro taʼsirini tartibga solish: Bir nechta sunʼiy intellekt agentlari, jumladan, aloqa protokollari va maʼlumotlar almashish mexanizmlari oʻrtasidagi oʻzaro aloqalarni tartibga solish uchun DSPy-dan foydalaning.
- Tizimni joylashtirish: tizimni bulutli platforma yoki Docker kabi konteynerlashtirish tizimi yordamida o‘rnating.
Kod misoli: LangChain bilan oddiy AI agentini amalga oshirish
LangChain yordamida AI agentini qanday amalga oshirishni ko'rsatadigan oddiy kod misoli:
import langchain
langchain.chains dan LMChain import qiladi
agent = langchain.Agent(
input_schema={"matn": str},
output_schema={"matn": str},
zanjir=LLMCchain(
model="davinci:instructix",
maksimal_uzunlik=2048,
harorat = 0,7,
),
)
# Agent mantiqini amalga oshiring
def agent_logic (kirish_matn):
output_text = agent.run (input_text)
output_text ni qaytaring
# Agentni sinab ko'ring
input_text = "Hayotning ma'nosi nima?"
chiqish_matn = agent_mantiq(kirish_matn)
chop etish (chiqish_matn)
Ushbu kod misoli LangChain yordamida AI agentini qanday aniqlashni, jumladan kirish va chiqish sxemalarini va agent mantig'ini ko'rsatadi. Agent katta til modeli (LLM) zanjiri yordamida amalga oshiriladi, bu AI agentining bir turi bo'lib, matnni o'ylash va yaratishi mumkin.
LangChain va DSPy uchun eng koʻp ishlatiladigan 5-10 ta buyruq/parchalar
LangChain va DSPy uchun eng ko'p ishlatiladigan 5-10 ta eng yaxshi buyruqlar/parchalar:
- langchain.Agent(): Yangi AI agenti namunasini yaratadi.
agent = langchain.Agent(
input_schema={"matn": str},
output_schema={"matn": str},
zanjir=LLMCchain(
model="davinci:instructix",
maksimal_uzunlik=2048,
harorat = 0,7,
),
)
- agent.run(): AI agentini berilgan kiritish bilan ishga tushiradi.
output_text = agent.run (input_text)
- DSPy.create_cluster(): Tarqalgan tizim uchun yangi tugunlar klasterini yaratadi.
klaster = DSPy.create_cluster(
tugunlar soni=5,
node_type = "ishchi",
)
- DSPy.create_agent(): Tarqalgan tizim uchun yangi AI agenti namunasini yaratadi.
agent = DSPy.create_agent(
klaster = klaster,
agent_type = "LLM",
)
- DSPy.deploy_agent(): AI agentini taqsimlangan tizimga joylashtiradi.
DSPy.deploy_agent(
agent=agent,
klaster = klaster,
)
- DSPy.get_agent_status(): AI agenti holatini oladi.
status = DSPy.get_agent_status(
agent=agent,
klaster = klaster,
)
- DSPy.update_agent(): AI agentini yangi ma'lumotlar yoki parametrlar bilan yangilaydi.
DSPy.update_agent(
agent=agent,
klaster = klaster,
new_data={"matn": "yangi kiritilgan matn"},
)
- DSPy.delete_agent(): AI agentini taqsimlangan tizimdan o‘chiradi.
DSPy.delete_agent(
agent=agent,
klaster = klaster,
)
- DSPy.create_chain(): Tarqalgan tizim uchun AI agentlarining yangi zanjirini yaratadi.
zanjir = DSPy.create_chain(
agentlar=[agent1, agent2, agent3],
)
- DSPy.deploy_chain(): AI agentlari zanjirini taqsimlangan tizimga joylashtiradi.
DSPy.deploy_chain(
zanjir = zanjir,
klaster = klaster,
)
Vizualizatsiya
Mana, Chart.js yordamida LangChain va DSPy arxitekturasining vizualizatsiyasi:
{
"type": "pieChart",
"ma'lumotlar": {
"yorliqlar": ["LangChain", "DSPy"],
"ma'lumotlar to'plami": [
{
"label": "AI agentlari",
"ma'lumotlar": [50, 50],
"backgroundColor": ["#4CAF50", "#FF9800"]
}
]
},
"variantlar": {
"sarlavha": {
"displey": rost,
"matn": "LangChain va DSPy arxitekturasi"
},
"afsona": {
"displey": rost
}
}
}
Ushbu vizualizatsiya AI agentlarining LangChain va DSPy o'rtasida taqsimlanishini ko'rsatadi, agentlarning 50% LangChain va 50% DSPy da ishlaydi.
Xulosa
LangChain va DSPy AI agentlarini yaratish va tartibga solish uchun kuchli asosni taqdim etadi, bu esa ishlab chiquvchilarga bir nechta agentlar o'rtasidagi murakkab o'zaro ta'sirlarni samarali boshqarishi mumkin bo'lgan kengaytiriladigan va moslashuvchan tizimlarni loyihalash imkonini beradi. Ushbu maqolada keltirilgan qadamlarni bajarib, ishlab chiquvchilar LangChain va DSPy-dan foydalangan holda AI agentlarini amalga oshirishlari va ularni DSPy-dan foydalangan holda taqsimlangan tizimga joylashtirishlari mumkin. Taqdim etilgan kod misollari va vizualizatsiya LangChain va DSPy imkoniyatlarini namoyish etadi va eng ko'p ishlatiladigan 5-10 ta buyruqlar/parchalar ishlab chiquvchilar uchun tezkor ma'lumotnomani taqdim etadi.