Yenza i-arhente yeLangChain | B4N1

Yenza i-arhente yeLangChain

8 months ago · b4n1 Read time: 4 min

Ukubophelela ii-Agent ze-AI zokuNikezelwa kweSoftwe ngokuzenzekela: Ukudibanisa iLangChain kunye neDSPy kwiMibhobho yeDevOps

Intshayelelo

Ubume bophuhliso lwesoftware buvela ngokukhawuleza, ngokunyuka kokwamkelwa koBukrelekrele boBuchule (AI) kunye nokuFunda koMatshini (ML) kwiinkalo ezahlukeneyo zophuhliso lobomi. Enye yezona ndawo zithembisayo zesicelo se-AI kukuzenzekelayo iinkqubo zokuhanjiswa kwesoftware, kubandakanya i-telemetry kunye nokuhlanganiswa okuqhubekayo / ukuthunyelwa okuqhubekayo (CI / CD). Kweli nqaku, siza kuphonononga indima yee-arhente ze-AI ekuzenzeleni iinkqubo zokuhanjiswa kwesoftware kwaye sijonge ekuphunyezweni okusebenzayo kwezixhobo ze-orchestration ezifana neLangChain kunye neDSPy.

Indima yeearhente ze-AI kuNikezelo lweSoftware

Iiarhente ze-AI ziinkqubo zesoftware ezinokwenza imisebenzi ngokuzimeleyo, zenze izigqibo ezisekelwe kwidatha kunye nemithetho. Kumxholo wokuhanjiswa kwesoftware, iiarhente ze-AI zinokusetyenziselwa ukwenza iinkqubo ezahlukeneyo, ezinje:

  1. I-Telemetry: Ii-arhente ze-AI zinokuqokelela kwaye zihlalutye idatha evela kwimithombo eyahlukeneyo, njengeelogi zesicelo, i-metrics yokusebenza, kunye nengxelo yomsebenzisi, ukubonelela ngengqiqo kwindlela yokuziphatha kunye nokusebenza kwesicelo.
  2. ** Ukuhlanganiswa okuqhubekayo **: Ii-arhente ze-AI zinokwenza ngokuzenzekelayo ukwakha, ukuvavanya, kunye nokuthunyelwa kweenguqu zekhowudi, ukuqinisekisa ukuba isicelo sihlala sikwimeko yokuthunyelwa.
  3. ** Ukusasazwa ngokuqhubekayo **: Ii-arhente ze-AI zinokwenza ngokuzenzekelayo ukuthunyelwa kweenguqu kwimveliso, ukunciphisa ixesha kunye nomzamo ofunekayo wokufumana iimpawu ezintsha kunye nokulungiswa kwabasebenzisi.
  4. Ukubeka iliso kunye noKwazisa: Ii-arhente ze-AI zinokubeka iliso ekusebenzeni kwesicelo kwaye zilumkise abaphuhlisi kunye nabaqhubi kwimiba enokubakho ngaphambi kokuba ibe yingozi.

LangChain: Isakhelo soKwakha iiarhente ze-AI

I-LangChain yinkqubo ye-Python yokwakha ii-arhente ze-AI ezinokusebenzisana nemithombo eyahlukeneyo yedatha kwaye zenze imisebenzi ngokuzimeleyo. I-LangChain ibonelela nge-API elula kunye ne-intuitive yee-arhente zokwakha ezinoku:

  1. ** Ukusebenzisana nemithombo yedatha ** : I-LangChain inikezela uluhlu lwemithombo yedatha, kubandakanywa i-database, i-APIs, kunye neenkqubo zefayile, ezinokuthi zisebenzisana nazo.
  2. **Yenza imisebenzi **: I-LangChain inikezela uluhlu lwemisebenzi eyenziwa ngama-agent, kubandakanywa ukucutshungulwa kwesicatshulwa, ukuqaphela umfanekiso, kunye nolwimi lwendalo.
  3. **Funda kwidatha **: I-LangChain ibonelela ngoluhlu lwe-algorithms yokufunda ngomatshini ukuba ii-agent zingasebenzisa ukufunda kwiidatha.

DSPy: Isakhelo soKwakha ii-Arhente ze-AI eziSasazwe

