Izveidojiet LangChain aģentu | B4N1

Izveidojiet LangChain aģentu

5 months ago · b4n1 Read time: 4 min

Pašdziedējošās programmatūras sistēmu izveide ar vairāku aģentu AI arhitektūrām un orķestrēšanas rīkiem

Ievads

Mūsdienu straujajā un nepārtraukti mainīgajā programmatūras vidē programmatūras inženieru un DevOps komandu galvenā prioritāte ir izveidot stabilas un adaptīvas sistēmas, kas spēj izturēt ražošanu. Tradicionālās programmatūras izstrādes pieejas bieži ir vērstas uz monolītu sistēmu izveidi, kuras ir pakļautas kļūmēm un dīkstāvēm. Tomēr līdz ar vairāku aģentu AI arhitektūru un orķestrēšanas rīku parādīšanos tagad ir iespējams izveidot pašatjaunojošas programmatūras sistēmas, kas spēj pielāgoties mainīgajiem apstākļiem un atgūties no kļūmēm.

Šajā rakstā mēs izpētīsim vairāku aģentu AI arhitektūru un orķestrēšanas rīku jēdzienu un to, kā tos var izmantot, lai izveidotu pašatjaunojošās programmatūras sistēmas. Mēs arī iedziļināsimies jaunākajās AI, programmatūras inženierijas un DevOps tendencēs un izpētīsim tādu rīku lomu kā LangChain un DSPy stabilu un adaptīvu programmatūras sistēmu izveidē.

Kas ir vairāku aģentu AI arhitektūras?

Vairāku aģentu AI arhitektūras ir AI sistēmas veids, kas sastāv no vairākiem autonomiem aģentiem, kas mijiedarbojas viens ar otru, lai sasniegtu kopīgu mērķi. Katram aģentam ir savs spēju, zināšanu un mērķu kopums, un viņi strādā kopā, lai sasniegtu augstāka līmeņa mērķi. Vairāku aģentu AI arhitektūras ir īpaši noderīgas sarežģītās sistēmās, kurās ir vairākas ieinteresētās puses, pretrunīgi mērķi un neskaidri rezultāti.

Programmatūras inženierijā vairāku aģentu AI arhitektūras var izmantot, lai izveidotu pašatveseļošanās sistēmas, kas var atklāt un reaģēt uz kļūmēm reāllaikā. Piemēram, vairāku aģentu AI sistēma var sastāvēt no vairākiem aģentiem, kas pārrauga dažādus sistēmas komponentus, atklāj kļūmes un aktivizē atkopšanas darbības, lai atjaunotu sistēmas veselīgu stāvokli.

Kas ir orķestrēšanas rīki?

Orķestrācijas rīki ir programmatūras sistēmas, kas automatizē lietojumprogrammu un pakalpojumu izvietošanu, mērogošanu un pārvaldību. Tie nodrošina centralizētu platformu vairāku komponentu, pakalpojumu un lietojumprogrammu pārvaldībai, kā arī ļauj izstrādātājiem definēt sarežģītas darbplūsmas un automatizāciju.

Orķestrācijas rīki ir būtiski pašizveseļošanās programmatūras sistēmu izveidē, jo tie ļauj izstrādātājiem definēt atkopšanas darbplūsmas un automatizāciju, ko var aktivizēt, reaģējot uz kļūmēm. Piemēram, var izmantot orķestrēšanas rīku, lai automatizētu rezerves sistēmas izvietošanu vai aktivizētu atkopšanas darbību, ja sistēmas komponents neizdodas.

LangChain un DSPy: orķestrēšanas rīki vairāku aģentu AI arhitektūrām

LangChain un DSPy ir divi populāri orķestrēšanas rīki, kas paredzēti darbam ar vairāku aģentu AI arhitektūrām. LangChain ir Python bibliotēka, kas nodrošina vienkāršu un intuitīvu API vairāku aģentu AI sistēmu izveidei, savukārt DSPy ir Python bibliotēka, kas nodrošina augsta līmeņa API darbplūsmu definēšanai un izpildei.

LangChain un DSPy ļauj izstrādātājiem izveidot pašatveseļojošas programmatūras sistēmas, kas var atklāt un reaģēt uz kļūmēm reāllaikā. Tie nodrošina virkni funkciju, tostarp:

  • Aģentu pārvaldība: LangChain un DSPy nodrošina API, lai izveidotu, pārvaldītu un mijiedarbotos ar aģentiem vairāku aģentu AI sistēmā.
  • Darbplūsmas definīcija: LangChain un DSPy ļauj izstrādātājiem definēt sarežģītas darbplūsmas un automatizāciju, ko var aktivizēt, reaģējot uz kļūmēm.
  • Atkopšanas darbības: LangChain un DSPy nodrošina API atkopšanas darbību aktivizēšanai, piemēram, dublējuma sistēmas izvietošanai vai atkopšanas darbības aktivizēšanai, ja sistēmas komponents neizdodas.

Pašdziedināšanas sistēmas izveide, izmantojot LangChain un DSPy

Lai demonstrētu LangChain un DSPy jaudu, izveidosim vienkāršu pašatveseļošanās sistēmu, kas spēj atklāt un reaģēt uz kļūmēm tīmekļa lietojumprogrammā. Mēs izmantosim LangChain, lai izveidotu vairāku aģentu AI sistēmu, kas uzrauga lietojumprogrammas veiktspēju un aktivizē atkopšanas darbību, ja tiek konstatēta kļūme.

