Ustvarite primerek LangChain LLM | B4N1

Ustvarite primerek LangChain LLM

3 months ago · b4n1 Read time: 4 min

Izvajanje varne po privzetku arhitekture za spletne aplikacije, ki jih poganja AI

Uvod

Ker spletne aplikacije, ki jih poganja AI, postajajo vse bolj razširjene, potreba po robustni in varni arhitekturi še nikoli ni bila tako pereča. Z naraščanjem napadov, ki jih poganja umetna inteligenca, je bistveno, da uvedemo privzeti varen pristop, ki se lahko upre morebitnim grožnjam. V tem članku bomo raziskali, kako združiti varne odprtokodne baze podatkov Percona s pristopom Chainguard's secure-by-default in integrirati z LangChain za spletne aplikacije, ki jih poganja AI.

Grožnje spletnim aplikacijam, ki jih poganja AI

Spletne aplikacije, ki jih poganja AI, so ranljive za različne grožnje, vključno z:

  • Zastrupitev podatkov: Z modeli AI je mogoče manipulirati tako, da jim posredujete zlonamerne podatke, kar vodi do napačnih napovedi ali odločitev.
  • Inverzija modela: Napadalci lahko sklepajo na občutljive informacije o modelu AI ali njegovih podatkih o usposabljanju.
  • Nasprotni napadi: modele umetne inteligence lahko zavedejo skrbno oblikovani vnosi, ki so zasnovani tako, da zavedejo model.

Privzeto varna arhitektura

Da bi ublažili te grožnje, bomo uvedli privzeto varno arhitekturo, ki združuje varne odprtokodne baze podatkov Percona s privzeto varnim pristopom Chainguard in se integrira z LangChain za spletne aplikacije, ki jih poganja AI.

Varne odprtokodne baze podatkov Percona

Percona ponuja vrsto varnih odprtokodnih baz podatkov, vključno s strežnikom Percona za MySQL in strežnikom Percona za PostgreSQL. Te baze podatkov zagotavljajo zanesljive varnostne funkcije, kot so:

  • Šifriranje: podatki so šifrirani med mirovanjem in med prenosom, kar zagotavlja, da občutljive informacije ostanejo zaupne.
  • Nadzor dostopa: Natančen nadzor dostopa omogoča administratorjem, da omejijo dostop do občutljivih podatkov in zagotovijo, da lahko samo pooblaščeno osebje spreminja ali briše podatke.
  • Revizija: Podrobne zmožnosti revizije zagotavljajo izčrpen zapis vseh dejavnosti baze podatkov, kar olajša odkrivanje in odzivanje na varnostne incidente.

Chainguardov pristop Secure-by-Default

Chainguard ponuja privzeto varen pristop, ki zagotavlja, da so aplikacije zgrajene z mislijo na varnost že od samega začetka. Ta pristop vključuje:

  • Najmanjši privilegij: Aplikacije so zasnovane tako, da delujejo z najmanjšimi privilegiji, ki so potrebni za izvajanje njihovih funkcij, kar zmanjša površino napada.
  • Nespremenljiva infrastruktura: Infrastruktura je zasnovana tako, da je nespremenljiva, kar olajša odkrivanje in odzivanje na varnostne incidente.
  • Varna konfiguracija: Aplikacije so konfigurirane z upoštevanjem varnosti, vključno z varnimi privzetimi nastavitvami in minimalno konfiguracijo.

Integracija LangChain

LangChain je knjižnica Python, ki ponuja preprost in intuitiven API za izdelavo spletnih aplikacij, ki jih poganja AI. Integrirali bomo LangChain z varnimi odprtokodnimi zbirkami podatkov Percona in pristopom Chainguard varno po privzetku, da ustvarimo robustno in varno arhitekturo.

Primer kode

Tukaj je preprost primer kode, ki prikazuje, kako integrirati LangChain z varnimi odprtokodnimi zbirkami podatkov Percona in pristopom Chainguard varno po privzetku:

uvozi langchain
iz langchain import LLM


llm = LLM(
    model_name="davinci:2-large",
    naprava="cuda",
    max_tokens=1024,
)

