Kupanga Mapaipi Akuluakulu a LLM okhala ndi DSPy ndi LangChain kwa Ma DevOps Otukuka | B4N1

Kupanga Mapaipi Akuluakulu a LLM okhala ndi DSPy ndi LangChain kwa Ma DevOps Otukuka

6 months ago · b4n1 Read time: 4 min

Kukonza Mapaipi Akuluakulu a LLM okhala ndi DSPy ndi LangChain kwa Ma DevOps Otsogola

Chiyambi

Kubwera kwa Large Language Models (LLMs) kwasintha gawo la Natural Language Processing (NLP) ndi Artificial Intelligence (AI). Komabe, momwe zovuta ndi kuchuluka kwa machitidwe ozikidwa pa LLM akuchulukirachulukira, kufunikira kwa zida zolimba komanso zowongolera komanso zodzipangira zimayambanso. M'nkhaniyi, tidzayang'ana dziko la DSPy ndi LangChain, machitidwe awiri amphamvu omwe amathandiza kumanga machitidwe okhwima ndi owopsa a mapulogalamu mu nthawi ya AI.

**Kuvuta kwa Mapaipi Akuluakulu a LLM **

Mapaipi akuluakulu a LLM amaphatikizapo zigawo zingapo, kuphatikizapo kusamalitsa deta, kuphunzitsa zitsanzo, ndi kulingalira. Mapaipiwa amatha kukhala ovuta, okhala ndi zodalira zambiri komanso kulumikizana pakati pa zigawo zosiyanasiyana. Pamene kukula kwa mapaipiwa akuchulukirachulukira, momwemonso chiopsezo cha zolakwika, kuchedwa, ndi kulephera kwazinthu kumakula.

Lowani DSPy ndi LangChain

DSPy ndi LangChain ndi magawo awiri omwe cholinga chake ndi kupeputsa kuyimba ndi makina a mapaipi akulu a LLM. DSPy ndi dongosolo la Python lomwe limapereka njira yosavuta komanso yabwino yopangira ndi kuyendetsa mapaipi ovuta a deta, pamene LangChain ndi ndondomeko yomwe imathandiza kumanga machitidwe a AI owopsa komanso okhazikika.

DSPy: Chikhazikitso Chokhazikitsidwa ndi Python cha Mapaipi a Data

DSPy ndi dongosolo la Python lomwe limapereka njira yosavuta komanso yabwino yopangira ndi kuyendetsa mapaipi ovuta a deta. Ndi DSPy, opanga amatha kupanga mapaipi a data omwe ali owopsa, olimba, komanso osavuta kusamalira.

Nachi chitsanzo cha payipi yosavuta ya data yomangidwa ndi DSPy:

lowetsani dsp ngati dsp


data_source = dsp.Source(
    dzina="my_data_source",
    mtundu = "csv",
    path="/path/to/data.csv"
)

# Tanthauzirani purosesa ya data
data_processor = dsp.Processor(
    dzina="my_data_processor",
    mtundu = "panda",
    func=lambda x: x.dropna()
)

# Tanthauzirani kuzama kwa data
data_sink = dsp.Sink(
    dzina = "my_data_sink",
    mtundu = "csv",
    path="/path/to/output.csv"
)

# Pangani payipi ya data
pipeline = dsp.Pipeline(
    dzina = "my_pipeline",
    magwero=[data_source],
    mapurosesa=[data_processor],
    pansi =[data_sink]
)

# Yambitsani bomba
pipeline.run()

Muchitsanzo ichi, timatanthauzira gwero la data, purosesa ya data, ndi sinki ya data, ndiyeno timapanga mapaipi a data omwe amalumikiza zigawozi. Njirayi imayendetsedwa pogwiritsa ntchito njira ya run().

LangChain: Dongosolo la Scalable and Resilient AI Systems

LangChain ndi chimango chomwe chimathandiza kumanga machitidwe owopsa komanso olimba a AI. Ndi LangChain, Madivelopa amatha kupanga machitidwe a AI omwe ndi osavuta kuwasamalira, owopsa, komanso olimba pakulephera.

Nachi chitsanzo cha njira yosavuta ya AI yomangidwa ndi LangChain:

import langchain ngati lc

# Fotokozani chitsanzo
chitsanzo = lc.Model(
    dzina = "my_model",
    mtundu="transformer",
    njira="/njira/ku/chitsanzo"
)

# Sinthani chidziwitso
mwachangu = lc.Prompt(
    dzina = "my_prompt",
    text="Ichi ndichitsanzo chachitsanzo"
)

# Pangani dongosolo la AI
ai_system = lc.AISystem(
    dzina = "my_ai_system",
    chitsanzo=chitsanzo,
    mwachangu=changu
)

# Yambitsani dongosolo la AI
ai_system.run ()

Mu chitsanzo ichi, timafotokozera chitsanzo, mwamsanga, ndiyeno timapanga dongosolo la AI lomwe limagwirizanitsa zigawozi. Njira ya AI imayendetsedwa pogwiritsa ntchito njira ya run().

Kukonza Mapaipi Akuluakulu a LLM okhala ndi DSPy ndi LangChain

