LangChain агент үүсгэх | B4N1

LangChain агент үүсгэх

5 months ago · b4n1 Read time: 5 min

Олон агентын хиймэл оюун ухааны архитектур, зохион байгуулалтын хэрэгслээр өөрийгөө эдгээх програм хангамжийн системийг бий болгох

Танилцуулга

Өнөөгийн хурдацтай, байнга өөрчлөгдөж буй програм хангамжийн орчинд үйлдвэрлэлийг даван туулах чадвартай, дасан зохицох чадвартай системийг бий болгох нь програм хангамжийн инженерүүд болон DevOps багуудын нэн тэргүүний зорилт юм. Програм хангамжийг хөгжүүлэх уламжлалт аргууд нь ихэвчлэн бүтэлгүйтэл, зогсолтод өртөмтгий цул системийг бий болгоход чиглэгддэг. Гэсэн хэдий ч олон агенттай AI архитектурууд болон зохион байгуулалтын хэрэгслүүд бий болсноор одоо өөрчлөгдөж буй нөхцөл байдалд дасан зохицож, бүтэлгүйтлээс сэргэж чадах өөрийгөө эдгээх програм хангамжийн системийг бий болгох боломжтой болсон.

Энэ нийтлэлд бид олон агенттай AI архитектур, зохион байгуулалтын хэрэгслүүдийн тухай ойлголт, тэдгээрийг хэрхэн өөрийгөө эдгээх програм хангамжийн системийг бий болгоход ашиглаж болохыг судлах болно. Бид мөн хиймэл оюун ухаан, програм хангамжийн инженерчлэл, DevOps-ийн сүүлийн үеийн чиг хандлагыг судалж, LangChain, DSPy зэрэг хэрэгслүүдийн найдвартай, дасан зохицох програм хангамжийн системийг бий болгоход гүйцэтгэх үүргийг судлах болно.

Олон агентын хиймэл оюун ухааны архитектур гэж юу вэ?

Олон агентын хиймэл оюун ухааны архитектурууд нь нийтлэг зорилгод хүрэхийн тулд бие биетэйгээ харилцан үйлчилдэг олон бие даасан агентуудаас бүрддэг AI системийн нэг төрөл юм. Агент бүр өөрийн гэсэн чадвар, мэдлэг, зорилготой бөгөөд тэд өндөр түвшний зорилгод хүрэхийн тулд хамтран ажилладаг. Олон агенттай AI архитектур нь олон оролцогч талууд, зөрчилдөөнтэй зорилго, тодорхойгүй үр дүн бүхий нарийн төвөгтэй системд ялангуяа ашигтай байдаг.

Програм хангамжийн инженерчлэлд олон агентын хиймэл оюун ухааны архитектурыг ашиглан алдаа дутагдлыг бодит цаг хугацаанд илрүүлж, хариу үйлдэл үзүүлэх боломжтой өөрийгөө засах системийг бий болгох боломжтой. Жишээлбэл, олон агенттай AI систем нь системийн өөр өөр бүрэлдэхүүн хэсгүүдийг хянаж, алдааг илрүүлж, системийг эрүүл байдалд нь оруулахын тулд сэргээх үйлдлүүдийг идэвхжүүлдэг олон агентаас бүрдэж болно.

Оркестрийн хэрэгсэл гэж юу вэ?

Оркестрийн хэрэгслүүд нь программ хангамж, үйлчилгээг байрлуулах, масштаблах, удирдах ажлыг автоматжуулдаг програм хангамжийн систем юм. Эдгээр нь олон бүрэлдэхүүн хэсэг, үйлчилгээ, програмуудыг удирдах төвлөрсөн платформоор хангадаг бөгөөд хөгжүүлэгчдэд нарийн төвөгтэй ажлын урсгал, автоматжуулалтыг тодорхойлох боломжийг олгодог.

Зохион байгуулалттай хэрэгслүүд нь өөрийгөө эдгээх програм хангамжийн системийг бий болгоход чухал ач холбогдолтой бөгөөд тэдгээр нь хөгжүүлэгчдэд алдаа гарсан тохиолдолд сэргээх ажлын урсгал болон автоматжуулалтыг тодорхойлох боломжийг олгодог. Жишээлбэл, нөөцлөх системийг автоматжуулах эсвэл системийн бүрэлдэхүүн хэсэг бүтэлгүйтсэн үед сэргээх үйлдлийг эхлүүлэхийн тулд зохион байгуулах хэрэгслийг ашиглаж болно.

