Yenza umzekelo weLangChain LLM | B4N1

Yenza umzekelo weLangChain LLM

6 months ago · b4n1 Read time: 3 min

Ukuphumeza uYilo oluKhuselekileyo ngokuSiseko lwe-AI-Powered Web Applications

Intshayelelo

Njengoko usetyenziso lwewebhu olunikwe amandla e-AI luya luxhaphaka ngakumbi, imfuno yolwakhiwo olomeleleyo nolukhuselekileyo aluzange lucinezele ngakumbi. Ngokunyuka kohlaselo oluqhutywa yi-AI, kubalulekile ukuphumeza indlela ekhuselekileyo-yokuqala enokumelana nezoyikiso ezinokubakho. Kweli nqaku, siza kuphonononga indlela yokudibanisa i-database ye-Percona ekhuselekileyo yomthombo ovulekileyo kunye ne-Chainguard ekhuselekileyo-nge-default kwaye idibanise ne-LangChain ye-AI-powered web applications.

Izoyikiso kwi-AI-Powered Web Applications

Usetyenziso lwewebhu olunikwe amandla nge-AI lusesichengeni kwizisongelo ezahlukeneyo, kubandakanya:

  • I-Data Poisoning: Iimodeli ze-AI zinokuguqulwa ngokuzondla idatha enobungozi, ekhokelela kuqikelelo olungachanekanga okanye izigqibo.
  • Ukuguqulwa kweModeli: Abahlaseli banokufaka ulwazi olubuthathaka malunga nemodeli ye-AI okanye idatha yoqeqesho.
  • Uhlaselo lwe-Adversarial: Iimodeli ze-AI zinokukhohliswa ngamagalelo enziwe ngononophelo alungiselelwe ukulahlekisa imodeli.

Khusela-ngoSilelo lweArchitecture

Ukunciphisa ezi zoyikiso, siya kusebenzisa i-architecture ekhuselekileyo-ngo-default edibanisa i-database ye-Percona ekhuselekileyo yomthombo ovulekileyo kunye nendlela ye-Chainguard ekhuselekileyo-nge-default kwaye idibanisa ne-LangChain ye-AI-powered web applications.

I-Percona's Khusela i-Open-Source Databases

I-Percona inikezela ngoluhlu olukhuselekileyo lwemithombo yolwazi evulekileyo, kuquka i-Percona Server ye-MySQL kunye ne-Percona Server ye-PostgreSQL. Ezi nkcukacha zibonelela ngeempawu zokhuseleko ezomeleleyo, ezinje:

  • Uguqulelo oluntsonkothileyo: Idatha iguqulelwa ngokuntsonkothileyo xa iphumle kwaye isendleleni, iqinisekisa ukuba ulwazi olunovakalelo luhlala luyimfihlo.
  • Ulawulo loFikelelo: Ulawulo lofikelelo olugqwesileyo luvumela abalawuli ukuba bathintele ukufikelela kwidatha ebuthathaka kwaye baqinisekise ukuba ngabasebenzi abagunyazisiweyo kuphela abanokuguqula okanye ukucima idatha.
  • Uphicotho-zincwadi: Izakhono zophicotho-zincwadi oluneenkcukacha zibonelela ngerekhodi ebanzi yawo wonke umsebenzi wesiseko sedatha, okwenza kube lula ukubhaqa kunye nokusabela kwizehlo zokhuseleko.

Indlela kaChainguard eKhuselekileyo ngokuMiselweyo

I-Chainguard inikezela ngendlela ekhuselekileyo-nge-default eqinisekisa ukuba izicelo zakhiwe ngokhuseleko engqondweni kwasekuqaleni. Le ndlela ibandakanya:

  • Ilungelo elincinane: Usetyenziso luyilelwe ukuba luqhube nelona lungelo lincinci liyimfuneko ukwenza imisebenzi yazo, ukunciphisa umphezulu wohlaselo.
  • Iziseko zophuhliso ezingaguqukiyo: Iziseko zophuhliso ziyilelwe ukuba zingaguquki, zenza kube lula ukubhaqa kunye nokusabela kwizehlo zokhuseleko.
  • Uqwalaselo oluKhuselekileyo: Ii-aplikeshini ziqwalaselwe ngokhuseleko engqondweni, kubandakanywa izinto ezihlala zikhuselekile kunye noqwalaselo oluncinci.

LangChain Integration

I-LangChain yilayibrari yePython ebonelela nge-API elula kunye ne-intuitive yokwakha izicelo zewebhu ze-AI. Siza kudibanisa iLangChain kunye nedatha ekhuselekileyo yemithombo evulekileyo yePercona kunye nendlela yeChainguard ekhuselekileyo-yokuqala yokudala ulwakhiwo olomeleleyo nolukhuselekileyo.

Umzekelo weKhowudi

Nanku umzekelo wekhowudi olula obonisa indlela yokudibanisa iLangChain kunye nedatha ekhuselekileyo yemithombo evulekileyo yePercona kunye nendlela ekhuselekileyo kaChainguard:

