DSPy шугам үүсгэх | B4N1

DSPy шугам үүсгэх

3 months ago · b4n1 Read time: 3 min

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

Танилцуулга

Програм хангамжаар тодорхойлогдсон тээврийн хэрэгслийн (SDV) хувьсгал нь үр ашгийг нэмэгдүүлэх, зардлыг бууруулах, гүйцэтгэлийг сайжруулах амлалтаараа автомашины салбарыг өөрчилж байна. Гэсэн хэдий ч SDV системийн нарийн төвөгтэй байдал нь хиймэл оюун ухаан (AI) болон автоматжуулалтын хүчийг ашиглан програм хангамжийг хүргэх илүү боловсронгуй хандлагыг шаарддаг. Энэ нийтлэлд бид AI агентууд, харилцааны хийсвэр графикууд (RAGs) болон том хэлний загваруудыг (LLMs) DevOps автоматжуулалтын хэрэгслүүдтэй нэгтгэх боломжийг олгодог хамгийн сүүлийн үеийн технологи болох DSPy болон LangChain ашиглан хиймэл оюун ухаанд суурилсан програм хангамжийн хүргэлтийг хэрхэн зохицуулах талаар судлах болно.

SDV-д програм хангамж нийлүүлэхэд тулгарч буй бэрхшээлүүд

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

  • ** Өргөтгөх чадвар**: SDV системүүд нь өөрчлөгдөж буй хэрэглэгчийн эрэлт хэрэгцээг хангахын тулд хурдан байршуулах, өргөтгөх шаардлагатай.
  • ** Гүйцэтгэл**: Програм хангамжийн хүргэлт нь оновчтой гүйцэтгэл, найдвартай байдал, аюулгүй байдлыг хангах ёстой.
  • ** Нарийн төвөгтэй байдал**: SDV системүүд нь олон оролцогч талууд, технологи, үйл явцыг хамардаг тул програм хангамжийн хангамжийг удирдах, зохицуулахад хүндрэл учруулдаг.

DSPy болон LangChain-ийг танилцуулж байна

DSPy болон LangChain нь SDV-д програм хангамжийг хүргэхэд тулгарч буй сорилтуудыг шийдвэрлэх хоёр шинэлэг технологи юм. DSPy нь AI-д суурилсан програм хангамжийг дамжуулах шугамыг бий болгох, ашиглахад зориулагдсан Python-д суурилсан хүрээ бөгөөд LangChain нь LLM болон RAG-уудыг үүсгэх, удирдах зориулалттай Rust-д суурилсан номын сан юм.

DSPy: хиймэл оюун ухаанд суурилсан програм хангамжийг хүргэх Python-д суурилсан хүрээ

DSPy нь хиймэл оюун ухаанд суурилсан програм хангамжийг дамжуулах шугам сүлжээг бий болгох, ашиглахад зориулсан иж бүрэн хэрэгсэл, номын сангуудаар хангадаг. Үүний гол шинж чанарууд нь:

  • ** Дамжуулах хоолойн зохион байгуулалт**: DSPy нь даалгавар, ажлын урсгал, хамаарлыг багтаасан нарийн төвөгтэй програм хангамжийн дамжуулах шугамыг үүсгэх, удирдах боломжийг олгодог.
  • AI интеграцчилал: DSPy нь TensorFlow болон PyTorch зэрэг алдартай хиймэл оюун ухааны хүрээнүүдтэй саадгүй нэгтгэх боломжийг олгодог.
  • DevOps автоматжуулалт: DSPy нь Jenkins, GitLab зэрэг алдартай DevOps хэрэгслүүдтэй нэгтгэхийг дэмждэг.

LangChain: LLM болон RAG-д зориулсан зэвэнд суурилсан номын сан

LangChain нь LLM болон RAG үүсгэх, удирдах зориулалттай Rust-д суурилсан номын сан юм. Үүний гол шинж чанарууд нь:

  • LLM интеграцчилал: LangChain нь BERT, RoBERTa зэрэг алдартай LLM-уудтай нэгдмэл байдлыг хангадаг.
  • RAG менежмент: LangChain нь мэдлэгийн графикуудын бүтэцлэгдсэн дүрслэлийг хангадаг RAG-уудыг үүсгэх, удирдах боломжийг олгодог.
  • AI үндэслэл: LangChain нь LLM болон RAG ашиглан хиймэл оюун ухааны үндэслэл, дүгнэлтийг дэмждэг.

AI-д суурилсан програм хангамжийг хүргэх DSPy болон LangChain-ийг нэгтгэх

DSPy болон LangChain-ийг нэгтгэхийн тулд бид дараах код блокыг жишээ болгон ашиглаж болно.

dspy импортлох
langchain import LLM, RAG-аас


дамжуулах хоолой = dspy.Pipeline(
    name = "ai-driven-software- Delivery",
    даалгавар=[
        dspy.Task("үүсгэх", "програм хангамж бүтээх"),
        dspy.Task("туршилт", "туршилтын програм хангамж"),
        dspy.Task("deploy", "deploy-software")
    ]
)

# LLM болон RAG үүсгэх
llm = LLM("bert-base-uncased")
rag = RAG("програм хангамжийн хүргэлт")

# LLM болон RAG-ийг DSPy дамжуулах хоолойтой нэгтгэх
pipeline.add_task(dspy.Task("ai-reasoning", "ai-reasoning", llm, rag))

# Дамжуулах хоолойг ажиллуул
pipeline.run()

Энэхүү кодын блок нь DSPy дамжуулах шугамыг хэрхэн үүсгэх, LangChain ашиглан LLM болон RAG-ийг нэгтгэх, DSPy ашиглан дамжуулах хоолойг хэрхэн ажиллуулахыг харуулж байна.

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

DSPy болон LangChain-д зориулсан хамгийн их ашиглагддаг 5-10 тушаал/хэсэг энд байна:

  • DSPy
    • dspy.Pipeline(): Шинэ DSPy шугам үүсгэх.
    • dspy.Task(): Дамжуулах хоолойд шинэ даалгавар үүсгэнэ үү.
    • pipeline.add_task(): Дамжуулах хоолойд ажил нэмнэ.
    • pipeline.run(): Дамжуулах хоолойг ажиллуул.
  • LangChain
    • LLM(): Шинэ LLM үүсгэх.
    • RAG(): Шинэ RAG үүсгэх.
    • llm.train(): LLM-ийг сургах.
    • rag.build(): RAG-г бүтээх.

Дүрслэл

Chart.js ашиглан DSPy дамжуулах хоолойн дүрслэлийг энд үзүүлэв.

{
  "төрөл": "бар",
  "өгөгдөл": {
    "шошго": ["Бүтээх", "Туршилт", "Байршуулах", "AI үндэслэл"],
    "өгөгдлийн багц": [
      {
        "label": "Хамгийн шугам хоолойн даалгавар",
        "өгөгдөл": [10, 20, 30, 40],
        "backgroundColor": ["#4CAF50", "#FF9800", "#2196F3", "#8BC34A"]
      }
    ]
  },
  "сонголт": {
    "гарчиг": {
      "дэлгэц": үнэн,
      "текст": "DSPy дамжуулах шугамын даалгавар"
    },
    "масштаб": {
      "yAxes": [
        {
          "хачиг": {
            "beginAtZero": үнэн
          }
        }
      ]
    }
  }
}

Энэхүү дүрслэл нь бүтээх, турших, байршуулах, хиймэл оюун ухааны үндэслэл зэрэг дамжуулах хоолойн ажлуудыг харуулж байна.

Дүгнэлт

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


Have Questions?

Let's Talk

Contact me on LinkedIn