Ndërtimi i sistemeve të softuerit vetë-shërues me arkitekturë me shumë agjentë AI dhe LangChain | B4N1

Ndërtimi i sistemeve të softuerit vetë-shërues me arkitekturë me shumë agjentë AI dhe LangChain

5 months ago · b4n1 Read time: 5 min

Ndërtimi i sistemeve softuerike vetë-shëruese me Arkitekturat e AI me shumë agjentë dhe LangChain

Hyrje

Në peizazhin e sotëm të zhvillimit të softuerit me ritme të shpejta, ndërtimi i sistemeve softuerike vetë-shëruese është bërë një kërkesë kritike për të siguruar besueshmërinë, shkallëzimin dhe qëndrueshmërinë e sistemeve komplekse softuerike. Arkitekturat tradicionale monolitike nuk janë më të mjaftueshme për të përmbushur kërkesat e zhvillimit modern të softuerit, ku sistemet duhet të jenë në gjendje të përshtaten me kërkesat në ndryshim, të trajtojnë dështimet e papritura dhe të rikuperohen shpejt nga gabimet. Këtu hyjnë në lojë arkitekturat e AI me shumë agjentë dhe LangChain, duke ofruar një zgjidhje të fuqishme për ndërtimin e sistemeve softuerike vetë-shëruese që mund të mësojnë, përshtaten dhe reagojnë ndaj kushteve në ndryshim.

Çfarë janë arkitekturat e AI me shumë agjentë?

Arkitekturat e AI me shumë agjentë janë një lloj sistemi i shpërndarë i AI që përbëhet nga agjentë të shumtë autonome që ndërveprojnë me njëri-tjetrin dhe mjedisin e tyre për të arritur një qëllim të përbashkët. Secili agjent ka aftësitë, njohuritë dhe burimet e veta vendimmarrëse dhe ata mund të komunikojnë me njëri-tjetrin për të shkëmbyer informacione, për të koordinuar veprimet dhe për t'u përshtatur me kushtet në ndryshim.

Në kontekstin e sistemeve softuerike, arkitekturat e AI me shumë agjentë mund të përdoren për të ndërtuar sisteme vetë-shëruese që mund të zbulojnë dhe reagojnë ndaj gabimeve, dështimeve dhe anomalive të tjera në kohë reale. Duke shpërndarë procesin e vendimmarrjes nëpër agjentë të shumtë, këto sisteme mund të mësojnë nga përvoja, të përshtaten me kushtet në ndryshim dhe të shërohen shpejt nga gabimet.

Çfarë është LangChain?

LangChain është një bibliotekë Python me burim të hapur për ndërtimin e sistemeve AI me shumë agjentë. Ai siguron një kornizë të thjeshtë, fleksibël dhe të shkallëzuar për ndërtimin e sistemeve komplekse të AI që mund të mësojnë, përshtaten dhe reagojnë ndaj kushteve në ndryshim. LangChain është krijuar për të punuar me një gamë të gjerë kornizash AI, duke përfshirë TensorFlow, PyTorch dhe Keras, dhe mund të përdoret për të ndërtuar sisteme që integrohen me një shumëllojshmëri burimesh të dhënash, duke përfshirë bazat e të dhënave, API-të dhe pajisjet IoT.

Ndërtimi i sistemeve softuerike vetë-shëruese me LangChain

Për të ndërtuar një sistem softuerësh vetë-shërues me LangChain, ne duhet të hartojmë një arkitekturë të AI me shumë agjentë që mund të zbulojë dhe t'u përgjigjet gabimeve, dështimeve dhe anomalive të tjera në kohë reale. Këtu është një përmbledhje e nivelit të lartë të arkitekturës:

  1. Dizajni i Agjentit: Ne duhet të dizajnojmë një grup agjentësh autonome që mund të ndërveprojnë me njëri-tjetrin dhe mjedisin e tyre për të arritur një qëllim të përbashkët. Çdo agjent duhet të ketë aftësitë, njohuritë dhe burimet e veta vendimmarrëse.
  2. Grafiku i njohurive: Duhet të krijojmë një grafik njohurish që përfaqëson marrëdhëniet ndërmjet agjentëve, mjedisit dhe qëllimeve të sistemit. Ky grafik mund të përdoret për të arsyetuar rreth gjendjes së sistemit dhe për të marrë vendime.
  3. Vendimmarrja: Ne duhet të zbatojmë një proces vendimmarrjeje që lejon agjentët të arsyetojnë për gjendjen e sistemit dhe të marrin vendime bazuar në grafikun e njohurive.
  4. Ekzekutimi i Veprimit: Ne duhet të zbatojmë një proces ekzekutimi veprimi që lejon agjentët të ekzekutojnë vendimet e tyre dhe të ndërveprojnë me mjedisin.

Këtu është një shembull i thjeshtë i një sistemi softuerësh vetë-shërues të ndërtuar me LangChain:

import langchain
nga langchain.agents import Agent
nga langchain.llms import LLM


