Эҷоди агенти LangChain | B4N1

Эҷоди агенти LangChain

8 months ago · b4n1 Read time: 5 min

Истифодаи агентҳои AI барои интиқоли нармафзори автоматӣ: Интегратсияи LangChain ва DSPy дар DevOps Pipelines

Муқаддима

Манзараи таҳияи нармафзор бо қабули афзояндаи зеҳни сунъӣ (AI) ва омӯзиши мошинсозӣ (ML) дар паҳлӯҳои мухталифи давраи рушд босуръат инкишоф меёбад. Яке аз самтҳои умедбахши татбиқи AI ин автоматикунонии равандҳои таҳвили нармафзор, аз ҷумла телеметрия ва ҳамгироии пайваста/таъмини муттасил (CI/CD) мебошад. Дар ин мақола, мо нақши агентҳои AI-ро дар автоматикунонии равандҳои таҳвили нармафзор меомӯзем ва ба татбиқи амалии асбобҳои оркестрсозӣ ба монанди LangChain ва DSPy меомӯзем.

Нақши агентҳои AI дар таҳвили нармафзор

Агентҳои AI барномаҳои нармафзоре мебошанд, ки метавонанд вазифаҳоро мустақилона иҷро кунанд ва дар асоси додаҳо ва қоидаҳо қарор қабул кунанд. Дар заминаи таҳвили нармафзор, агентҳои AI метавонанд барои автоматикунонии равандҳои гуногун истифода шаванд, ба монанди:

  1. Телеметрия: Агентҳои AI метавонанд аз сарчашмаҳои гуногун маълумот ҷамъоварӣ ва таҳлил кунанд, аз қабили гузоришҳои барномаҳо, ченакҳои иҷроиш ва фикру мулоҳизаҳои корбар, то дар бораи рафтор ва иҷрои барнома маълумот пешниҳод кунанд.
  2. Интегратсияи муттасил: Агентҳои AI метавонанд сохтани, озмоиш ва ҷобаҷогузории тағйироти кодро автоматӣ карда, кафолат диҳанд, ки барнома ҳамеша дар ҳолати ҷойгиршаванда бошад.
  3. Ҷойгиркунии муттасил: Агентҳои AI метавонанд ҷобаҷогузории тағиротро дар истеҳсолот автоматӣ карда, вақт ва кӯшишро барои ба даст овардани хусусиятҳо ва ислоҳҳои нав ба корбарон кам кунанд.
  4. Мониторинг ва ҳушдордиҳӣ: Агентҳои AI метавонанд кори барномаро назорат кунанд ва таҳиягарон ва операторонро аз мушкилоти эҳтимолӣ пеш аз он ки онҳо муҳим шаванд, огоҳ кунанд.

LangChain: чаҳорчӯба барои сохтани агентҳои AI

LangChain як чаҳорчӯбаи Python барои сохтани агентҳои AI мебошад, ки метавонад бо манбаъҳои гуногуни маълумот ҳамкорӣ кунад ва вазифаҳоро мустақилона иҷро кунад. LangChain як API оддӣ ва беихтиёрона барои агентҳои сохтмонӣ пешниҳод мекунад, ки метавонанд:

  1. Муомила бо манбаъҳои дода: LangChain як қатор манбаъҳои додаҳоро, аз ҷумла пойгоҳи додаҳо, APIҳо ва системаҳои файлиро таъмин мекунад, ки агентҳо метавонанд бо онҳо ҳамкорӣ кунанд.
  2. Иҷрои вазифаҳо: LangChain як қатор вазифаҳоро таъмин мекунад, ки агентҳо метавонанд иҷро кунанд, аз ҷумла коркарди матн, шинохти тасвир ва коркарди забони табиӣ.
  3. Аз маълумот маълумот гиред: LangChain як қатор алгоритмҳои омӯзиши мошинро пешниҳод мекунад, ки агентҳо метавонанд барои омӯхтани маълумот истифода баранд.

DSPy: Чаҳорчӯба барои сохтани агентҳои тақсимшудаи AI

DSPy чаҳорчӯбаи Python барои сохтани агентҳои тақсимшудаи AI мебошад, ки метавонанд барои қонеъ кардани ниёзҳои замимаҳои калон миқёси васеъ дошта бошанд. DSPy як қатор хусусиятҳоро пешниҳод мекунад, аз ҷумла:

  1. Компютерҳои тақсимшуда: DSPy ба агентҳо имкон медиҳад, ки дар мошинаҳои гуногун кор кунанд ва онро барои барномаҳои калонҳаҷм беҳтарин месозад.
  2. Параллизатсияи додаҳо: DSPy ба агентҳо имкон медиҳад, ки маълумотро дар баробари коркард кунанд ва онро барои барномаҳое, ки ҳисоббарории баландсифатро талаб мекунанд, беҳтарин месозад.
  3. Миқёспазирӣ: DSPy ба агентҳо имкон медиҳад, ки миқёсро барои қонеъ кардани эҳтиёҷоти барномаҳои калонҳаҷм фароҳам оваранд.

