Стварыце агента LangChain | B4N1

Стварыце агента LangChain

8 months ago · b4n1 Tiempo de lectura: 5 min

Выкарыстанне агентаў AI для аўтаматызаванай дастаўкі праграмнага забеспячэння: інтэграцыя LangChain і DSPy у канвееры DevOps

Уводзіны

Ландшафт распрацоўкі праграмнага забеспячэння імкліва развіваецца з павелічэннем прымянення штучнага інтэлекту (AI) і машыннага навучання (ML) у розных аспектах жыццёвага цыкла распрацоўкі. Адной з найбольш перспектыўных абласцей прымянення штучнага інтэлекту з'яўляецца аўтаматызацыя працэсаў дастаўкі праграмнага забеспячэння, уключаючы тэлеметрыю і бесперапынную інтэграцыю/бесперапыннае разгортванне (CI/CD). У гэтым артыкуле мы вывучым ролю агентаў штучнага інтэлекту ў аўтаматызацыі працэсаў дастаўкі праграмнага забеспячэння і паглыбімся ў практычную рэалізацыю такіх інструментаў аркестроўкі, як LangChain і DSPy.

Роля агентаў штучнага інтэлекту ў пастаўцы праграмнага забеспячэння

Агенты штучнага інтэлекту - гэта праграмы, якія могуць выконваць задачы аўтаномна, прымаючы рашэнні на аснове даных і правілаў. У кантэксце пастаўкі праграмнага забеспячэння агенты штучнага інтэлекту можна выкарыстоўваць для аўтаматызацыі розных працэсаў, такіх як:

  1. Тэлеметрыя: агенты штучнага інтэлекту могуць збіраць і аналізаваць даныя з розных крыніц, такіх як журналы прыкладанняў, паказчыкі прадукцыйнасці і водгукі карыстальнікаў, каб даць зразумець паводзіны і прадукцыйнасць прыкладання.
  2. Пастаянная інтэграцыя: агенты штучнага інтэлекту могуць аўтаматызаваць зборку, тэставанне і разгортванне змен кода, гарантуючы, што прыкладанне заўсёды знаходзіцца ў стане разгортвання.
  3. Пастаяннае разгортванне: агенты штучнага інтэлекту могуць аўтаматызаваць разгортванне змяненняў у вытворчасці, скарачаючы час і намаганні, неабходныя для атрымання новых функцый і выпраўленняў для карыстальнікаў.
  4. Маніторынг і папярэджанне: агенты штучнага інтэлекту могуць кантраляваць прадукцыйнасць прыкладання і папярэджваць распрацоўшчыкаў і аператараў аб магчымых праблемах, перш чым яны стануць крытычнымі.

LangChain: структура для стварэння агентаў AI

LangChain - гэта структура Python для стварэння агентаў штучнага інтэлекту, якія могуць узаемадзейнічаць з рознымі крыніцамі даных і выконваць задачы аўтаномна. LangChain забяспечвае просты і інтуітыўна зразумелы API для стварэння агентаў, якія могуць:

  1. Узаемадзеянне з крыніцамі даных: LangChain забяспечвае шэраг крыніц даных, уключаючы базы дадзеных, API і файлавыя сістэмы, з якімі агенты могуць узаемадзейнічаць.
  2. Выкананне задач: LangChain забяспечвае шэраг задач, якія могуць выконваць агенты, уключаючы апрацоўку тэксту, распазнаванне малюнкаў і апрацоўку натуральнай мовы.
  3. Вучыцца на дадзеных: LangChain забяспечвае шэраг алгарытмаў машыннага навучання, якія агенты могуць выкарыстоўваць для навучання на дадзеных.

DSPy: структура для стварэння размеркаваных агентаў AI