LangChain ба DSPy: Олон агентын хиймэл оюун ухааны архитектурт зориулсан зохион байгуулалтын хэрэгслүүд

LangChain болон DSPy нь олон агенттай AI архитектуртай ажиллахад зориулагдсан хоёр алдартай зохион байгуулалтын хэрэгсэл юм. LangChain нь Python номын сан бөгөөд олон агентын хиймэл оюун ухааны системийг бий болгоход хялбар бөгөөд ойлгомжтой API өгдөг бол DSPy нь ажлын урсгалыг тодорхойлж, гүйцэтгэх өндөр түвшний API-ээр хангадаг Python номын сан юм.

LangChain болон DSPy нь хөгжүүлэгчдэд алдаа дутагдлыг бодит цаг хугацаанд илрүүлж, хариу арга хэмжээ авах боломжтой өөрийгөө эдгээх програм хангамжийн системийг бий болгох боломжийг олгодог. Тэд хэд хэдэн онцлог шинж чанартай байдаг, үүнд:

  • Агентны удирдлага: LangChain болон DSPy нь олон агенттай AI систем дэх агентуудыг үүсгэх, удирдах, харилцах API-уудыг хангадаг.
  • Ажлын урсгалын тодорхойлолт: LangChain болон DSPy нь хөгжүүлэгчдэд бүтэлгүйтлийн хариуд өдөөж болох нарийн төвөгтэй ажлын урсгал, автоматжуулалтыг тодорхойлох боломжийг олгодог.
  • Сэргээх үйлдлүүд: LangChain болон DSPy нь нөөц системийг байрлуулах эсвэл системийн бүрэлдэхүүн хэсэг амжилтгүй болсон үед сэргээх үйлдлийг өдөөх зэрэг сэргээх үйлдлүүдийг өдөөх API-г өгдөг.

LangChain болон DSPy ашиглан өөрийгөө эдгээх системийг бий болгох

LangChain болон DSPy-ийн хүч чадлыг харуулахын тулд вэб програмын алдааг илрүүлж, хариу үйлдэл үзүүлэх энгийн өөрийгөө засах системийг бүтээцгээе. Бид LangChain-ийг ашиглан програмын гүйцэтгэлийг хянаж, алдаа илэрсэн үед сэргээх ажиллагааг идэвхжүүлдэг олон агенттай AI системийг бий болгоно.

LangChain болон DSPy ашиглан өөрийгөө эдгээх системийг хэрхэн бүтээхийг харуулсан энгийн кодын блок энд байна.

langchain импортлох
langchain импортын Агент, Сүлжээнээс


төлөөлөгч = Агент(
    нэр = "өөрийгөө эдгээх агент",
    гинж=Гинж(
        нэр = "өөрийгөө эдгээх гинж",
        алхам=[
            {"нэр": "монитор", "функ": хяналт_гүйцэтгэл},
            {"нэр": "сэргээх", "функ": сэргээх_систем},
        ],
    ),
)

# Програмын гүйцэтгэлийг хянах функцийг тодорхойлох
def monitor_performance():
    # Алдаа илрүүлэх дуурайлган хийх
    хэрэв random.random() < 0.5:
        буцаах {"бүтэлгүйтэл": Үнэн}
    өөр:
        буцаах {"бүтэлгүйтэл": Худал}

# Системийг сэргээх функцийг тодорхойлох
def сэргээх_систем (алдаа):
    # Сэргээх үйлдлийг өдөөх
    амжилтгүй бол["бүтэлгүйтлээ"]:
        print("Сэргээх үйлдлийг эхлүүлж байна...")
        # Нөөцлөх системийг байршуулах эсвэл сэргээх үйлдлийг эхлүүлэх
        # ...

# DSPy ажлын урсгалыг бий болгох
ажлын урсгал = DSPy.Workflow(
    нэр = "өөрийгөө эдгээх ажлын урсгал",
    алхам=[
        {"нэр": "монитор", "функ": хяналт_гүйцэтгэл},
        {"нэр": "сэргээх", "функ": сэргээх_систем},
    ],
)

# Ажлын урсгалыг гүйцэтгэх
ажлын урсгал.execute()

Энэхүү кодын блок нь програмын гүйцэтгэлийг хянадаг LangChain агентыг хэрхэн үүсгэхийг харуулж, алдаа илэрсэн үед сэргээх үйлдлийг идэвхжүүлдэг. DSPy ажлын урсгалыг сэргээх үйлдлийг тодорхойлж, алдаа гарсан тохиолдолд гүйцэтгэхэд ашигладаг.