Интегратсияи LangChain ва DSPy дар DevOps Pipelines

Барои ҳамгироии LangChain ва DSPy дар лӯлаҳои DevOps, мо метавонем қадамҳои зеринро истифода барем:

  1. LangChain ва DSPy-ро насб кунед: LangChain ва DSPy-ро бо истифода аз pip насб кунед. '''бош pip насб кардани langchain dspy
2. **Агенти LangChain эҷод кунед**: Агенти LangChain эҷод кунед, ки метавонад бо манбаъҳои додаҳо ҳамкорӣ кунад ва вазифаҳоро иҷро кунад.
`` питон
langchain ворид кунед


агент = langchain.Agent (
    ном = "агенти ман",
    data_sources=[langchain.DataSource("базанаи маълумот", "базанаи_ман")],
    вазифаҳо=[langchain.Task("коркарди_матн", "коркарди_матни_ман")]
)
  1. Агенти DSPy эҷод кунед: Агенти DSPy эҷод кунед, ки метавонад дар якчанд мошин кор кунад ва маълумотро дар баробари коркард кунад. `` питон воридоти dspy

Агенти DSPy эҷод кунед

агент = dspy.Agent ( ном = "агенти ман", data_sources=[dspy.DataSource("базанаи маълумот", "базанаи_ман")], вазифаҳо=[dspy.Task("коркарди_матн", "коркарди_матни_ман")] )

4. **Интегратсияи агентҳои LangChain ва DSPy**: Агентҳои LangChain ва DSPy-ро дар лӯлаи DevOps бо истифода аз асбобе ба мисли Jenkins ё GitLab CI/CD ҳамҷоя кунед.
`` питон
langchain ворид кунед
воридоти dspy

# Агенти LangChain эҷод кунед
langchain_agent = langchain.Agent (
    ном="my_langchain_agent",
    data_sources=[langchain.DataSource("базанаи маълумот", "базанаи_ман")],
    вазифаҳо=[langchain.Task("коркарди_матн", "коркарди_матни_ман")]
)

# Агенти DSPy эҷод кунед
dspy_agent = dspy.Agent (
    ном="my_dspya_agent",
    data_sources=[dspy.DataSource("базанаи маълумот", "базанаи_ман")],
    вазифаҳо=[dspy.Task("коркарди_матн", "коркарди_матни_ман")]
)

# Агентҳоро дар лӯлаи DevOps муттаҳид кунед
қубур = [
    langchain_agent,
    dspy_agent
]

Беҳтарин 5-10 фармонҳо/порчаҳои бештар истифодашаванда

Инҳоянд 5-10 фармонҳои/порчаҳои аз ҳама бештар истифодашаванда барои LangChain ва DSPy:

  1. LangChain: Агенти LangChain эҷод кунед `` питон langchain ворид кунед

агент = langchain.Agent ( ном = "агенти ман", data_sources=[langchain.DataSource("базанаи маълумот", "базанаи_ман")], вазифаҳо=[langchain.Task("коркарди_матн", "коркарди_матни_ман")] )

2. **DSPy: Эҷоди агенти DSPy**
`` питон
воридоти dspy

агент = dspy.Agent (
    ном = "агенти ман",
    data_sources=[dspy.DataSource("базанаи маълумот", "базанаи_ман")],
    вазифаҳо=[dspy.Task("коркарди_матн", "коркарди_матни_ман")]
)
  1. LangChain: Муошират бо манбаи маълумот `` питон langchain ворид кунед

агент = langchain.Agent ( ном = "агенти ман", data_sources=[langchain.DataSource("базанаи маълумот", "базанаи_ман")], вазифаҳо=[langchain.Task("коркарди_матн", "коркарди_матни_ман")] )

маълумот = agent.data_sources[0].get_data()

4. **DSPy: Муошират бо манбаи маълумот**
`` питон
воридоти dspy

агент = dspy.Agent (
    ном = "агенти ман",
    data_sources=[dspy.DataSource("базанаи маълумот", "базанаи_ман")],
    вазифаҳо=[dspy.Task("коркарди_матн", "коркарди_матни_ман")]
)

маълумот = agent.data_sources[0].get_data()
  1. LangChain: Иҷрои вазифа `` питон langchain ворид кунед

агент = langchain.Agent ( ном = "агенти ман", data_sources=[langchain.DataSource("базанаи маълумот", "базанаи_ман")], вазифаҳо=[langchain.Task("коркарди_матн", "коркарди_матни_ман")] )

натиҷа = agent.tasks[0].perform_task(маълумот)

6. **DSPy: Иҷрои вазифа**
`` питон
воридоти dspy

агент = dspy.Agent (
    ном = "агенти ман",
    data_sources=[dspy.DataSource("базанаи маълумот", "базанаи_ман")],
    вазифаҳо=[dspy.Task("коркарди_матн", "коркарди_матни_ман")]
)

натиҷа = agent.tasks[0].perform_task(маълумот)
  1. LangChain: Аз маълумот омӯзед `` питон langchain ворид кунед

агент = langchain.Agent ( ном = "агенти ман", data_sources=[langchain.DataSource("базанаи маълумот", "базанаи_ман")], вазифаҳо=[langchain.Task("коркарди_матн", "коркарди_матни_ман")] )

agent.learn_from_data(маълумот)

8. **DSPy: Аз маълумот омӯзед**
`` питон
воридоти dspy

агент = dspy.Agent (
    ном = "агенти ман",
    data_sources=[dspy.DataSource("базанаи маълумот", "базанаи_ман")],
    вазифаҳо=[dspy.Task("коркарди_матн", "коркарди_матни_ман")]
)

agent.learn_from_data(маълумот)
  1. LangChain: Интегратсия бо лӯлаи DevOps `` питон langchain ворид кунед

агент = langchain.Agent ( ном = "агенти ман", data_sources=[langchain.DataSource("базанаи маълумот", "базанаи_ман")], вазифаҳо=[langchain.Task("коркарди_матн", "коркарди_матни_ман")] )

қубур = [ агент ]

10. **DSPy: Интегратсия бо лӯлаи DevOps**
`` питон
воридоти dspy

агент = dspy.Agent (
    ном = "агенти ман",
    data_sources=[dspy.DataSource("базанаи маълумот", "базанаи_ман")],
    вазифаҳо=[dspy.Task("коркарди_матн", "коркарди_матни_ман")]
)

қубур = [
    агент
]

Визуализатсия

Ин аст визуализатсияи агентҳои LangChain ва DSPy дар лӯлаи DevOps:

{
  "type": "бар",
  "маълумот": {
    "labels": ["LangChain", "DSPy"],
    "маҷмӯи додаҳо": [
      {
        "label": "Агент",
        "data": [10, 20],
        "backgroundColor": ["rgba(255, 99, 132, 0.2)", "rgba(54, 162, 235, 0.2)"],
        "borderColor": ["rgba(255, 99, 132, 1)", "rgba(54, 162, 235, 1)"],
        "BroderWidth": 1
      }
    ]
  },
  "Options": {
    "унвон": {
      "дисплей": дуруст,
      "text": "Агентҳои LangChain ва DSPy дар лӯлаи DevOps"
    },
    "тарозу": {
      "yAxes": [
        {
          "тик": {
            "beginAtZero": дуруст
          }
        }
      ]
    }
  }
}

Ин визуализатсия агентҳои LangChain ва DSPy-ро дар лӯлаи DevOps нишон медиҳад, ки агенти LangChain дорои 10 вазифа ва агенти DSPy 20 вазифа мебошад.

Хулоса

Дар ин мақола, мо нақши агентҳои AI дар автоматикунонии равандҳои таҳвили нармафзорро омӯхта, ба татбиқи амалии асбобҳои оркестрсозӣ ба монанди LangChain ва DSPy омӯзем. Мо дидем, ки чӣ гуна LangChain ва DSPy-ро барои эҷоди агентҳои AI истифода бурдан мумкин аст, ки метавонанд бо манбаъҳои додаҳо муошират кунанд, вазифаҳоро иҷро кунанд ва аз маълумот омӯхта шаванд. Мо инчунин дидем, ки чӣ гуна LangChain ва DSPy-ро бо истифода аз асбобҳо ба монанди Jenkins ё GitLab CI/CD дар лӯлаҳои DevOps муттаҳид кардан мумкин аст. Бо қабули афзояндаи AI ва ML дар таҳияи нармафзор, LangChain ва DSPy барои таҳиягарон ва оператороне, ки мехоҳанд равандҳои таҳвили нармафзорро автоматӣ кунанд, ба абзори муҳимтар табдил меёбанд.


Have Questions?

Let's Talk

Contact me on LinkedIn