Sukurkite „LangChain“ agentą | B4N1

Sukurkite „LangChain“ agentą

5 months ago · b4n1 Tiempo de lectura: 5 min

Savigydančios programinės įrangos sistemų kūrimas naudojant kelių agentų AI architektūrą ir orkestravimo įrankius

Įvadas

Šiandienos sparčiai besikeičiančioje programinės įrangos aplinkoje pagrindinis programinės įrangos inžinierių ir „DevOps“ komandų prioritetas yra sukurti tvirtas ir prisitaikančias sistemas, kurios gali išgyventi gamybą. Tradiciniai programinės įrangos kūrimo metodai dažnai skirti kurti monolitines sistemas, kurios yra linkusios į gedimus ir prastovą. Tačiau, atsiradus kelių agentų AI architektūroms ir orkestravimo įrankiams, dabar įmanoma sukurti savaime besigydančias programinės įrangos sistemas, kurios gali prisitaikyti prie besikeičiančių sąlygų ir atsigauti po gedimų.

Šiame straipsnyje išnagrinėsime kelių agentų AI architektūrų ir orkestravimo įrankių koncepciją ir kaip juos galima naudoti kuriant savigydos programinės įrangos sistemas. Taip pat įsigilinsime į naujausias AI, programinės įrangos inžinerijos ir „DevOps“ tendencijas ir išnagrinėsime tokių įrankių kaip „LangChain“ ir „DSPy“ vaidmenį kuriant tvirtas ir prisitaikančias programinės įrangos sistemas.

Kas yra kelių agentų AI architektūros?

Kelių agentų AI architektūros yra AI sistemos tipas, susidedantis iš kelių autonominių agentų, kurie sąveikauja tarpusavyje siekdami bendro tikslo. Kiekvienas agentas turi savo galimybių, žinių ir tikslų rinkinį ir dirba kartu, kad pasiektų aukštesnio lygio tikslą. Kelių agentų AI architektūros ypač naudingos sudėtingose ​​sistemose, kuriose yra daug suinteresuotųjų šalių, prieštaraujantys tikslai ir neaiškūs rezultatai.

Programinės įrangos inžinerijoje kelių agentų AI architektūros gali būti naudojamos kuriant savigydos sistemas, kurios gali aptikti ir reaguoti į gedimus realiuoju laiku. Pavyzdžiui, kelių agentų AI sistemą gali sudaryti keli agentai, kurie stebi skirtingus sistemos komponentus, aptinka gedimus ir suaktyvina atkūrimo veiksmus, kad sistema atkurtų sveiką būseną.

Kas yra orkestravimo įrankiai?

Orkestravimo įrankiai yra programinės įrangos sistemos, kurios automatizuoja programų ir paslaugų diegimą, mastelio keitimą ir valdymą. Jie suteikia centralizuotą kelių komponentų, paslaugų ir taikomųjų programų valdymo platformą ir leidžia kūrėjams apibrėžti sudėtingas darbo eigas ir automatizavimą.

Orkestravimo įrankiai yra būtini kuriant savaiminio gydymo programinės įrangos sistemas, nes jie leidžia kūrėjams apibrėžti atkūrimo darbo eigą ir automatizavimą, kuris gali būti suaktyvintas įvykus gedimams. Pavyzdžiui, orkestravimo įrankis gali būti naudojamas automatizuoti atsarginės sistemos diegimą arba atkūrimo veiksmą, kai sugenda sistemos komponentas.

LangChain ir DSPy: Orchestration Tools for Multi-Agent AI Architectures

„LangChain“ ir „DSPy“ yra du populiarūs orkestravimo įrankiai, skirti dirbti su kelių agentų AI architektūromis. „LangChain“ yra „Python“ biblioteka, teikianti paprastą ir intuityvią API, skirtą kelių agentų AI sistemoms kurti, o „DSPy“ yra „Python“ biblioteka, teikianti aukšto lygio API darbo eigoms apibrėžti ir vykdyti.

„LangChain“ ir „DSPy“ leidžia kūrėjams sukurti savaiminio gydymo programinės įrangos sistemas, kurios gali aptikti ir reaguoti į gedimus realiuoju laiku. Jie siūlo daugybę funkcijų, įskaitant:

  • Agentų valdymas: „LangChain“ ir „DSPy“ teikia API, skirtus agentams kurti, valdyti ir sąveikauti su kelių agentų AI sistemoje.
  • Darbo eigos apibrėžimas: „LangChain“ ir „DSPy“ leidžia kūrėjams apibrėžti sudėtingas darbo eigas ir automatizavimą, kurie gali būti suaktyvinti įvykus gedimams.
  • Atkūrimo veiksmai: „LangChain“ ir „DSPy“ teikia API, skirtus suaktyvinti atkūrimo veiksmus, pvz., įdiegti atsarginę sistemą arba suaktyvinti atkūrimo veiksmą, kai sistemos komponentas sugenda.

Savęs gydymo sistemos kūrimas naudojant „LangChain“ ir „DSPy“

Norėdami parodyti „LangChain“ ir „DSPy“ galią, sukurkime paprastą savigydos sistemą, kuri gali aptikti žiniatinklio programos gedimus ir į juos reaguoti. Naudosime „LangChain“, kad sukurtume kelių agentų AI sistemą, kuri stebi programos veikimą ir, aptikus gedimą, suaktyvina atkūrimo veiksmą.

Štai paprastas kodo blokas, parodantis, kaip sukurti savigydos sistemą su LangChain ir DSPy:

importuoti langchain
iš langchain importo agento, grandinės