Kupanga mapaipi akulu a LLM okhala ndi DSPy ndi LangChain, titha kugwiritsa ntchito njira iyi:

  1. Kutanthauzira payipi ya data pogwiritsa ntchito DSPy yomwe imalumikiza magwero angapo a data, mapurosesa, ndi masinki.
  2. Tanthauzirani dongosolo la AI pogwiritsa ntchito LangChain lomwe limagwirizanitsa zitsanzo zambiri, zolimbikitsa, ndi zotuluka.
  3. Gwiritsani ntchito DSPy kuyang'anira payipi ya data ndi LangChain kuti muyang'ane dongosolo la AI.
  4. Gwiritsani ntchito ndondomeko monga Apache Airflow kapena Kubernetes kuti mukonzekere kuchitidwa kwa payipi ya data ndi dongosolo la AI.

Nachi chitsanzo cha script yosavuta ya orchestration yomwe imagwiritsa ntchito DSPy ndi LangChain:

lowetsani dsp ngati dsp
import langchain ngati lc
lowetsani apache_airflow ngati af

# Tanthauzirani payipi ya data
data_pipeline = dsp.Pipeline(
    dzina="my_data_pipeline",
    magwero=[dsp.Source(dzina="my_data_source", type="csv", path="/path/to/data.csv")],
    mapurosesa=[dsp.Processor(dzina="my_data_processor", type="pandas", func=lambda x: x.dropna())],
    sinks=[dsp.Sink(dzina = "my_data_sink", type="csv", path="/path/to/output.csv")]
)

# Fotokozani dongosolo la AI
ai_system = lc.AISystem(
    dzina = "my_ai_system",
    model=lc.Model(dzina = "my_model", type="transformer", path="/njira/to/model"),
    prompt=lc.Prompt(dzina = "my_prompt", text="Ichi ndichitsanzo").
)

# Konzani kachitidwe ka mapaipi a data ndi kachitidwe ka AI
af.schedule_task(
    task_id="my_task",
    dag_id="my_dag",
    pipeline=data_paipi,
    system=ai_system
)

Mu chitsanzo ichi, timafotokozera payipi ya deta ndi dongosolo la AI pogwiritsa ntchito DSPy ndi LangChain, ndiyeno timakonzekera kuchitidwa kwa zigawozi pogwiritsa ntchito Apache Airflow.

**Malamulo/Zidutswa Zapamwamba za 5-10 **

Nawa malamulo/zidutswa 5-10 zomwe zimagwiritsidwa ntchito kwambiri pa DSPy ndi LangChain:

  1. dsp.Pipeline(dzina="my_pipeline", magwero=[gwero], mapurosesa=[purosesa], kusinki=[sink])
  2. lc.Model(dzina="my_model", type="transformer", path="/njira/to/model")
  3. lc.Prompt(dzina="my_prompt", text="Ichi ndichitsanzo chachitsanzo")
  4. dsp.Source(dzina="my_data_source", mtundu="csv", path="/path/to/data.csv")
  5. dsp.Processor(dzina="my_data_processor", type="pandas", func=lambda x: x.dropna())
  6. dsp.Sink(dzina="my_data_sink", mtundu="csv", path="/path/to/output.csv")
  7. lc.AISystem(dzina="my_ai_system", model=model, prompt=prompt)
  8. af.schedule_task(task_id="my_task", dag_id="my_dag", pipeline=pipeline, system=system)
  9. dsp.run_pipeline(paipi)
  10. lc.run_system(system)

**Kuwona **

Pano pali chithunzithunzi cha DSPy ndi LangChain frameworks pogwiritsa ntchito Chart.js:

{
  "type": "bar",
  "data": {
    "labels": ["DSPy", "LangChain"],
    "ma dataset": [
      {
        "label": "Zinthu",
        "data": [10, 15],
        "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
      }
    ]
  },
  "zosankha": {}
}

Kuwoneka uku kukuwonetsa kuchuluka kwazinthu mu DSPy ndi LangChain.

Mapeto

DSPy ndi LangChain ndi zigawo ziwiri zamphamvu zomwe zimathandiza kumanga mapulogalamu olimba komanso owopsa m'zaka za AI. Pogwiritsa ntchito magawowa, opanga amatha kupanga mapaipi akulu akulu a LLM omwe ndi osavuta kuwasamalira, owopsa, komanso otha kulephera. Mothandizidwa ndi zida za orchestration ndi automation monga Apache Airflow ndi Kubernetes, okonza amatha kukonza zopangira mapaipi ndi machitidwewa, kuti zikhale zosavuta kuyang'anira machitidwe ovuta a AI.

Ntchito Yamtsogolo

Ntchito zam'tsogolo zikuphatikizapo:

  1. Kupanga zinthu zambiri za DSPy ndi LangChain.
  2. Kupititsa patsogolo ntchito ndi scalability ya DSPy ndi LangChain.
  3. Kupanga zida zambiri zoyimba ndi zida za DSPy ndi LangChain.
  4. Kupanga zowonera zambiri ndi ma dashboards a DSPy ndi LangChain.

Ndemanga

  1. Zolemba za DSPy: https://dspy.readthedocs.io/en/latest/
  2. Zolemba za LangChain: https://langchain.readthedocs.io/en/latest/
  3. Zolemba za Apache Airflow: https://airflow.apache.org/docs/apache-airflow/stable/index.html
  4. Zolemba za Kubernetes: https://kubernetes.io/docs/home/

Have Questions?

Let's Talk

Contact me on LinkedIn