DSPy - гэта структура Python для стварэння размеркаваных агентаў штучнага інтэлекту, якія могуць маштабавацца ў адпаведнасці з патрэбамі буйнамаштабных прыкладанняў. DSPy забяспечвае шэраг функцый, у тым ліку:

  1. Размеркаваныя вылічэнні: DSPy дазваляе агентам працаваць на некалькіх машынах, што робіць яго ідэальным для буйнамаштабных прыкладанняў.
  2. Паралелізм даных: DSPy дазваляе агентам апрацоўваць даныя паралельна, што робіць яго ідэальным для прыкладанняў, якія патрабуюць высокапрадукцыйных вылічэнняў.
  3. Маштабаванасць: DSPy дазваляе агентам маштабавацца ў адпаведнасці з патрэбамі буйнамаштабных прыкладанняў.

Інтэграцыя LangChain і DSPy у канвееры DevOps

Каб інтэграваць LangChain і DSPy у канвееры DevOps, мы можам выкарыстоўваць наступныя крокі:

  1. Усталяваць LangChain і DSPy: усталюйце LangChain і DSPy з дапамогай pip.
pip ўсталяваць langchain dspy
  1. Стварыце агента LangChain: Стварыце агента LangChain, які можа ўзаемадзейнічаць з крыніцамі даных і выконваць задачы.
імпарт Langchain


агент = langchain.Agent(
    імя = "мой_агент",
    data_sources=[langchain.DataSource("база даных", "мая_база_даных")],
    tasks=[langchain.Task("text_processing", "my_text_processing")]
)
  1. Стварыце агент DSPy: Стварыце агент DSPy, які можа працаваць на некалькіх машынах і паралельна апрацоўваць дадзеныя.
імпарт dspy

# Стварыце агент DSPy
агент = dspy.Агент(
    імя = "мой_агент",
    data_sources=[dspy.DataSource("база даных", "мая_база_даных")],
    tasks=[dspy.Task("text_processing", "my_text_processing")]
)
  1. Інтэграцыя агентаў LangChain і DSPy: інтэграцыя агентаў LangChain і DSPy у канвеер DevOps з дапамогай такіх інструментаў, як Jenkins або GitLab CI/CD.
імпарт Langchain
імпарт dspy

# Стварыце агента LangChain
langchain_agent = langchain.Agent(
    name="my_langchain_agent",
    data_sources=[langchain.DataSource("база даных", "мая_база_даных")],
    tasks=[langchain.Task("text_processing", "my_text_processing")]
)

# Стварыце агент DSPy
dspy_agent = dspy.Agent(
    name="my_dspya_agent",
    data_sources=[dspy.DataSource("база даных", "мая_база_даных")],
    tasks=[dspy.Task("text_processing", "my_text_processing")]
)

# Інтэграцыя агентаў у канвеер DevOps
канвеер = [
    langchain_agent,
    dspy_agent
]

Топ-5-10 найбольш часта выкарыстоўваюцца каманд/фрагментаў

Вось 5-10 найбольш часта выкарыстоўваюцца каманд/фрагментаў для LangChain і DSPy:

  1. LangChain: Стварыце агента LangChain
імпарт Langchain

агент = langchain.Agent(
    імя = "мой_агент",
    data_sources=[langchain.DataSource("база даных", "мая_база_даных")],
    tasks=[langchain.Task("text_processing", "my_text_processing")]
)
  1. DSPy: Стварыце агент DSPy
імпарт dspy

агент = dspy.Агент(
    імя = "мой_агент",
    data_sources=[dspy.DataSource("база даных", "мая_база_даных")],
    tasks=[dspy.Task("text_processing", "my_text_processing")]
)
  1. LangChain: узаемадзеянне з крыніцай даных
імпарт Langchain

агент = langchain.Agent(
    імя = "мой_агент",
    data_sources=[langchain.DataSource("база даных", "мая_база_даных")],
    tasks=[langchain.Task("text_processing", "my_text_processing")]
)

дадзеныя = agent.data_sources[0].get_data()
  1. DSPy: узаемадзеянне з крыніцай даных
імпарт dspy

агент = dspy.Агент(
    імя = "мой_агент",
    data_sources=[dspy.DataSource("база даных", "мая_база_даных")],
    tasks=[dspy.Task("text_processing", "my_text_processing")]
)