I-DSPy yinkqubo-sikhokelo yePython yokwakha ii-arhente ze-AI ezisasazwayo ezinokukhula ukuhlangabezana neemfuno zezicelo ezinkulu. I-DSPy ibonelela ngoluhlu lweempawu, kubandakanya:

  1. **I-computing esasazwayo **: I-DSPy ivumela ii-arhente ukuba zisebenze koomatshini abaninzi, okwenza kube yinto efanelekileyo kwizicelo ezinkulu.
  2. Ukunxulunyaniswa kwedatha: I-DSPy ivumela ii-arhente ukuba zisebenze idatha ngaxeshanye, nto leyo eyenza ukuba ibe yeyona nto ifanelekileyo kwizicelo ezifuna ikhompyutha esebenza kakhulu.
  3. Scalability: I-DSPy ivumela ii-arhente ukuba zilinganise ukuhlangabezana neemfuno zezicelo ezinkulu.

Ukudibanisa iLangChain kunye neDSPy kwiMibhobho yeDevOps

Ukudibanisa iLangChain kunye ne-DSPy kwimibhobho ye-DevOps, sinokusebenzisa la manyathelo alandelayo:

  1. **Faka i-LangChain kunye ne-DSPy **: Faka i-LangChain kunye ne-DSPy usebenzisa i-pip.
pip ufake langchain dspy
  1. **Yenza i-agent ye-LangChain **: Yenza i-agent ye-LangChain engakwazi ukusebenzisana nemithombo yedatha kunye nokwenza imisebenzi.
ngenisa i-langchain


iarhente = langchain.Agent(
    igama = "ummeli_wam",
    idatha_sources=[langchain.DataSource("database", "my_database")],
    imisebenzi=[langchain.Task("text_processing", "my_text_processing")]
)
  1. Yenza i-arhente ye-DSPy: Yenza i-arhente ye-DSPy enokuthi isebenze koomatshini abaninzi kwaye iqhube idatha ngokufanayo.
ngenisa dSpy

# Yenza iarhente yeDSPy
iarhente = dspy.Agent(
    igama = "ummeli_wam",
    idatha_sources=[dspy.DataSource("database", "my_database")],
    imisebenzi=[dspy.Task("text_processing", "my_text_processing")]
)
  1. Hlanganisa i-LangChain kunye nee-arhente ze-DSPy: Dibanisa i-LangChain kunye nee-arhente ze-DSPy kumbhobho we-DevOps usebenzisa isixhobo esifana ne-Jenkins okanye i-GitLab CI/CD.
ngenisa i-langchain
ngenisa dSpy

# Yenza iarhente yeLangChain
langchain_agent = langchain.Agent(
    igama="my_langchain_agent",
    idatha_sources=[langchain.DataSource("database", "my_database")],
    imisebenzi=[langchain.Task("text_processing", "my_text_processing")]
)

# Yenza iarhente yeDSPy
dspy_agent = dspy.Agent(
    igama="my_dspya_arhente",
    idatha_sources=[dspy.DataSource("database", "my_database")],
    imisebenzi=[dspy.Task("text_processing", "my_text_processing")]
)

# Hlanganisa iiarhente kumbhobho weDevOps
umbhobho = [
    langchain_arhente,
    dspy_arhente
]

Ephezulu 5-10 Eyeyona Isetyenziswayo Imiyalelo/iziqwengana

Nantsi eyona miyalelo/iziqwengana eziphezulu ezi-5-10 zeLangChain kunye neDSPy:

  1. LangChain: Yenza i-arhente yeLangChain
ngenisa i-langchain

iarhente = langchain.Agent(
    igama = "ummeli_wam",
    idatha_sources=[langchain.DataSource("database", "my_database")],
    imisebenzi=[langchain.Task("text_processing", "my_text_processing")]
)
  1. I-DSPy: Yenza i-arhente ye-DSPy
ngenisa dSpy

iarhente = dspy.Agent(
    igama = "ummeli_wam",
    idatha_sources=[dspy.DataSource("database", "my_database")],
    imisebenzi=[dspy.Task("text_processing", "my_text_processing")]
)
  1. **LangChain: Sebenzisana nomthombo wedatha **
ngenisa i-langchain

iarhente = langchain.Agent(
    igama = "ummeli_wam",
    idatha_sources=[langchain.DataSource("database", "my_database")],
    imisebenzi=[langchain.Task("text_processing", "my_text_processing")]
)

idatha = agent.data_sources[0].get_data()
  1. I-DSPy: Sebenzisana nomthombo wedatha
ngenisa dSpy

iarhente = dspy.Agent(
    igama = "ummeli_wam",
    idatha_sources=[dspy.DataSource("database", "my_database")],
    imisebenzi=[dspy.Task("text_processing", "my_text_processing")]
)

