Kujenga Mifumo ya Programu ya Kujiponya na Usanifu wa AI wa Wakala Wengi na LangChain | B4N1

Kujenga Mifumo ya Programu ya Kujiponya na Usanifu wa AI wa Wakala Wengi na LangChain

5 months ago · b4n1 Tiempo de lectura: 4 min

Kujenga Mifumo ya Programu ya Kujiponya na Usanifu wa AI wa Wakala Mbalimbali na LangChain

Utangulizi

Katika mazingira ya kisasa ya uundaji wa programu ya kasi, kujenga mifumo ya programu ya kujiponya imekuwa hitaji muhimu la kuhakikisha kutegemewa, kubadilika, na uthabiti wa mifumo changamano ya programu. Usanifu wa jadi wa monolithic haitoshi tena kukidhi mahitaji ya uundaji wa programu ya kisasa, ambapo mifumo lazima iweze kuzoea mahitaji yanayobadilika, kushughulikia hitilafu zisizotarajiwa, na kupona kutoka kwa hitilafu haraka. Hapa ndipo usanifu wa mawakala wengi wa AI na LangChain hutumika, kutoa suluhisho la nguvu kwa ajili ya kujenga mifumo ya programu ya kujiponya ambayo inaweza kujifunza, kukabiliana, na kukabiliana na mabadiliko ya hali.

Usanifu wa AI wa Wakala mbalimbali ni nini?

Usanifu wa AI wa wakala wengi ni aina ya mfumo wa AI uliosambazwa ambao unajumuisha mawakala wengi wanaojitegemea ambao huingiliana na mazingira yao ili kufikia lengo moja. Kila wakala ana uwezo wake wa kufanya maamuzi, maarifa, na rasilimali, na wanaweza kuwasiliana wao kwa wao ili kushiriki habari, kuratibu vitendo, na kukabiliana na mabadiliko ya hali.

Katika muktadha wa mifumo ya programu, usanifu wa wakala wengi wa AI unaweza kutumika kutengeneza mifumo ya kujiponya ambayo inaweza kutambua na kujibu makosa, kushindwa na hitilafu zingine kwa wakati halisi. Kwa kusambaza mchakato wa kufanya maamuzi kwa mawakala wengi, mifumo hii inaweza kujifunza kutokana na uzoefu, kukabiliana na mabadiliko ya hali na kupona haraka kutokana na makosa.

LangChain ni nini?

LangChain ni maktaba ya Python ya chanzo-wazi kwa ajili ya kujenga mifumo ya AI ya wakala mbalimbali. Inatoa mfumo rahisi, unaonyumbulika, na unaoweza kupanuka kwa ajili ya kujenga mifumo changamano ya AI inayoweza kujifunza, kubadilika, na kukabiliana na mabadiliko ya hali. LangChain imeundwa kufanya kazi na mifumo mbalimbali ya AI, ikiwa ni pamoja na TensorFlow, PyTorch, na Keras, na inaweza kutumika kujenga mifumo inayounganishwa na vyanzo mbalimbali vya data, ikiwa ni pamoja na hifadhidata, API, na vifaa vya IoT.

Kujenga Mifumo ya Programu ya Kujiponya kwa LangChain

Ili kujenga mfumo wa programu ya kujiponya na LangChain, tunahitaji kubuni usanifu wa mawakala wengi wa AI ambao unaweza kutambua na kujibu hitilafu, kushindwa, na hitilafu zingine kwa wakati halisi. Hapa kuna muhtasari wa hali ya juu wa usanifu:

  1. Muundo wa Wakala: Tunahitaji kubuni seti ya mawakala wanaojiendesha ambao wanaweza kuingiliana na mazingira yao ili kufikia lengo moja. Kila wakala anapaswa kuwa na uwezo wake wa kufanya maamuzi, maarifa, na rasilimali.
  2. Grafu ya Maarifa: Tunahitaji kuunda grafu ya maarifa ambayo inawakilisha uhusiano kati ya mawakala, mazingira, na malengo ya mfumo. Grafu hii inaweza kutumika kusababu kuhusu hali ya mfumo na kufanya maamuzi.
  3. Kufanya Maamuzi: Tunahitaji kutekeleza mchakato wa kufanya maamuzi unaoruhusu mawakala kusababu kuhusu hali ya mfumo na kufanya maamuzi kulingana na grafu ya maarifa.
  4. Utekelezaji wa Kitendo: Tunahitaji kutekeleza mchakato wa utekelezaji unaoruhusu mawakala kutekeleza maamuzi yao na kuingiliana na mazingira.

Hapa kuna mfano rahisi wa mfumo wa programu ya kujiponya iliyojengwa na LangChain:

kuagiza langchain
kutoka kwa Wakala wa kuagiza langchain.agents
kutoka langchain.llms agiza LLM


grafu = {
    'mawakala': ['wakala1', 'wakala2', 'wakala3'],
    'mazingira': ['database', 'API', 'IoT device'],
    'malengo': ['gundua makosa', 'jibu kwa kutofaulu', 'okoa kutoka kwa makosa']
}