Хамгийн их ашиглагддаг 5-10 тушаал/хэсэг

LangChain болон DSPy-д хамгийн их ашиглагддаг 5-10 тушаал, хэсэгчилсэн хэсгийг энд оруулав.

  1. langchain.Agent(): Шинэ LangChain агент үүсгэнэ.
  2. langchain.Chain(): Шинэ LangChain хэлхээ үүсгэнэ.
  3. dspypy.Workflow(): Шинэ DSPy ажлын урсгалыг үүсгэнэ.
  4. agent.execute(): LangChain агентийг ажиллуулна.
  5. workflow.execute(): DSPy ажлын урсгалыг гүйцэтгэдэг.
  6. agent.chain.steps.append({"name": "step", "func": func}): LangChain гинжин хэлхээнд шинэ алхам нэмнэ.
  7. workflow.steps.append({"name": "step", "func": func}): DSPy ажлын урсгалд шинэ алхам нэмнэ.
  8. agent.chain.steps.remove({"name": "step"}): LangChain гинжин хэлхээнээс алхмыг устгана.
  9. workflow.steps.remove({"name": "step"}): DSPy ажлын урсгалаас нэг алхам устгана.
  10. agent.chain.steps.insert(0, {"name": "step", "func": func}): LangChain гинжин хэлхээний эхэнд шинэ алхам оруулна.

Дүрслэл

Chart.js ашиглан LangChain болон DSPy ажлын урсгалын дүрслэл энд байна:

{
  "төрөл": "бар",
  "өгөгдөл": {
    "шошго": ["Хянах", "Сэргээх"],
    "өгөгдлийн багц": [
      {
        "label": "LangChain",
        "өгөгдөл": [10, 20],
        "backgroundColor": "rgba(255, 99, 132, 0.2)",
        "borderColor": "rgba(255, 99, 132, 1)",
        "хилийн өргөн": 1
      },
      {
        "label": "DSPy",
        "өгөгдөл": [20, 30],
        "backgroundColor": "rgba(54, 162, 235, 0.2)",
        "borderColor": "rgba(54, 162, 235, 1)",
        "хилийн өргөн": 1
      }
    ]
  },
  "сонголт": {
    "гарчиг": {
      "дэлгэц": үнэн,
      "текст": "LangChain болон DSPy ажлын урсгал"
    },
    "масштаб": {
      "yAxes": [
        {
          "хачиг": {
            "beginAtZero": үнэн
          }
        }
      ]
    }
  }
}

Энэхүү дүрслэл нь LangChain болон DSPy ажлын урсгалыг харуулж байгаа бөгөөд зүүн талд "Монитор" алхам, баруун талд "Сэргээх" алхам байна. LangChain ажлын урсгалыг улаан зураасаар төлөөлдөг бол DSPy ажлын урсгалыг цэнхэр зураасаар төлөөлдөг.

Дүгнэлт

Өөрийгөө эдгээх програм хангамжийн системийг олон агентын хиймэл оюун ухаан, зохион байгуулалтын хэрэгслээр бий болгох нь үйлдвэрлэлийг даван туулах чадвартай, дасан зохицох чадвартай системийг бий болгох хүчирхэг арга юм. LangChain болон DSPy нь хөгжүүлэгчдэд алдаа дутагдлыг бодит цаг хугацаанд илрүүлж, хариу арга хэмжээ авах боломжтой өөрийгөө эдгээх системийг бий болгох боломжийг олгодог алдартай зохион байгуулалтын хоёр хэрэгсэл юм.

Энэ нийтлэлд бид олон агентын хиймэл оюун ухааны архитектур, зохион байгуулалтын хэрэгслүүдийн тухай ойлголтыг судалж, LangChain болон DSPy ашиглан өөрийгөө эдгээх системийг хэрхэн бүтээхийг харуулсан. Бид мөн хөгжүүлэгчдэд өөрсдийн өөрийгөө засах системийг барьж эхлэхэд нь туслах зорилгоор олон практик жишээ болон кодын хэсгүүдийг өгсөн.

Та программ хангамжийн инженер, DevOps инженер эсвэл хиймэл оюун ухаан судлаач ч бай LangChain болон DSPy ашиглан өөрийгөө эдгээдэг програм хангамжийн системийг бий болгох нь үйлдвэрлэлийг даван туулах чадвартай, дасан зохицох чадвартай системийг бий болгох хүчирхэг арга юм.


Have Questions?

Let's Talk

Contact me on LinkedIn