agentas = agentas (
    pavadinimas = "savęs gydantis agentas",
    grandinė = Grandinė (
        pavadinimas = "savaiminio gydymo grandinė",
        žingsniai=[
            {"name": "monitor", "func": monitor_performance},
            {"name": "atkurti", "func": atkūrimo_sistema},
        ],
    ),
)

# Apibrėžkite funkciją, skirtą programos veikimui stebėti
def monitor_performance():
    # Imituokite gedimo aptikimą
    jei atsitiktinis.random() < 0.5:
        return {"nesėkmė": Tiesa}
    kitaip:
        return {"gedimas": False}

# Apibrėžkite sistemos atkūrimo funkciją
def recovery_system(gedimas):
    # Suaktyvinkite atkūrimo veiksmą
    jei nepavyksta ["nesėkmė"]:
        print("Suaktyvinamas atkūrimo veiksmas...")
        # Įdiekite atsarginę sistemą arba suaktyvinkite atkūrimo veiksmą
        # ...

# Sukurkite DSPy darbo eigą
darbo eiga = DSPy.Workflow(
    name="self-healing-workflow",
    žingsniai=[
        {"name": "monitor", "func": monitor_performance},
        {"name": "atkurti", "func": atkūrimo_sistema},
    ],
)

# Vykdykite darbo eigą
workflow.execute()

Šis kodo blokas parodo, kaip sukurti „LangChain“ agentą, kuris stebi programos našumą ir, aptikus gedimą, suaktyvina atkūrimo veiksmą. DSPy darbo eiga naudojama norint apibrėžti atkūrimo veiksmą ir jį vykdyti reaguojant į gedimą.

5–10 dažniausiai naudojamų komandų / fragmentų

Čia yra 5–10 dažniausiai naudojamų „LangChain“ ir „DSPy“ komandų ir fragmentų:

  1. „langchain.Agent()“: sukuria naują „LangChain“ agentą.
  2. „langchain.Chain()“: sukuriama nauja „LangChain“ grandinė.
  3. dspypy.Workflow(): sukuria naują DSPy darbo eigą.
  4. „agent.execute()“: vykdo „LangChain“ agentą.
  5. workflow.execute(): vykdo DSPy darbo eigą.
  6. agent.chain.steps.append({"pavadinimas": "žingsnis", "func": func}): prideda naują žingsnį į LangChain grandinę.
  7. workflow.steps.append({"name": "step", "func": func}): Prideda naują veiksmą prie DSPy darbo eigos.
  8. agent.chain.steps.remove({"vardas": "žingsnis"}): pašalina žingsnį iš LangChain grandinės.
  9. workflow.steps.remove({"pavadinimas": "žingsnis"}): pašalina veiksmą iš DSPy darbo eigos.
  10. agent.chain.steps.insert(0, {"name": "step", "func": func}): įterpia naują žingsnį LangChain grandinės pradžioje.

Vizualizacija

Štai „LangChain“ ir „DSPy“ darbo eigos vizualizacija naudojant Chart.js:

{
  "tipas": "juosta",
  "duomenys": {
    "labels": ["Stebėti", "Atkurti"],
    "duomenų rinkiniai": [
      {
        "label": "LangChain",
        "duomenys": [10, 20],
        "backgroundColor": "rgba(255, 99, 132, 0.2)",
        "borderColor": "rgba(255, 99, 132, 1)",
        "borderWidth": 1
      },
      {
        "label": "DSPy",
        "duomenys": [20, 30],
        "backgroundColor": "rgba(54, 162, 235, 0.2)",
        "borderColor": "rgba(54, 162, 235, 1)",
        "borderWidth": 1
      }
    ]
  },
  "parinktys": {
    "pavadinimas": {
      "display": tiesa,
      "text": "LangChain ir DSPy darbo eiga"
    },
    "svarstyklės": {
      „yAxes“: [
        {
          "erkės": {
            "beginAtZero": tiesa
          }
        }
      ]
    }
  }
}

Ši vizualizacija rodo „LangChain“ ir „DSPy“ darbo eigą su „Monitor“ žingsniu kairėje ir „Atkūrimo“ žingsniu dešinėje. LangChain darbo eiga vaizduojama raudona juosta, o DSPy darbo eiga – mėlyna juosta.

Išvada

Savaiminio gydymo programinės įrangos sistemų kūrimas naudojant kelių agentų AI architektūrą ir orkestravimo įrankius yra galingas būdas sukurti tvirtas ir prisitaikančias sistemas, kurios gali išgyventi gamybą. „LangChain“ ir „DSPy“ yra du populiarūs orkestravimo įrankiai, leidžiantys kūrėjams sukurti savigydos sistemas, kurios gali aptikti ir reaguoti į gedimus realiuoju laiku.

Šiame straipsnyje mes išnagrinėjome kelių agentų AI architektūros ir orkestravimo įrankių koncepciją ir parodėme, kaip sukurti savigydos sistemą naudojant „LangChain“ ir „DSPy“. Taip pat pateikėme daugybę praktinių pavyzdžių ir kodo fragmentų, kurie padės kūrėjams pradėti kurti savo savigydos sistemas.

Nesvarbu, ar esate programinės įrangos inžinierius, „DevOps“ inžinierius ar dirbtinio intelekto tyrinėtojas, savigydos programinės įrangos sistemų kūrimas naudojant „LangChain“ ir „DSPy“ yra galingas būdas sukurti tvirtas ir prisitaikančias sistemas, kurios gali išgyventi gamybą.


¿Tienes preguntas?

Hablemos

Contáctame en LinkedIn