Ar AI darbināmas orķestrācijas ieviešana ar DSPy un LangChain uzlabotiem izstrādātājiem | B4N1

Ar AI darbināmas orķestrācijas ieviešana ar DSPy un LangChain uzlabotiem izstrādātājiem

3 months ago · b4n1 Read time: 3 min

Ar AI darbināmas orķestrācijas ieviešana ar DSPy un LangChain uzlabotām izstrādātājprogrammām

Ievads

Mūsdienu straujajā programmatūras izstrādes vidē DevOps komandas pastāvīgi meklē veidus, kā optimizēt piegādes cauruļvadus, uzlabot efektivitāti un samazināt izmaksas. Viena daudzsološa pieeja ir mākslīgā intelekta (AI) un mašīnmācīšanās (ML) integrācija DevOps darbplūsmās. Šajā rakstā ir apskatīta ar AI darbināmas orķestrēšanas ieviešana, izmantojot DSPy un LangChain — divas visprogresīvākās sistēmas, kas ļauj izstrādāt mērogojamu un adaptīvu arhitektūru AI vadītiem programmatūras piegādes cauruļvadiem.

Fons

DevOps ir mainījis programmatūras izstrādes, izvietošanas un uzturēšanas veidu. Tomēr tradicionālie DevOps cauruļvadi bieži paļaujas uz manuāliem procesiem, skriptiem un rīkiem, kas var izraisīt neefektivitāti, kļūdas un aizkavēšanos. AI un ML var palīdzēt risināt šīs problēmas, nodrošinot paredzamas analītikas, automatizācijas un optimizācijas iespējas.

DSPy: ietvars AI vadītām izstrādātājiem

DSPy ir atvērtā pirmkoda ietvars, kas ļauj izstrādāt AI vadītus DevOps cauruļvadus. Tas nodrošina bibliotēku un rīku komplektu AI modeļu veidošanai, izvietošanai un pārvaldībai, kā arī to integrēšanai ar DevOps rīkiem un darbplūsmām.

DSPy galvenās funkcijas

  • Modeļu pārvaldība: DSPy nodrošina centralizētu modeļu pārvaldības sistēmu, kas ļauj izstrādātājiem izveidot, izvietot un pārvaldīt AI modeļus vairākās vidēs.
  • Cauruļvadu orķestrēšana: DSPy ļauj izveidot ar AI vadītus konveijerus, kas automatizē uzdevumus, piemēram, testēšanu, izvietošanu un uzraudzību.
  • Integrācija: DSPy atbalsta integrāciju ar populāriem DevOps rīkiem, tostarp Jenkins, GitLab un Docker.

LangChain: ietvars ar AI darbināmu lietojumprogrammu izveidei

LangChain ir atvērtā koda ietvars, kas ļauj izstrādāt ar AI darbināmas lietojumprogrammas. Tas nodrošina bibliotēku un rīku kopu AI modeļu veidošanai, izvietošanai un pārvaldībai, kā arī to integrēšanai tīmekļa lietojumprogrammās.

LangChain galvenās funkcijas

  • Modeļu pārvaldība: LangChain nodrošina centralizētu modeļu pārvaldības sistēmu, kas ļauj izstrādātājiem izveidot, izvietot un pārvaldīt AI modeļus vairākās vidēs.
  • API integrācija: LangChain ļauj izveidot RESTful API, kas AI modeļus un pakalpojumus pakļauj tīmekļa lietojumprogrammām.
  • Tīmekļa lietojumprogrammu integrācija: LangChain atbalsta integrāciju ar populārām tīmekļa ietvariem, tostarp Django, Flask un FastAPI.

Ar AI darbināmas orķestrācijas ieviešana ar DSPy un LangChain

Lai ieviestu ar AI darbinātu orķestrēšanu ar DSPy un LangChain, mēs veiksim šīs darbības:

  1. Instalējiet DSPy un LangChain: instalējiet DSPy un LangChain, izmantojot pip:

pip instalēt dspy langchain

2. **Izveidojiet DSPy projektu**: izveidojiet jaunu DSPy projektu, izmantojot komandu `dspy init':
    ```bah
dspy init my_project

3. Izveidojiet LangChain projektu: izveidojiet jaunu LangChain projektu, izmantojot komandu "langchain init". ```bah langchain init my_project

4. **Definēt AI modeļus**: definējiet AI modeļus, izmantojot DSPy un LangChain. Piemēram, mēs varam izveidot vienkāršu mašīnmācīšanās modeli, izmantojot scikit-learn:
    ``` python
no sklearn.linear_model importēšanas LogisticRegression
no dspy.models importa modeļa