idatha = agent.data_sources[0].get_data()
  1. LangChain: Yenza umsebenzi
ngenisa i-langchain

iarhente = langchain.Agent(
    igama = "ummeli_wam",
    idatha_sources=[langchain.DataSource("database", "my_database")],
    imisebenzi=[langchain.Task("text_processing", "my_text_processing")]
)

isiphumo = iarhente.imisebenzi[0].perform_task(idatha)
  1. DSPy: Yenza umsebenzi
ngenisa dSpy

iarhente = dspy.Agent(
    igama = "ummeli_wam",
    idatha_sources=[dspy.DataSource("database", "my_database")],
    imisebenzi=[dspy.Task("text_processing", "my_text_processing")]
)

isiphumo = iarhente.imisebenzi[0].perform_task(idatha)
  1. LangChain: Funda kwiidatha
ngenisa i-langchain

iarhente = langchain.Agent(
    igama = "ummeli_wam",
    idatha_sources=[langchain.DataSource("database", "my_database")],
    imisebenzi=[langchain.Task("text_processing", "my_text_processing")]
)

iarhente.funda_kwidatha(data)
  1. DSPy: Funda kwiidatha
ngenisa dSpy

iarhente = dspy.Agent(
    igama = "ummeli_wam",
    idatha_sources=[dspy.DataSource("database", "my_database")],
    imisebenzi=[dspy.Task("text_processing", "my_text_processing")]
)

iarhente.funda_kwidatha(data)
  1. LangChain: Dibanisa ngombhobho we-DevOps
ngenisa i-langchain

iarhente = langchain.Agent(
    igama = "ummeli_wam",
    idatha_sources=[langchain.DataSource("database", "my_database")],
    imisebenzi=[langchain.Task("text_processing", "my_text_processing")]
)

umbhobho = [
    iarhente
]
  1. DSPy: Dibanisa ngombhobho we-DevOps
ngenisa dSpy

iarhente = dspy.Agent(
    igama = "ummeli_wam",
    idatha_sources=[dspy.DataSource("database", "my_database")],
    imisebenzi=[dspy.Task("text_processing", "my_text_processing")]
)

umbhobho = [
    iarhente
]

Umbono

Nantsi imbonakalo yeLangChain kunye neearhente ze-DSPy kumbhobho we-DevOps:

{
  "type": "bar",
  "idatha": {
    "labels": ["LangChain", "DSPy"],
    "iiseti zedatha": [
      {
        "label": "Iarhente",
        "idatha": [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
      }
    ]
  },
  "iinketho": {
    "isihloko": {
      "bonisa": yinyani,
      "umbhalo": "I-LangChain kunye ne-DSPy Agents kuMbhobho we-DevOps"
    },
    "izikali": {
      "yAxes": [
        {
          "amanqaku": {
            "beginAtZero": yinyani
          }
        }
      ]
    }
  }
}

Lo mboniso ubonisa i-LangChain kunye ne-DSPy i-agent kwipayipi ye-DevOps, kunye ne-agent ye-LangChain enemisebenzi eyi-10 kunye ne-agent ye-DSPy enemisebenzi ye-20.

Isiphelo

Kweli nqaku, sihlolisise indima yee-arhente ze-AI ekuzenzeni ngokuzenzekelayo iinkqubo zokuhanjiswa kwesoftware kwaye sijonge ekuphunyezweni okusebenzayo kwezixhobo ze-orchestration ezifana neLangChain kunye ne-DSPy. Siye sabona indlela iLangChain kunye ne-DSPy enokusetyenziswa ngayo ukudala i-AI agents ezinokusebenzisana nemithombo yedatha, ukwenza imisebenzi, kwaye ufunde kwiinkcukacha. Siphinde sabona indlela iLangChain kunye ne-DSPy inokudibaniswa ngayo kwiipayipi ze-DevOps usebenzisa izixhobo ezifana neJenkins okanye i-GitLab CI / CD. Ngokwamkelwa okwandisiweyo kwe-AI kunye ne-ML ekuphuhlisweni kwesoftware, iLangChain kunye ne-DSPy ziya ziba zizixhobo ezibaluleke kakhulu kubaphuhlisi kunye nabaqhubi abafuna ukwenza ngokuzenzekelayo iinkqubo zokuhanjiswa kwesoftware.


Have Questions?

Let's Talk

Contact me on LinkedIn