Krijoni një shembull LangChain LLM | B4N1

Krijoni një shembull LangChain LLM

3 months ago · b4n1 Read time: 5 min

Zbatimi i arkitekturës së sigurt nga parazgjedhja për aplikacionet në internet të fuqizuara nga AI

Hyrje

Ndërsa aplikacionet e uebit të fuqizuara nga AI po bëhen gjithnjë e më të përhapura, nevoja për arkitekturë të fortë dhe të sigurt nuk ka qenë kurrë më urgjente. Me rritjen e sulmeve të drejtuara nga AI, është thelbësore të zbatohet një qasje e sigurt nga parazgjedhja që mund t'i rezistojë kërcënimeve të mundshme. Në këtë artikull, ne do të eksplorojmë se si të kombinojmë bazat e të dhënave të sigurta me burim të hapur të Percona-s me qasjen e sigurt nga parazgjedhja e Chainguard dhe të integrojmë me LangChain për aplikacionet në internet të fuqizuara nga AI.

**Kërcënimet ndaj aplikacioneve në internet të fuqizuara nga AI **

Aplikacionet në internet të fuqizuara nga AI janë të prekshme ndaj kërcënimeve të ndryshme, duke përfshirë:

  • Helmimi i të dhënave: Modelet e AI mund të manipulohen duke u dhënë atyre të dhëna me qëllim të keq, duke çuar në parashikime ose vendime të pasakta.
  • Përmbysja e modelit: Sulmuesit mund të nxjerrin informacione të ndjeshme rreth modelit të AI ose të dhënave të tij të trajnimit.
  • Sulmet kundërshtare: Modelet e AI mund të mashtrohen nga inpute të krijuara me kujdes që janë krijuar për të mashtruar modelin.

Arkitekturë e sigurtë nga parazgjedhja

Për të zbutur këto kërcënime, ne do të zbatojmë një arkitekturë të sigurt nga parazgjedhja që kombinon bazat e të dhënave të sigurta me burim të hapur të Percona-s me qasjen e sigurt nga parazgjedhja e Chainguard dhe integrohet me LangChain për aplikacionet në internet të fuqizuara nga AI.

Bazat e të dhënave të sigurta me burim të hapur të Percona-s

Percona ofron një sërë bazash të dhënash të sigurta me burim të hapur, duke përfshirë Percona Server për MySQL dhe Percona Server për PostgreSQL. Këto baza të të dhënave ofrojnë veçori të fuqishme sigurie, të tilla si:

  • Kriptimi: Të dhënat janë të koduara në pushim dhe në tranzit, duke siguruar që informacioni i ndjeshëm të mbetet konfidencial.
  • Kontrolli i hyrjes: Kontrolli i hollësishëm i aksesit lejon administratorët të kufizojnë aksesin në të dhëna të ndjeshme dhe të sigurojnë që vetëm personeli i autorizuar mund të modifikojë ose fshijë të dhënat.
  • Auditimi: Aftësitë e detajuara të auditimit ofrojnë një regjistrim gjithëpërfshirës të të gjithë aktivitetit të bazës së të dhënave, duke e bërë më të lehtë zbulimin dhe përgjigjen ndaj incidenteve të sigurisë.

Qasja e Sigurt-nga-Default e Chainguard-it

Chainguard ofron një qasje të sigurt nga parazgjedhja që siguron që aplikacionet të ndërtohen duke pasur parasysh sigurinë që në fillim. Kjo qasje përfshin:

  • Privilegji më i vogël: Aplikacionet janë krijuar për të ekzekutuar me privilegjin më të vogël të nevojshëm për të kryer funksionet e tyre, duke reduktuar sipërfaqen e sulmit.
  • Infrastruktura e pandryshueshme: Infrastruktura është projektuar të jetë e pandryshueshme, duke e bërë më të lehtë zbulimin dhe reagimin ndaj incidenteve të sigurisë.
  • Konfigurimi i sigurt: Aplikacionet konfigurohen duke pasur parasysh sigurinë, duke përfshirë parazgjedhjet e sigurta dhe konfigurimin minimal.

Integrimi LangChain

LangChain është një bibliotekë Python që ofron një API të thjeshtë dhe intuitive për ndërtimin e aplikacioneve në internet me fuqi AI. Ne do të integrojmë LangChain me bazat e të dhënave të sigurta me burim të hapur të Percona-s dhe qasjen e sigurt nga parazgjedhja e Chainguard për të krijuar një arkitekturë të fortë dhe të sigurt.

Shembull i kodit