Šeit ir vienkāršs koda bloks, kas parāda, kā izveidot pašatveseļošanās sistēmu ar LangChain un DSPy:

importēt langchain
no langchain importa aģenta, ķēdes


aģents = aģents(
    name = "self-healing-agent",
    ķēde = ķēde (
        name = "self-healing-chain",
        soļi=[
            {"name": "monitor", "func": monitor_performance},
            {"name": "atkopt", "func": atkopšanas_sistēma},
        ],
    ),
)

# Definējiet funkciju, lai pārraudzītu lietojumprogrammas veiktspēju
def monitor_performance():
    # Simulēt kļūmes noteikšanu
    ja nejaušs.random() < 0,5:
        atgriezties {"failure": True}
    cits:
        return {"failure": False}

# Definējiet funkciju sistēmas atkopšanai
def recovery_system(kļūme):
    # Iedarbiniet atkopšanas darbību
    ja neizdodas ["neveiksme"]:
        print("Notiek atkopšanas darbības aktivizēšana...")
        # Izvietojiet rezerves sistēmu vai aktivizējiet atkopšanas darbību
        # ...

# Izveidojiet DSPy darbplūsmu
darbplūsma = DSPy.Workflow(
    name = "self-healing-workflow",
    soļi=[
        {"name": "monitor", "func": monitor_performance},
        {"name": "atkopt", "func": atkopšanas_sistēma},
    ],
)

# Izpildiet darbplūsmu
workflow.execute()

Šis koda bloks parāda, kā izveidot LangChain aģentu, kas uzrauga lietojumprogrammas veiktspēju un aktivizē atkopšanas darbību, ja tiek konstatēta kļūme. DSPy darbplūsma tiek izmantota, lai definētu atkopšanas darbību un izpildītu to, reaģējot uz kļūmi.

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

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

  1. langchain.Agent(): izveido jaunu LangChain aģentu.
  2. langchain.Chain(): izveido jaunu LangChain ķēdi.
  3. dspypy.Workflow(): izveido jaunu DSPy darbplūsmu.
  4. "agent.execute()": izpilda LangChain aģentu.
  5. workflow.execute(): izpilda DSPy darbplūsmu.
  6. agent.chain.steps.append({"nosaukums": "solis", "func": func}): pievieno jaunu soli LangChain ķēdei.
  7. workflow.steps.append({"nosaukums": "solis", "func": func}): pievieno jaunu soli DSPy darbplūsmai.
  8. agent.chain.steps.remove({"nosaukums": "solis"}): noņem soli no LangChain ķēdes.
  9. workflow.steps.remove({"nosaukums": "solis"}): noņem soli no DSPy darbplūsmas.
  10. agent.chain.steps.insert(0, {"name": "solis", "func": func}): ievieto jaunu soli LangChain ķēdes sākumā.

Vizualizācija

Lūk, LangChain un DSPy darbplūsmas vizualizācija, izmantojot Chart.js:

{
  "tips": "josla",
  "dati": {
    "labels": ["Monitor", "Recover"],
    "datu kopas": [
      {
        "label": "LangChain",
        "dati": [10, 20],
        "backgroundColor": "rgba(255, 99, 132, 0.2)",
        "borderColor": "rgba(255, 99, 132, 1)",
        "borderWidth": 1
      },
      {
        "label": "DSPy",
        "dati": [20, 30],
        "backgroundColor": "rgba(54, 162, 235, 0.2)",
        "borderColor": "rgba(54, 162, 235, 1)",
        "borderWidth": 1
      }
    ]
  },
  "opcijas": {
    "title": {
      "displejs": patiess,
      "text": "LangChain un DSPy darbplūsma"
    },
    "svari": {
      "yAxes": [
        {
          "ērces": {
            "beginAtZero": taisnība
          }
        }
      ]
    }
  }
}

Šī vizualizācija parāda LangChain un DSPy darbplūsmu ar darbību "Monitor" kreisajā pusē un darbību "Atkopt" labajā pusē. LangChain darbplūsmu attēlo sarkana josla, savukārt DSPy darbplūsmu attēlo zila josla.

Secinājums

Pašatveseļojošas programmatūras sistēmu izveide ar vairāku aģentu AI arhitektūrām un orķestrēšanas rīkiem ir jaudīga pieeja, lai radītu stabilas un adaptīvas sistēmas, kas spēj izturēt ražošanu. LangChain un DSPy ir divi populāri orķestrēšanas rīki, kas ļauj izstrādātājiem izveidot pašatveseļošanās sistēmas, kas var noteikt un reaģēt uz kļūmēm reāllaikā.

Šajā rakstā mēs esam izpētījuši vairāku aģentu AI arhitektūru un orķestrēšanas rīku koncepciju un parādījuši, kā izveidot pašatveseļošanās sistēmu, izmantojot LangChain un DSPy. Mēs esam arī nodrošinājuši virkni praktisku piemēru un koda fragmentu, lai palīdzētu izstrādātājiem sākt veidot pašizveseļošanās sistēmas.

Neatkarīgi no tā, vai esat programmatūras inženieris, DevOps inženieris vai mākslīgā intelekta pētnieks, pašatjaunošanās programmatūras sistēmu izveide, izmantojot LangChain un DSPy, ir spēcīga pieeja, lai radītu stabilas un adaptīvas sistēmas, kas spēj izturēt ražošanu.


Have Questions?

Let's Talk

Contact me on LinkedIn