# Bainisha mchakato wa kufanya maamuzi
def maamuzi_maamuzi(wakala, maarifa_graph):
    # Sababu kuhusu hali ya mfumo
    hali = knowledge_graph['agents'][wakala]
    # Fanya uamuzi kulingana na serikali
    decision = 'jibu kwa kushindwa'
    uamuzi wa kurudi

# Bainisha mchakato wa utekelezaji wa hatua
def action_execution(wakala, uamuzi):
    #Tekeleza uamuzi
    ikiwa uamuzi == 'kujibu kutofaulu':
        # Jibu kwa kushindwa
        print('Inajibu kushindwa...')
    kurudi

# Unda wakala wa LangChain
wakala = wakala(
    jina='wakala wa kujiponya',
    maamuzi_maamuzi=kufanya_maamuzi,
    action_execution=utekelezaji_wa_kitendo,
    maarifa_grafu=grafu
)

# Unda LLM ya LangChain
llm = LLM(
    jina='kujiponya-llm',
    model='davinci'
)

# Unda mfumo wa LangChain
mfumo = langchain.System(
    wakala=wakala,
    llm=llm
)

# Endesha mfumo
system.run()

Mfano huu unaonyesha mfumo rahisi wa programu ya kujiponya ambayo inaweza kutambua makosa, kujibu kushindwa, na kurejesha kutoka kwa makosa haraka. Mfumo huo una seti ya mawakala wa uhuru ambao huingiliana na kila mmoja na mazingira yao ili kufikia lengo moja. Mawakala hutumia grafu ya maarifa kusababu kuhusu hali ya mfumo na kufanya maamuzi kulingana na grafu.

Amri/Vijisehemu 5-10 Bora Zaidi

Hapa kuna amri/vijisehemu 5-10 vya juu vinavyotumika zaidi kwa LangChain:

  1. langchain.Agent(): Inaunda wakala mpya wa LangChain.
  2. langchain.LLM(): Inaunda LLM mpya ya LangChain.
  3. langchain.System(): Inaunda mfumo mpya wa LangChain.
  4. agent.decision_making(): Huendesha mchakato wa kufanya maamuzi kwa wakala.
  5. agent.action_execution(): Huendesha mchakato wa utekelezaji wa wakala.
  6. llm.predict(): Hufanya ubashiri kwa kutumia LLM.
  7. system.run(): Huendesha mfumo wa LangChain.
  8. graph.add_node(): Huongeza nodi mpya kwenye grafu ya maarifa.
  9. graph.add_edge(): Huongeza makali mapya kwenye grafu ya maarifa.
  10. graph.remove_node(): Huondoa nodi kutoka kwa grafu ya maarifa.

Taswira

Hapa kuna taswira rahisi ya grafu ya maarifa kwa kutumia Chart.js:

{
  "type": "grafu",
  "data": {
    "nodi": [
      {"id": "agent1", "label": "Wakala 1"},
      {"id": "agent2", "label": "Wakala 2"},
      {"id": "agent3", "label": "Wakala 3"},
      {"id": "database", "label": "database"},
      {"id": "API", "label": "API"},
      {"id": "IoT device", "label": "IoT Device"}
    ],
    "kingo": [
      {"source": "agent1", "target": "database"},
      {"source": "agent2", "target": "API"},
      {"source": "agent3", "target": "Kifaa cha IoT"},
      {"source": "agent1", "target": "agent2"},
      {"source": "agent2", "target": "agent3"}
    ]
  },
  "chaguo": {
    "mpangilio": {
      "type": "mviringo"
    },
    "nodi": {
      "ukubwa": 50
    },
    "kingo": {
      "upana": 2
    }
  }
}

Taswira hii inaonyesha uhusiano kati ya mawakala, mazingira, na malengo ya mfumo.

Hitimisho

Kujenga mifumo ya programu ya kujiponya na usanifu wa mawakala mbalimbali wa AI na LangChain inatoa suluhu yenye nguvu kwa ajili ya kuhakikisha kutegemewa, hatarishi, na uthabiti wa mifumo changamano ya programu. Kwa kusambaza mchakato wa kufanya maamuzi kwa mawakala wengi, mifumo hii inaweza kujifunza kutokana na uzoefu, kukabiliana na mabadiliko ya hali na kupona haraka kutokana na makosa. Kwa LangChain, watengenezaji wanaweza kujenga mifumo changamano ya AI inayounganishwa na anuwai ya vyanzo vya data, ikijumuisha hifadhidata, API, na vifaa vya IoT. Kwa kufuata msimbo wa mfano na kutumia amri/vijisehemu vya juu 5-10 vinavyotumiwa zaidi, watengenezaji wanaweza kuunda mifumo yao ya programu ya kujiponya na LangChain.


¿Tienes preguntas?

Hablemos

Contáctame en LinkedIn