** Dirbtinio intelekto valdomos orkestruotės įdiegimas naudojant DSPy ir „LangChain“, kad būtų patobulintas „DevOps“**
Įvadas
Šiandienos sparčiai besivystančioje programinės įrangos kūrimo aplinkoje „DevOps“ komandos nuolat ieško būdų, kaip optimizuoti pristatymo vamzdynus, pagerinti efektyvumą ir sumažinti išlaidas. Vienas iš perspektyvių būdų yra dirbtinio intelekto (AI) ir mašininio mokymosi (ML) integravimas į „DevOps“ darbo eigą. Šiame straipsnyje nagrinėjamas dirbtinio intelekto valdomo orkestravimo įgyvendinimas naudojant DSPy ir LangChain – dvi pažangiausias sistemas, leidžiančias sukurti keičiamo dydžio ir prisitaikančią architektūrą dirbtinio intelekto valdomiems programinės įrangos tiekimo vamzdynams.
Fonas
„DevOps“ pakeitė programinės įrangos kūrimo, diegimo ir priežiūros būdus. Tačiau tradiciniai „DevOps“ dujotiekiai dažnai priklauso nuo rankinių procesų, scenarijų ir įrankių, todėl gali atsirasti neveiksmingumo, klaidų ir vėlavimų. AI ir ML gali padėti spręsti šiuos iššūkius suteikdami nuspėjamosios analizės, automatizavimo ir optimizavimo galimybes.
DSPy: DI pagrindu sukurtų kūrėjų sistema
DSPy yra atvirojo kodo sistema, leidžianti kurti AI valdomus DevOps vamzdynus. Jame pateikiamas bibliotekų ir įrankių rinkinys, skirtas dirbtinio intelekto modeliams kurti, diegti ir valdyti, taip pat integruoti juos su „DevOps“ įrankiais ir darbo eigomis.
Pagrindinės DSPy savybės
- Modelių valdymas: DSPy suteikia centralizuotą modelių valdymo sistemą, leidžiančią kūrėjams kurti, įdiegti ir valdyti AI modelius įvairiose aplinkose.
- Pipeline Orchestration: DSPy įgalina kurti AI valdomus vamzdynus, kurie automatizuoja užduotis, tokias kaip testavimas, diegimas ir stebėjimas.
- Integravimas: DSPy palaiko integraciją su populiariais „DevOps“ įrankiais, įskaitant „Jenkins“, „GitLab“ ir „Docker“.
LangChain: DI naudojamų programų kūrimo sistema
„LangChain“ yra atvirojo kodo sistema, leidžianti kurti AI pagrįstas programas. Jame pateikiamas bibliotekų ir įrankių rinkinys, skirtas dirbtinio intelekto modeliams kurti, diegti ir valdyti, taip pat juos integruoti su žiniatinklio programomis.
Pagrindinės „LangChain“ savybės
- Modelių valdymas: „LangChain“ teikia centralizuotą modelių valdymo sistemą, leidžiančią kūrėjams kurti, įdiegti ir valdyti AI modelius įvairiose aplinkose.
- API integracija: „LangChain“ leidžia kurti RESTful API, kurios AI modelius ir paslaugas atskleidžia žiniatinklio programoms.
- Žiniatinklio programų integravimas: „LangChain“ palaiko integraciją su populiariomis žiniatinklio sistemomis, įskaitant „Django“, „Flask“ ir „FastAPI“.
** Dirbtinio intelekto valdomos orkestruotės įgyvendinimas naudojant DSPy ir LangChain**
Norėdami įdiegti DI valdomą orkestravimą su DSPy ir LangChain, atliksime šiuos veiksmus:
- Įdiekite DSPy ir LangChain: įdiekite DSPy ir LangChain naudodami pip: ''bash pip įdiegti dspy langchain
2. **Sukurkite DSPy projektą**: sukurkite naują DSPy projektą naudodami komandą „dspy init“:
''bash
dspy init my_project
- Sukurkite „LangChain“ projektą: sukurkite naują „LangChain“ projektą naudodami komandą „langchain init“: ''bash langchain init mano_projektas
4. **Apibrėžkite AI modelius**: apibrėžkite AI modelius naudodami DSPy ir LangChain. Pavyzdžiui, galime sukurti paprastą mašininio mokymosi modelį naudodami scikit-learn:
``` python
iš sklearn.linear_model import LogisticRegression
iš dspy.models importo modelis
klasė MyModel (modelis):
def __init__(self):
super().__init__()
self.model = LogisticRegression()
def numatyti (savaime, duomenys):
return self.model.predict(data)
- Sukurti dujotiekį: sukurkite dujotiekį naudodami DSPy, kuris automatizuoja užduotis, pvz., testavimą ir diegimą. Pavyzdžiui:
iš dspy.pipeline import Pipeline
klasė MyPipeline (pipeline): def init(self): super().init() self.model = MyModel()
def run (self):
# Išbandykite modelį
self.model.test()
# Įdiekite modelį
self.model.deploy()
6. **Integruoti su LangChain**: integruokite konvejerį su LangChain naudodami langchain biblioteką. Pavyzdžiui:
``` python
iš langchain importavimo API
klasės MyAPI(API):
def __init__(self):
super().__init__()
self.pipeline = MyPipeline()
def run (self):
self.pipeline.run()
- Įdiekite programą: įdiekite programą naudodami debesies platformą, pvz., AWS arba „Google Cloud“.
Vizualizacija
Norėdami vizualizuoti AI varomą orkestravimo vamzdyną, galime naudoti grafikų duomenų bazę, pvz., Neo4j. Galime sukurti grafiko modelį, vaizduojantį dujotiekį, įskaitant AI modelius, užduotis ir darbo eigas.
Čia yra grafiko modelio, naudojant Neo4j, pavyzdys:
KURTI (modelis:Modelis {name:"MyModel", tipas:"MachineLearning"})
KURTI (pipeline:Pipeline {name:"MyPipeline", tipas:"AI"})
KURTI (užduotis:Task {name:"TestModel", įveskite:"Testing"})
KURTI (darbo eiga:Workflow {name:"DeployModel", tipas:"Deployment"})
KURTI (modelis)-[:HAS_TASK]->(užduotis)
KURTI (sukurti)-[:HAS_WORKFLOW]->(darbo eiga)
KURTI (vamzdynas)-[:HAS_MODEL]->(modelis)
Grafiko modeliui pateikti galime naudoti vizualizacijos įrankį, pvz., Graphviz.
Štai Graphviz konfigūracijos failo pavyzdys:
dviženklis vamzdynas {
mazgas[shape=box]
modelis[label="Mano modelis"]
vamzdynas[label="MyPipeline"]
užduotis[label="TestModel"]
darbo eiga[label="DeployModel"]
modelis->užduotis[label="HAS_TASK"]
vamzdynas->darbo eiga[label="HAS_WORKFLOW"]
vamzdynas->modelis[label="HAS_MODEL"]
}
5–10 dažniausiai naudojamų komandų / fragmentų
Čia yra 5–10 dažniausiai naudojamų DSPy ir LangChain komandų / fragmentų:
DSPy
* dspy init my_project: inicijuokite naują DSPy projektą.
* „dspy model my_model“: sukurkite naują AI modelį naudodami DSPy.
* dspy vamzdynas my_pipeline: sukurkite naują konvejerį naudodami DSPy.
* dspy deploy my_model: diegti AI modelį naudojant DSPy.
LangChain
* „langchain init my_project“: inicijuokite naują „LangChain“ projektą.
* „langchain api my_api“: sukurkite naują API naudodami „LangChain“.
* „langchain modelis mano_modelis“: sukurkite naują AI modelį naudodami „LangChain“.
* „langchain deploy my_model“: įdiekite AI modelį naudodami „LangChain“.
Išvada
Šiame straipsnyje mes ištyrėme AI valdomo orkestravimo įgyvendinimą naudojant DSPy ir LangChain. Sukūrėme keičiamo dydžio ir prisitaikančią architektūrą dirbtiniu intelektu pagrįstiems programinės įrangos tiekimo vamzdynams ir pateikėme nuoseklų vadovą, kaip įgyvendinti DI valdomą orkestravimą. Mes taip pat vizualizavome dujotiekį naudodami grafikų duomenų bazę ir pateikėme 5–10 dažniausiai naudojamų komandų / fragmentų, skirtų DSPy ir LangChain, sąrašą.
Vadovaudamosi šiuo vadovu, „DevOps“ komandos gali panaudoti AI ir ML, siekdamos optimizuoti savo pristatymo vamzdynus, pagerinti efektyvumą ir sumažinti išlaidas.