Këtu është një shembull i thjeshtë kodi që tregon se si të integrohet LangChain me bazat e të dhënave të sigurta me burim të hapur të Percona dhe qasjen e sigurt nga parazgjedhja e Chainguard:

import langchain
nga importi langchain LLM


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

# Krijoni një lidhje të bazës së të dhënave Percona
importoni mysql.konektori
cnx = mysql.connector.connect(
    përdorues = 'emri i përdoruesit',
    fjalëkalimi = 'fjalëkalimi',
    host='127.0.0.1',
    baza e të dhënave = 'baza e të dhënave'
)

# Krijoni një konfigurim të sigurt Chainguard
Zinxhiri i importit
cfg = roje zinxhiri.Config(
    app_name = "app_my",
    app_version = "1.0",
    env_vars={
        "DB_HOST": "127.0.0.1",
        "DB_USER": "emri i përdoruesit",
        "DB_PASSWORD": "fjalëkalim",
    },
)

# Përdorni LangChain për të kërkuar bazën e të dhënave
pyetje = "ZGJIDH * NGA tabela_my"
rezultat = llm.query(pyetje, db=cnx, cfg=cfg)

# Printoni rezultatin
shtypja (rezultati)

Ky shembull kodi tregon se si të krijoni një shembull LangChain LLM, të lidheni me një bazë të dhënash Percona dhe të krijoni një konfigurim të sigurt Chainguard. Më pas përdor LangChain për të kërkuar bazën e të dhënave dhe për të printuar rezultatin.

Top 5-10 komandat/copëzat më të përdorura

Këtu janë 5-10 komandat/copëzat më të përdorura për këtë teknologji:

  1. langchain.LLM(model_name="davinci:2-large", pajisje="cuda", max_tokens=1024) - Krijo një shembull LangChain LLM.
  2. mysql.connector.connect(user='username', password='password', host='127.0.0.1', database='database') - Krijo një lidhje të bazës së të dhënave Percona.
  3. `chainguard.Config(app_name="my_app", app_version="1.0", env_vars={"DB_HOST": "127.0.0.1", "DB_USER": "username", "DB_PASSWORD": "fjalëkalim"})" - Krijo një konfigurim të sigurtë të mbrojtjes së zinxhirit.
  4. llm.query(query, db=cnx, cfg=cfg) - Përdor LangChain për të kërkuar bazën e të dhënave.
  5. print(rezultat) - Printoni rezultatin e pyetjes.
  6. import langchain - Importoni bibliotekën LangChain.
  7. import mysql.connector - Importo lidhësin e bazës së të dhënave Percona.
  8. import chainguard - Importoni bibliotekën Chainguard.
  9. llm = LLM() - Krijo një shembull LangChain LLM pa specifikuar një model.
  10. cnx = mysql.connector.connect() - Krijo një lidhje të bazës së të dhënave Percona pa specifikuar një bazë të dhënash.

Vizualizim

Këtu është një vizualizim i arkitekturës së sigurt nga parazgjedhja duke përdorur Chart.js:

{
  "lloj": "bar",
  "të dhënat": {
    "labels": ["Percona Database", "Chainguard Secure Configuration", "LangChain LLM"],
    "grupet e të dhënave": [
      {
        "label": "Karakteristikat e sigurisë",
        "të dhënat": [10, 8, 12],
        "Ngjyra e sfondit": ["#FF6384", "#36A2EB", "#FFCE56"]
      }
    ]
  },
  "opsione": {
    "titulli": {
      "ekrani": i vërtetë,
      "tekst": "Arkitekturë e sigurt nga parazgjedhja"
    },
    "peshore": {
      "yAxes": [
        {
          "ticks": {
            "beginAtZero": e vërtetë
          }
        }
      ]
    }
  }
}

Ky vizualizim tregon veçoritë e sigurisë së bazave të të dhënave të sigurta me burim të hapur të Percona-s, qasjen e sigurt nga parazgjedhja e Chainguard dhe LLM-në e LangChain.

përfundim

Zbatimi i një arkitekture të sigurt nga parazgjedhja për aplikacionet në internet të fuqizuara nga AI është thelbësore në peizazhin e sotëm të kërcënimit. Duke kombinuar bazat e të dhënave të sigurta me burim të hapur të Percona-s me qasjen e sigurt-nga-default të Chainguard dhe duke u integruar me LangChain, ne mund të krijojmë një arkitekturë të fortë dhe të sigurt që mund t'i rezistojë sulmeve të mundshme të drejtuara nga AI. Ky artikull ka ofruar një udhëzues praktik se si të zbatohet kjo arkitekturë, duke përfshirë shembuj kodesh dhe vizualizime.


Have Questions?

Let's Talk

Contact me on LinkedIn