grafiku = {
    'agjentët': ['agjenti1', 'agjenti2', 'agjenti3'],
    'mjedisi': ['baza e të dhënave', 'API', 'pajisja IoT'],
    'qëllimet': ['zbulimi i gabimeve', 'përgjigjja ndaj dështimeve', 'rikuperimi nga gabimet']
}

# Përcaktoni procesin e vendimmarrjes
vendim_marrja e përcaktuar (agjent, grafiku i njohurive):
    # Arsyeja për gjendjen e sistemit
    gjendje = grafik_njohuri['agjentë'][agjent]
    # Merrni një vendim në bazë të shtetit
    vendim = 'përgjigje ndaj dështimit'
    vendimi i kthimit

# Përcaktoni procesin e ekzekutimit të veprimit
def action_execution (agjent, vendim):
    # Zbatoni vendimin
    nëse vendimi == 'përgjigjuni dështimit':
        # Përgjigjuni dështimit
        print ("Përgjigje ndaj dështimit...")
    kthimi

# Krijoni një agjent LangChain
agjent = Agjent(
    name='agjent vetë-shërues',
    vendim_marrje=vendim_marrje,
    veprim_ekzekutimi=veprim_ekzekutimi,
    dija_grafi=grafiku
)

# Krijoni një LangChain LLM
llm = LLM(
    name='self-healing-llm',
    model='davinci'
)

# Krijoni një sistem LangChain
system = langchain.System(
    agjent=agjent,
    llm=llm
)

# Drejtoni sistemin
system.run()

Ky shembull demonstron një sistem të thjeshtë softuerësh vetë-shërues që mund të zbulojë gabimet, t'i përgjigjet dështimeve dhe të shërohet shpejt nga gabimet. Sistemi përbëhet nga një grup agjentësh autonome që ndërveprojnë me njëri-tjetrin dhe mjedisin e tyre për të arritur një qëllim të përbashkët. Agjentët përdorin një grafik njohurish për të arsyetuar rreth gjendjes së sistemit dhe për të marrë vendime bazuar në grafik.

Top 5-10 komandat/copëzat më të përdorura

Këtu janë 5-10 komandat/copëzat më të përdorura për LangChain:

  1. langchain.Agent(): Krijon një agjent të ri LangChain.
  2. langchain.LLM(): Krijon një LLM të ri LangChain.
  3. langchain.System(): Krijon një sistem të ri LangChain.
  4. agent.decision_making(): Drejton procesin e vendimmarrjes për një agjent.
  5. agent.action_execution(): Drejton procesin e ekzekutimit të veprimit për një agjent.
  6. llm.predict(): Bën një parashikim duke përdorur LLM.
  7. system.run(): Drejton sistemin LangChain.
  8. graph.add_node(): Shton një nyje të re në grafikun e njohurive.
  9. graph.add_edge(): Shton një skaj të ri në grafikun e njohurive.
  10. graph.remove_node(): Heq një nyje nga grafiku i njohurive.

Vizualizim

Këtu është një vizualizim i thjeshtë i grafikut të njohurive duke përdorur Chart.js:

{
  "lloji": "grafiku",
  "të dhënat": {
    "nyjet": [
      {"id": "agent1", "label": "Agjenti 1"},
      {"id": "agent2", "label": "Agjenti 2"},
      {"id": "agent3", "label": "Agjenti 3"},
      {"id": "baza e të dhënave", "label": "Baza e të dhënave"},
      {"id": "API", "label": "API"},
      {"id": "Pajisja IoT", "label": "Pajisja IoT"}
    ],
    "skajet": [
      {"burimi": "agent1", "target": "baza e të dhënave"},
      {"burimi": "agent2", "target": "API"},
      {"burimi": "agent3", "target": "pajisja IoT"},
      {"source": "agent1", "target": "agent2"},
      {"burimi": "agent2", "target": "agent3"}
    ]
  },
  "opsione": {
    "paraqitja": {
      "lloj": "rrethor"
    },
    "nyjet": {
      "madhësia": 50
    },
    "skajet": {
      "gjerësia": 2
    }
  }
}

Ky vizualizim tregon marrëdhëniet ndërmjet agjentëve, mjedisit dhe qëllimeve të sistemit.

përfundim

Ndërtimi i sistemeve softuerike vetë-shëruese me arkitektura AI me shumë agjentë dhe LangChain ofron një zgjidhje të fuqishme për të siguruar besueshmërinë, shkallëzimin dhe qëndrueshmërinë e sistemeve komplekse softuerike. Duke shpërndarë procesin e vendimmarrjes nëpër agjentë të shumtë, këto sisteme mund të mësojnë nga përvoja, të përshtaten me kushtet në ndryshim dhe të shërohen shpejt nga gabimet. Me LangChain, zhvilluesit mund të ndërtojnë sisteme komplekse të AI që integrohen me një gamë të gjerë burimesh të dhënash, duke përfshirë bazat e të dhënave, API-të dhe pajisjet IoT. Duke ndjekur kodin e shembullit dhe duke përdorur 5-10 komandat/copëzat më të përdorura, zhvilluesit mund të ndërtojnë sistemet e tyre softuerike vetë-shëruese me LangChain.


Have Questions?

Let's Talk

Contact me on LinkedIn