klase MyModel (modelis):
    def __init__(self):
        super().__init__()
        self.model = LogisticRegression()

    def prognozēt(sevi, dati):
        atgriezties self.model.predict(data)

5. Izveidot cauruļvadu: izveidojiet cauruļvadu, izmantojot DSPy, kas automatizē uzdevumus, piemēram, testēšanu un izvietošanu. Piemēram: ``` python no dspy.pipeline importa cauruļvada

klase MyPipeline (cauruļvads): def init(self): super().init() self.model = MyModel()

def run (self):
    # Pārbaudiet modeli
    self.model.test()

    # Izvietojiet modeli
    self.model.deploy()
6. **Integrēt ar LangChain**: integrējiet konveijeru ar LangChain, izmantojot langchain bibliotēku. Piemēram:
    ``` python
no langchain importēšanas API

klases MyAPI(API):
    def __init__(self):
        super().__init__()
        self.pipeline = Mans cauruļvads()

    def run (self):
        self.pipeline.run()

7. Izvietojiet lietojumprogrammu: izvietojiet lietojumprogrammu, izmantojot mākoņa platformu, piemēram, AWS vai Google Cloud.

Vizualizācija

Lai vizualizētu ar AI darbinātu orķestrēšanas cauruļvadu, mēs varam izmantot grafiku datu bāzi, piemēram, Neo4j. Mēs varam izveidot diagrammas modeli, kas attēlo konveijeru, tostarp AI modeļus, uzdevumus un darbplūsmas.

Šeit ir diagrammas modeļa piemērs, izmantojot Neo4j:

IZVEIDOT (modelis:Model {name:"MyModel", ierakstiet:"MachineLearning"})
IZVEIDOT (cauruļvads:Pipeline {name:"MyPipeline", ierakstiet:"AI"})
IZVEIDOT (task:Task {name:"TestModel", ierakstiet:"Testēšana"})
CREATE (darbplūsma: Workflow {name:"DeployModel", ierakstiet:"Deployment"})

IZVEIDOT (modelis)-[:HAS_TASK]->(uzdevums)
IZVEIDOT (konveijera)-[:HAS_WORKFLOW]->(darbplūsma)
IZVEIDOT (cauruļvads)-[:HAS_MODEL]->(modelis)

Grafika modeļa renderēšanai varam izmantot vizualizācijas rīku, piemēram, Graphviz.

Šeit ir Graphviz konfigurācijas faila piemērs:

divdabu cauruļvads {
    mezgls[shape=box]
    modelis[label="Mans modelis"]
    cauruļvads[label="Mans cauruļvads"]
    uzdevums[label="TestModel"]
    darbplūsma[label="DeployModel"]

    modelis->uzdevums[label="HAS_TASK"]
    cauruļvads->darbplūsma[label="HAS_WORKFLOW"]
    cauruļvads->modelis[label="HAS_MODEL"]
}

5–10 populārākās komandas/fragmenti

Šeit ir 5–10 populārākās DSPy un LangChain komandas/fragmenti:

DSPy * dspy init my_project: inicializējiet jaunu DSPy projektu. * dspy model my_model: izveidojiet jaunu AI modeli, izmantojot DSPy. * dspy konveijera my_pipeline: izveidojiet jaunu konveijeru, izmantojot DSPy. * dspy deploy my_model: izvietojiet AI modeli, izmantojot DSPy. LangChain * langchain init my_project: inicializējiet jaunu LangChain projektu. * "langchain api my_api": izveidojiet jaunu API, izmantojot LangChain. * langchain modelis my_model: izveidojiet jaunu AI modeli, izmantojot LangChain. * "langchain deploy my_model": izvietojiet AI modeli, izmantojot LangChain.

Secinājums

Šajā rakstā mēs izpētījām ar AI darbināmas orķestrēšanas ieviešanu, izmantojot DSPy un LangChain. Mēs izstrādājām mērogojamu un adaptīvu arhitektūru mākslīgā intelekta vadītiem programmatūras piegādes cauruļvadiem un nodrošinājām soli pa solim ceļvedi, kā ieviest ar AI darbinātu orķestrēšanu. Mēs arī vizualizējām cauruļvadu, izmantojot grafiku datu bāzi, un sniedzām sarakstu ar 5–10 visbiežāk izmantotajām komandām/fragmentiem DSPy un LangChain.

Ievērojot šo rokasgrāmatu, DevOps komandas var izmantot AI un ML, lai optimizētu piegādes cauruļvadus, uzlabotu efektivitāti un samazinātu izmaksas.


Have Questions?

Let's Talk

Contact me on LinkedIn