Giriş
DevOps inqilabı proqram təminatının hazırlanması, yerləşdirilməsi və idarə edilməsi üsulunu dəyişdirdi. Bununla belə, müasir proqram sistemlərinin mürəkkəbliyi artdıqca, avtomatlaşdırma, uyğunluq və miqyaslılığa ehtiyac da artır. Süni intellekt (AI) və maşın öyrənməsindən (ML) istifadə edərək, DevOps boru kəmərlərini tənzimləmək üçün AI ilə işləyən DevOps-un gəldiyi yer budur. Bu yazıda biz agent əsaslı avtomatlaşdırmaya imkan verən iki qabaqcıl çərçivə olan LangChain və DSPy ilə süni intellektlə işləyən DevOps-u necə təşkil edəcəyimizi araşdıracağıq.
LangChain nədir?
LangChain, tərtibatçılara modul, genişlənə bilən arxitekturadan istifadə edərək danışıq süni intellekt proqramları yaratmağa imkan verən açıq mənbəli çərçivədir. O, müxtəlif məlumat mənbələri ilə qarşılıqlı əlaqə qura, tapşırıqları yerinə yetirə və qərarlar qəbul edə bilən AI agentləri yaratmaq üçün əvvəlcədən hazırlanmış komponentlər və alətlər toplusunu təmin edir. LangChain Rust proqramlaşdırma dilinin üzərində qurulub və Python və Go kimi digər dillərdə istifadə oluna bilər.
DSPy nədir?
DSPy, LangChain çərçivəsinə sadə, Pythonic interfeysi təqdim edən Python kitabxanasıdır. O, tərtibatçılara daha tanış sintaksis və iş prosesindən istifadə edərək süni intellekt agentləri yaratmağa imkan verir ki, bu da LangChain-i mövcud Python əsaslı DevOps boru kəmərləri ilə inteqrasiya etməyi asanlaşdırır.
LangChain və DSPy-nin DevOps Pipelines ilə inteqrasiyası
LangChain və DSPy-ni DevOps boru kəmərləri ilə inteqrasiya etmək üçün biz tapşırıqları yerinə yetirə, qərarlar qəbul edə və müxtəlif məlumat mənbələri ilə qarşılıqlı əlaqə qura bilən AI agenti yaratmalıyıq. Budur prosesin yüksək səviyyəli icmalı:
- AI Agentini təyin edin: Kodun yerləşdirilməsi, testlərin icrası və performansa nəzarət kimi tapşırıqları yerinə yetirə bilən LangChain agenti yaradın.
- DevOps Alətləri ilə inteqrasiya edin: AI agentini Jenkins, GitLab CI/CD və ya Docker kimi DevOps alətləri ilə inteqrasiya edin.
- AI Agenti konfiqurasiya edin: AI agentini verilənlər bazası, API və ya fayl sistemləri kimi müxtəlif məlumat mənbələri ilə qarşılıqlı əlaqədə olmaq üçün konfiqurasiya edin.
- AI Agentini öyrədin: Maşın öyrənmə alqoritmləri və DevOps boru kəmərindən verilənlərdən istifadə edərək AI agentini öyrədin.
Praktiki Nümunə: LangChain və DSPy ilə kodun yerləşdirilməsi
LangChain və DSPy istifadə edərək kodun necə yerləşdirilməsinə dair sadə bir nümunə:
idxal langchain
langchain.agents idxal agentindən
langchain.llms idxal LLM-dən
# LangChain agenti yaradın
agent = agent(
llm=LLM(
model_name="davinci",
max_tokens=2048,
temperatur = 0,5,
),
zəncir=[
langchain.Chain(
ad = "yerləşdirmə_kodu",
addımlar=[
langchain.Addım(
ad = "git_clone",
func=lambda: git_clone("https://github.com/user/repo.git"),
),
langchain.Addım(
ad = "build_code",
func=lambda: build_code(),
),
langchain.Addım(
ad = "yerləşdirmə_kodu",
func=lambda: deploy_code(),
),
],
),
],
)
# AI agentindən istifadə edərək kodu yerləşdirin
agent.deploy_code()
Bu nümunədə üç addımı yerinə yetirən LangChain agenti yaradırıq:
- Git-dən istifadə edərək kod anbarını klonlayır.
- Quraşdırma alətindən istifadə edərək kodu qurur.
- Yerləşdirmə alətindən istifadə edərək kodu yerləşdirir.
Süni intellekt agenti qərar qəbul etmək və tapşırıqları yerinə yetirmək üçün dil modelindən (LLM) istifadə edir.
Ən çox istifadə olunan 5-10 əmr/parça
LangChain və DSPy üçün ən çox istifadə edilən bəzi əmrlər və fraqmentlər bunlardır:
- LangChain agenti yaradın:
agent = Agent(llm=LLM(model_name="davinci", max_tokens=2048, temperatur=0,5), zəncir=[langchain.Chain(name="deploy_code", addımlar=[langchain.Step(name="git_lambda", fun), git_clone("https://github.com/user/repo.git"))])]) - AI agentindən istifadə edərək kodu yerləşdirin:
agent.deploy_code() - AI agentini öyrədin:
agent.train(data=[{"input": "deploy code", "output": "deployed code"}]) - DevOps alətləri ilə inteqrasiya olun:
agent.integrate_with_jenkins() - AI agentini konfiqurasiya edin:
agent.configure(llm=LLM(model_name="davinci", max_tokens=2048, temperatur=0,5)) - Agentin statusunu əldə edin:
agent.status() - AI agentinin qeydlərini əldə edin:
agent.logs() - Agentin konfiqurasiyasını yeniləyin:
agent.update_config(llm=LLM(model_name="davinci", max_tokens=2048, temperatur=0,5)) - AI agentini silin:
agent.delete() - Agentin göstəricilərini əldə edin:
agent.metrics()
Vizuallaşdırma
Budur, Chart.js istifadə edərək LangChain və DSPy arxitekturasının vizuallaşdırılması:
{
"növ": "bar",
"data": {
"etiketlər": ["LangChain", "DSPy"],
"verilənlər dəsti": [
{
"label": "komponentlər",
"data": [10, 5],
"backgroundColor": ["#4CAF50", "#FF9800"],
"borderColor": ["#3e8e41", "#ff9900"],
"borderWidth": 1
}
]
},
"seçimlər": {
"başlıq": {
"ekran": doğru,
"text": "LangChain və DSPy Architecture"
},
"əfsanə": {
"ekran": doğrudur
},
"tərəzi": {
"yAxes": [
{
"gənə": {
"beginAtZero": doğrudur
}
}
]
}
}
}
Bu vizuallaşdırma LangChain və DSPy-də komponentlərin sayını göstərir.
Nəticə
Bu yazıda biz agent əsaslı avtomatlaşdırmaya imkan verən iki qabaqcıl çərçivə olan LangChain və DSPy ilə süni intellektlə işləyən DevOps-u necə təşkil edəcəyimizi araşdırdıq. Biz süni intellektlə işləyən DevOps-un üstünlüklərini, o cümlədən təkmilləşdirilmiş avtomatlaşdırma, uyğunluq və miqyaslılığı müzakirə etdik. Biz həmçinin LangChain və DSPy-dən istifadə edərək kodun yerləşdirilməsinin praktiki nümunəsini, həmçinin ən çox istifadə olunan əmrlərin və fraqmentlərin siyahısını təqdim etdik. Nəhayət, biz Chart.js istifadə edərək LangChain və DSPy arxitekturasını vizuallaşdırdıq. LangChain və DSPy ilə tərtibatçılar süni intellekt və maşın öyrənməsinin gücündən istifadə edən daha səmərəli, genişləndirilə bilən və avtomatlaşdırılmış DevOps boru kəmərləri qura bilərlər.