Программ хангамжийг автоматаар хүргэхийн тулд AI агентуудыг ашиглах: DevOps дамжуулах хоолойд LangChain болон DSPy-г нэгтгэх
Танилцуулга
Хиймэл оюун ухаан (AI) болон машин сургалтын (ML) нь хөгжлийн амьдралын мөчлөгийн янз бүрийн талуудад улам бүр нэмэгдэж байгаатай холбоотойгоор програм хангамж хөгжүүлэх орчин хурдацтай хөгжиж байна. AI-ийн хэрэглээний хамгийн ирээдүйтэй чиглэлүүдийн нэг нь телеметрийн болон тасралтгүй интеграци/тасралтгүй байршуулалт (CI/CD) зэрэг програм хангамжийг түгээх үйл явцыг автоматжуулах явдал юм. Энэ нийтлэлд бид програм хангамжийг түгээх үйл явцыг автоматжуулахад хиймэл оюун ухааны агентуудын гүйцэтгэх үүргийг судалж, LangChain, DSPy зэрэг зохион байгуулалтын хэрэгслүүдийн практик хэрэгжилтийг судлах болно.
Програм хангамжийг хүргэхэд хиймэл оюун ухааны агентуудын гүйцэтгэх үүрэг
AI агентууд нь даалгавруудыг бие даан гүйцэтгэж, өгөгдөл, дүрэмд үндэслэн шийдвэр гаргах боломжтой програм хангамжийн программ юм. Програм хангамжийн нийлүүлэлтийн хүрээнд AI агентуудыг янз бүрийн процессуудыг автоматжуулахад ашиглаж болно, тухайлбал:
- Телеметри: AI агентууд програмын үйл ажиллагаа, гүйцэтгэлийн талаарх ойлголтыг өгөхийн тулд програмын бүртгэл, гүйцэтгэлийн хэмжүүр, хэрэглэгчийн санал хүсэлт зэрэг янз бүрийн эх сурвалжаас өгөгдөл цуглуулж, дүн шинжилгээ хийх боломжтой.
- Тасралтгүй интеграцчилал: AI агентууд нь кодын өөрчлөлтийг бүтээх, турших, байршуулах үйл явцыг автоматжуулж, програмыг үргэлж ашиглах боломжтой байдалд байлгах боломжтой.
- Тасралтгүй байршуулалт: AI агентууд үйлдвэрлэлд өөрчлөлт оруулах ажлыг автоматжуулж, хэрэглэгчдэд шинэ функц, засвар оруулахад шаардагдах цаг хугацаа, хүчин чармайлтыг багасгаж чадна.
- Хяналт ба сэрэмжлүүлэг: AI агентууд програмын гүйцэтгэлийг хянаж, хөгжүүлэгчид болон операторуудад гарч болзошгүй асуудлуудыг ноцтой болохоос нь өмнө сэрэмжлүүлэх боломжтой.
LangChain: AI агентуудыг бий болгох хүрээ
LangChain нь янз бүрийн мэдээллийн эх сурвалжтай харилцаж, бие даан даалгавруудыг гүйцэтгэх боломжтой хиймэл оюун ухааны агентуудыг бүтээх Python хүрээ юм. LangChain нь:
- Өгөгдлийн эх сурвалжтай харилцах: LangChain нь агентуудын харилцаж болох мэдээллийн сан, API болон файлын систем зэрэг олон төрлийн өгөгдлийн эх үүсвэрээр хангадаг.
- Даалгавруудыг гүйцэтгэх: LangChain нь текст боловсруулах, зураг таних, байгалийн хэлээр боловсруулах зэрэг агентуудын гүйцэтгэж болох олон төрлийн даалгавруудыг хангадаг.
- Өгөгдлөөс суралцах: LangChain нь агентууд өгөгдлөөс суралцахад ашиглаж болох олон төрлийн машин сургалтын алгоритмуудыг хангадаг.
DSPy: Хуваарилагдсан AI агентуудыг бий болгох хүрээ
DSPy бол том хэмжээний хэрэглээний хэрэгцээг хангахын тулд өргөжүүлэх боломжтой AI агентуудыг бий болгох Python хүрээ юм. DSPy нь хэд хэдэн онцлог шинж чанартай бөгөөд үүнд:
- Distributed computing: DSPy нь агентуудыг олон машин дээр ажиллуулах боломжийг олгодог бөгөөд энэ нь том хэмжээний хэрэглээнд тохиромжтой.
- Өгөгдлийн параллелизм: DSPy нь агентуудад өгөгдлийг зэрэгцүүлэн боловсруулах боломжийг олгодог бөгөөд энэ нь өндөр гүйцэтгэлтэй тооцоолол шаарддаг программуудад тохиромжтой.
- ** Өргөтгөх чадвар**: DSPy нь агентуудад том хэмжээний хэрэглээний хэрэгцээг хангах боломжийг олгодог.
LangChain болон DSPy-г DevOps Pipelines-д нэгтгэх
DevOps дамжуулах хоолойд LangChain болон DSPy-г нэгтгэхийн тулд бид дараах алхмуудыг ашиглаж болно.
- LangChain болон DSPy суулгах: Pip ашиглан LangChain болон DSPy суулгана.
pip install langchain dspy
- LangChain агент үүсгэх: Өгөгдлийн эх сурвалжтай харилцаж, даалгавар гүйцэтгэх боломжтой LangChain агент үүсгэнэ.
langchain импортлох
агент = langchain.Agent(
нэр = "миний_агент",
data_sources=[langchain.DataSource("өгөгдлийн сан", "миний_мэдээллийн сан")],
tasks=[langchain.Task("текст_боловсруулах", "миний_текст_боловсруулах")]
)
- DSPy агент үүсгэх: Олон машин дээр ажиллаж, өгөгдлийг зэрэгцүүлэн боловсруулах боломжтой DSPy агент үүсгэнэ.
dspy импортлох
# DSPy агент үүсгэ
агент = dspy.Agent(
нэр = "миний_агент",
data_sources=[dspy.DataSource("өгөгдлийн сан", "миний_мэдээллийн сан")],
tasks=[dspy.Task("текст_боловсруулах", "миний_текст_боловсруулах")]
)
- LangChain болон DSPy агентуудыг нэгтгэх: Jenkins эсвэл GitLab CI/CD зэрэг хэрэгслийг ашиглан DevOps дамжуулах хоолойд LangChain болон DSPy агентуудыг нэгтгэх.
langchain импортлох
dspy импортлох
# LangChain агент үүсгэ
langchain_agent = langchain.Agent(
нэр = "миний_langchain_агент",
data_sources=[langchain.DataSource("өгөгдлийн сан", "миний_мэдээллийн сан")],
tasks=[langchain.Task("текст_боловсруулах", "миний_текст_боловсруулах")]
)
# DSPy агент үүсгэ
dspy_agent = dspy.Agent(
нэр = "миний_dspya_агент",
data_sources=[dspy.DataSource("өгөгдлийн сан", "миний_мэдээллийн сан")],
tasks=[dspy.Task("текст_боловсруулах", "миний_текст_боловсруулах")]
)
# Агентуудыг DevOps дамжуулах хоолойд нэгтгэх
дамжуулах хоолой = [
langchain_агент,
dspy_агент
]
Хамгийн их ашиглагддаг 5-10 тушаал/хэсэг
LangChain болон DSPy-д хамгийн их ашиглагддаг 5-10 тушаал/хэсэг энд байна:
- LangChain: LangChain агент үүсгэх
langchain импортлох
агент = langchain.Agent(
нэр = "миний_агент",
data_sources=[langchain.DataSource("өгөгдлийн сан", "миний_мэдээллийн сан")],
tasks=[langchain.Task("текст_боловсруулах", "миний_текст_боловсруулах")]
)
- DSPy: DSPy агент үүсгэх
dspy импортлох
агент = dspy.Agent(
нэр = "миний_агент",
data_sources=[dspy.DataSource("өгөгдлийн сан", "миний_мэдээллийн сан")],
tasks=[dspy.Task("текст_боловсруулах", "миний_текст_боловсруулах")]
)
- LangChain: Өгөгдлийн эх сурвалжтай харилцах
langchain импортлох
агент = langchain.Agent(
нэр = "миний_агент",
data_sources=[langchain.DataSource("өгөгдлийн сан", "миний_мэдээллийн сан")],
tasks=[langchain.Task("текст_боловсруулах", "миний_текст_боловсруулах")]
)
өгөгдөл = agent.data_sources[0].get_data()
- DSPy: Өгөгдлийн эх сурвалжтай харилцах
dspy импортлох
агент = dspy.Agent(
нэр = "миний_агент",
data_sources=[dspy.DataSource("өгөгдлийн сан", "миний_мэдээллийн сан")],
tasks=[dspy.Task("текст_боловсруулах", "миний_текст_боловсруулах")]
)
өгөгдөл = agent.data_sources[0].get_data()
- LangChain: Ажил гүйцэтгэх
langchain импортлох
агент = langchain.Agent(
нэр = "миний_агент",
data_sources=[langchain.DataSource("өгөгдлийн сан", "миний_мэдээллийн сан")],
tasks=[langchain.Task("текст_боловсруулах", "миний_текст_боловсруулах")]
)
үр дүн = agent.tasks[0].perform_task(data)
- DSPy: Ажил гүйцэтгэх
dspy импортлох
агент = dspy.Agent(
нэр = "миний_агент",
data_sources=[dspy.DataSource("өгөгдлийн сан", "миний_мэдээллийн сан")],
tasks=[dspy.Task("текст_боловсруулах", "миний_текст_боловсруулах")]
)
үр дүн = агент.даалгаврууд[0].даалгавар гүйцэтгэх(өгөгдөл)
- LangChain: Өгөгдлөөс суралц
langchain импортлох
агент = langchain.Agent(
нэр = "миний_агент",
data_sources=[langchain.DataSource("өгөгдлийн сан", "миний_мэдээллийн сан")],
tasks=[langchain.Task("текст_боловсруулах", "миний_текст_боловсруулах")]
)
агент.датагаас_сургах(өгөгдөл)
- DSPy: Өгөгдлөөс суралц
dspy импортлох
агент = dspy.Agent(
нэр = "миний_агент",
data_sources=[dspy.DataSource("өгөгдлийн сан", "миний_мэдээллийн сан")],
tasks=[dspy.Task("текст_боловсруулах", "миний_текст_боловсруулах")]
)
агент.датагаас_сургах(өгөгдөл)
- LangChain: DevOps дамжуулах хоолойтой нэгтгэх
langchain импортлох
агент = langchain.Agent(
нэр = "миний_агент",
data_sources=[langchain.DataSource("өгөгдлийн сан", "миний_мэдээллийн сан")],
tasks=[langchain.Task("текст_боловсруулах", "миний_текст_боловсруулах")]
)
дамжуулах хоолой = [
төлөөлөгч
]
- DSPy: DevOps дамжуулах хоолойтой нэгтгэх
dspy импортлох
агент = dspy.Agent(
нэр = "миний_агент",
data_sources=[dspy.DataSource("өгөгдлийн сан", "миний_мэдээллийн сан")],
tasks=[dspy.Task("текст_боловсруулах", "миний_текст_боловсруулах")]
)
дамжуулах хоолой = [
төлөөлөгч
]
Дүрслэл
DevOps дамжуулах хоолой дахь LangChain болон DSPy агентуудын дүрслэлийг энд харуулав.
{
"төрөл": "бар",
"өгөгдөл": {
"шошго": ["LangChain", "DSPy"],
"өгөгдлийн багц": [
{
"label": "Агент",
"өгөгдөл": [10, 20],
"backgroundColor": ["rgba(255, 99, 132, 0.2)", "rgba(54, 162, 235, 0.2)"],
"borderColor": ["rgba(255, 99, 132, 1)", "rgba(54, 162, 235, 1)"],
"хилийн өргөн": 1
}
]
},
"сонголт": {
"гарчиг": {
"дэлгэц": үнэн,
"текст": "DevOps дамжуулах хоолой дахь LangChain болон DSPy агентууд"
},
"масштаб": {
"yAxes": [
{
"хачиг": {
"beginAtZero": үнэн
}
}
]
}
}
}
Энэхүү дүрслэл нь DevOps дамжуулах шугам дахь LangChain болон DSPy агентуудыг харуулж байгаа бөгөөд LangChain агент нь 10 ажилтай, DSPy агент нь 20 ажилтай.
Дүгнэлт
Энэ нийтлэлд бид програм хангамжийг түгээх үйл явцыг автоматжуулахад хиймэл оюун ухааны агентуудын гүйцэтгэх үүргийг судалж, LangChain, DSPy зэрэг зохион байгуулалтын хэрэгслүүдийн практик хэрэгжилтийг судалсан. Бид LangChain болон DSPy-ийг өгөгдлийн эх сурвалжтай харилцах, даалгавар гүйцэтгэх, өгөгдлөөс суралцах боломжтой AI агентуудыг бий болгоход хэрхэн ашиглаж болохыг харсан. Бид мөн Jenkins эсвэл GitLab CI/CD зэрэг хэрэгслийг ашиглан LangChain болон DSPy-ийг DevOps дамжуулах хоолойд хэрхэн нэгтгэж болохыг олж харсан. Програм хангамж боловсруулахад AI болон ML-ийг нэвтрүүлэх нь нэмэгдэж байгаа тул LangChain болон DSPy нь програм хангамжийг түгээх үйл явцыг автоматжуулахыг эрэлхийлж буй хөгжүүлэгчид болон операторуудын хувьд улам бүр чухал хэрэгсэл болж байна.