# Ustvarite povezavo z bazo podatkov Percona
uvozi mysql.connector
cnx = mysql.connector.connect(
    uporabnik='uporabniško ime',
    geslo='geslo',
    gostitelj = '127.0.0.1',
    baza podatkov='baza podatkov'
)

# Ustvarite varno konfiguracijo Chainguard
uvoz verige
cfg = chainguard.Config(
    app_name="moja_aplikacija",
    app_version="1.0",
    env_vars={
        "DB_HOST": "127.0.0.1",
        "DB_USER": "uporabniško ime",
        "DB_PASSWORD": "geslo",
    },
)

# Uporabite LangChain za poizvedovanje po bazi podatkov
poizvedba = "SELECT * FROM my_table"
rezultat = llm.query(query, db=cnx, cfg=cfg)

# Natisnite rezultat
natisni (rezultat)

Ta primer kode prikazuje, kako ustvariti primerek LangChain LLM, se povezati z zbirko podatkov Percona in ustvariti varno konfiguracijo Chainguard. Nato uporabi LangChain za poizvedbo v zbirki podatkov in tiskanje rezultata.

5–10 najbolj uporabljenih ukazov/izrezkov

Tukaj je 5-10 najbolj uporabljenih ukazov/delčkov za to tehnologijo:

  1. langchain.LLM(model_name="davinci:2-large", device="cuda", max_tokens=1024) - Ustvari primerek LangChain LLM.
  2. mysql.connector.connect(user='uporabniško ime', password='password', host='127.0.0.1', database='database') - Ustvarite povezavo z bazo podatkov Percona.
  3. chainguard.Config(app_name="my_app", app_version="1.0", env_vars={"DB_HOST": "127.0.0.1", "DB_USER": "uporabniško ime", "DB_PASSWORD": "geslo"}) - Ustvarite varno konfiguracijo Chainguard.
  4. llm.query(query, db=cnx, cfg=cfg) - Uporabite LangChain za poizvedovanje baze podatkov.
  5. print(result) - Natisni rezultat poizvedbe.
  6. import langchain - uvozi knjižnico LangChain.
  7. import mysql.connector - Uvozite povezovalnik zbirke podatkov Percona.
  8. import chainguard – uvozi knjižnico Chainguard.
  9. llm = LLM() - Ustvarite primerek LangChain LLM brez podajanja modela.
  10. cnx = mysql.connector.connect() - Ustvarite povezavo z bazo podatkov Percona, ne da bi navedli bazo podatkov.

Vizualizacija

Tukaj je vizualizacija varne po privzetku arhitekture z uporabo Chart.js:

{
  "vrsta": "bar",
  "podatki": {
    "oznake": ["Baza podatkov Percona", "Varna konfiguracija Chainguard", "LangChain LLM"],
    "nabori podatkov": [
      {
        "label": "Varnostne funkcije",
        "podatki": [10, 8, 12],
        "Barva ozadja": ["#FF6384", "#36A2EB", "#FFCE56"]
      }
    ]
  },
  "možnosti": {
    "naslov": {
      "display": res,
      "text": "Privzeto varna arhitektura"
    },
    "tehtnice": {
      "yOsi": [
        {
          "ticks": {
            "beginAtZero": res
          }
        }
      ]
    }
  }
}

Ta vizualizacija prikazuje varnostne funkcije Perconinih varnih odprtokodnih podatkovnih baz, Chainguardovega pristopa varnega po privzetku in LangChainovega LLM.

Sklep

Implementacija varne privzete arhitekture za spletne aplikacije, ki jih poganja umetna inteligenca, je v današnjem okolju groženj ključnega pomena. Z združevanjem varnih odprtokodnih baz podatkov Percona s pristopom Chainguard's secure-by-default in integracijo z LangChain lahko ustvarimo robustno in varno arhitekturo, ki lahko prenese morebitne napade, ki jih poganja AI. Ta članek nudi praktičen vodnik o tem, kako implementirati to arhitekturo, vključno s primeri kode in vizualizacijami.


Have Questions?

Let's Talk

Contact me on LinkedIn