дадзеныя = agent.data_sources[0].get_data()
  1. LangChain: выканаць заданне
імпарт Langchain

агент = langchain.Agent(
    імя = "мой_агент",
    data_sources=[langchain.DataSource("база даных", "мая_база_даных")],
    tasks=[langchain.Task("text_processing", "my_text_processing")]
)

вынік = agent.tasks[0].perform_task(дадзеныя)
  1. DSPy: выканаць заданне
імпарт dspy

агент = dspy.Агент(
    імя = "мой_агент",
    data_sources=[dspy.DataSource("база даных", "мая_база_даных")],
    tasks=[dspy.Task("text_processing", "my_text_processing")]
)

вынік = agent.tasks[0].perform_task(дадзеныя)
  1. LangChain: Вучыцеся на дадзеных
імпарт Langchain

агент = langchain.Agent(
    імя = "мой_агент",
    data_sources=[langchain.DataSource("база даных", "мая_база_даных")],
    tasks=[langchain.Task("text_processing", "my_text_processing")]
)

agent.learn_from_data(дадзеныя)
  1. DSPy: Вучыцеся на дадзеных
імпарт dspy

агент = dspy.Агент(
    імя = "мой_агент",
    data_sources=[dspy.DataSource("база даных", "мая_база_даных")],
    tasks=[dspy.Task("text_processing", "my_text_processing")]
)

agent.learn_from_data(дадзеныя)
  1. LangChain: інтэграцыя з канвеерам DevOps
імпарт Langchain

агент = langchain.Agent(
    імя = "мой_агент",
    data_sources=[langchain.DataSource("база даных", "мая_база_даных")],
    tasks=[langchain.Task("text_processing", "my_text_processing")]
)

канвеер = [
    агент
]
  1. DSPy: інтэграцыя з канвеерам DevOps
імпарт dspy

агент = dspy.Агент(
    імя = "мой_агент",
    data_sources=[dspy.DataSource("база даных", "мая_база_даных")],
    tasks=[dspy.Task("text_processing", "my_text_processing")]
)

канвеер = [
    агент
]

Візуалізацыя

Вось візуалізацыя агентаў LangChain і DSPy у канвееры DevOps:

{
  "тып": "бар",
  "дадзеныя": {
    "labels": ["LangChain", "DSPy"],
    "наборы дадзеных": [
      {
        "label": "Агент",
        "дадзеныя": [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)"],
        "borderWidth": 1
      }
    ]
  },
  "параметры": {
    "назва": {
      "дысплей": праўда,
      "text": "Агенты LangChain і DSPy у канвееры DevOps"
    },
    "шалі": {
      "yAxes": [
        {
          "цікі": {
            "beginAtZero": праўда
          }
        }
      ]
    }
  }
}

Гэтая візуалізацыя паказвае агенты LangChain і DSPy у канвееры DevOps, прычым агент LangChain мае 10 задач, а агент DSPy - 20 задач.

Выснова

У гэтым артыкуле мы даследавалі ролю агентаў штучнага інтэлекту ў аўтаматызацыі працэсаў дастаўкі праграмнага забеспячэння і паглыбіліся ў практычную рэалізацыю такіх інструментаў аркестроўкі, як LangChain і DSPy. Мы ўбачылі, як LangChain і DSPy можна выкарыстоўваць для стварэння агентаў штучнага інтэлекту, якія могуць узаемадзейнічаць з крыніцамі даных, выконваць задачы і вучыцца на дадзеных. Мы таксама ўбачылі, як LangChain і DSPy можна інтэграваць у канвееры DevOps з дапамогай такіх інструментаў, як Jenkins або GitLab CI/CD. З ростам прыняцця AI і ML у распрацоўцы праграмнага забеспячэння LangChain і DSPy становяцца ўсё больш важнымі інструментамі для распрацоўшчыкаў і аператараў, якія жадаюць аўтаматызаваць працэсы дастаўкі праграмнага забеспячэння.


¿Tienes preguntas?

Hablemos

Contáctame en LinkedIn