ngenisa i-langchain
ukusuka kwi-LLM yokungenisa i-langchain


llm = LLM(
    imodeli_igama = "davinci: 2-enkulu",
    isixhobo="cuda",
    max_tokens=1024,
)

# Yenza unxibelelwano lwedatha yePercona
ngenisa i-mysql.connector
cnx = mysql.connector.connect(
    umsebenzisi='igama lomsebenzisi',
    igama lokugqitha='igama lokugqitha',
    umamkeli='127.0.0.1',
    idatabase='database'
)

# Yenza uqwalaselo olukhuselekileyo lweChainguard
ngenisa i-chainard
cfg = chainguard.Config(
    app_name="my_app",
    app_version="1.0",
    env_vars={
        "DB_HOST": "127.0.0.1", "127.0.0.1",
        "DB_USER": "igama lomsebenzisi",
        "DB_PASSWORD": "password",
    },
)

# Sebenzisa iLangChain ukubuza idatabase
umbuzo = "KHETHA * KWItafile yam"
iziphumo = llm.query(umbuzo, db=cnx, cfg=cfg)

# Shicilela umphumo
shicilela(isiphumo)

Lo mzekelo wekhowudi ubonisa indlela yokwenza umzekelo weLangChain LLM, udibanise kwi-database yePercona, kwaye wenze uqwalaselo olukhuselekileyo lweChainguard. Emva koko isebenzisa iLangChain ukubuza isiseko sedatha kwaye uprinte umphumo.

Ephezulu 5-10 Eyeyona Isetyenziswayo Imiyalelo/iziqwengana

Nantsi eyona miyalelo/iziqwengana eziphezulu ezi-5-10 zobuchwephesha:

  1. langchain.LLM(model_name="davinci:2-large", device="cuda", max_tokens=1024) - Yenza umzekelo weLangChain LLM.
  2. mysql.connector.connect(umsebenzisi='igama lomsebenzisi', i-password='password', host='127.0.0.1', idatabase='database') - Yenza uqhagamshelwano lwesiseko sedatha yePercona.
  3. chainguard.Config(app_name="my_app", app_version="1.0", env_vars={"DB_HOST": "127.0.0.1", "DB_USER": "igama lomsebenzisi", "DB_PASSWORD": "password"}) - Yenza uqwalaselo olukhuselekileyo lweChainguard.
  4. llm.query(umbuzo, db=cnx, cfg=cfg) - Sebenzisa iLangChain ukubuza uvimba weenkcukacha.
  5. Shicilela(isiphumo) - Shicilela isiphumo sombuzo.
  6. import langchain - Ngenisa ithala leencwadi laseLangChain.
  7. ngenisa i-mysql.connector -Ngenisa ngaphandle isidibaniso sedatha yePercona.
  8. import chainguard - Thatha ngaphandle ithala leencwadi laseChainguard.
  9. llm = LLM() - Yenza umzekelo weLLM weLangChain ngaphandle kokuchaza imodeli.
  10. cnx = mysql.connector.connect() - Yenza uqhagamshelwano lwesiseko sedatha yePercona ngaphandle kokuchaza isiseko sedatha.

Umbono

Nantsi imbonakalo yolwakhiwo olukhuselekileyo oluhlala luhleli usebenzisa iChart.js:

{
  "type": "bar",
  "idatha": {
    "labels": ["Percona Database", "Chainguard Secure Configuration", "LangChain LLM"],
    "iiseti zedatha": [
      {
        "label": "Iimpawu zoKhuseleko",
        "idatha": [10, 8, 12],
        "backgroundColor": ["#FF6384", "#36A2EB", "#FFCE56"]
      }
    ]
  },
  "iinketho": {
    "isihloko": {
      "bonisa": yinyani,
      "umbhalo": "Khusela-ngoSimekelo lweZakhiwo"
    },
    "izikali": {
      "yAxes": [
        {
          "amanqaku": {
            "beginAtZero": yinyani
          }
        }
      ]
    }
  }
}

Oku kubonwa kubonisa iimpawu zokhuseleko ze-Percona ezikhuselekileyo zomthombo ovulekileyo wedatha, indlela ekhuselekileyo ye-Chainguard, kunye ne-LLM ye-LangChain.

Isiphelo

Ukuphumeza ulwakhiwo olukhuselekileyo oluhlala luhleli lwezicelo zewebhu ezinikwe amandla nge-AI kubalulekile kwinkangeleko yanamhlanje yesoyikiso. Ngokudibanisa i-Percona ekhuselekileyo yomthombo ovulekileyo wedatha kunye ne-Chainguard ekhuselekileyo-ngo-default kunye nokudibanisa ne-LangChain, sinokwenza i-architecture eyomeleleyo nekhuselekileyo enokumelana nokuhlaselwa kwe-AI. Eli nqaku linike isikhokelo esisebenzayo malunga nendlela yokuphumeza olu yilo, kubandakanywa nemizekelo yekhowudi kunye nokubonwayo.


Have Questions?

Let's Talk

Contact me on LinkedIn