Создадете примерок на LangChain LLM | B4N1

Создадете примерок на LangChain LLM

6 months ago · b4n1 Read time: 4 min

Имплементирање безбедна-по-стандардна архитектура за веб-апликации напојувани со вештачка интелигенција

Вовед

Како што веб-апликациите напојувани со вештачка интелигенција стануваат сè поприсутни, потребата за робусна и безбедна архитектура никогаш не била поитна. Со порастот на нападите управувани од вештачка интелигенција, од суштинско значење е да се имплементира безбеден пристап до стандард кој може да издржи потенцијални закани. Во оваа статија, ќе истражиме како да ги комбинираме безбедните бази на податоци со отворен код на Percona со пристапот безбеден по стандард на Chainguard и да се интегрираме со LangChain за веб-апликации со вештачка интелигенција.

Закани за веб-апликациите напојувани со вештачка интелигенција

Веб-апликациите со вештачка интелигенција се ранливи на различни закани, вклучувајќи:

  • Труење со податоци: моделите со вештачка интелигенција може да се манипулираат со снабдување со малициозни податоци, што доведува до неточни предвидувања или одлуки.
  • Инверзија на моделот: Напаѓачите можат да заклучат чувствителни информации за моделот на вештачка интелигенција или неговите податоци за обука.
  • Противнички напади: моделите со вештачка интелигенција може да бидат измамени со внимателно изработени влезови кои се дизајнирани да го доведат моделот во заблуда.

Безбедна-по-стандардна архитектура

За да ги ублажиме овие закани, ќе имплементираме безбедна-по-стандардна архитектура која ги комбинира безбедните бази на податоци со отворен код на Percona со пристапот безбеден-по-стандарден на Chainguard и се интегрира со LangChain за веб-апликации со вештачка интелигенција.

Безбедни бази на податоци со отворен код на Перкона

Percona нуди низа безбедни бази на податоци со отворен код, вклучително и Percona Server за MySQL и Percona Server за PostgreSQL. Овие бази на податоци обезбедуваат силни безбедносни карактеристики, како што се:

  • Шифрирање: Податоците се шифрираат во мирување и во транзит, осигурувајќи дека чувствителните информации остануваат доверливи.
  • Контрола на пристап: Ситно-гранулираната контрола на пристап им овозможува на администраторите да го ограничат пристапот до чувствителни податоци и да гарантираат дека само овластен персонал може да ги менува или брише податоците.
  • Ревизија: Деталните ревизорски способности обезбедуваат сеопфатна евиденција за целата активност на базата на податоци, што го олеснува откривањето и одговарањето на безбедносни инциденти.

Безбеден по стандарден пристап на Chainguard

Chainguard нуди безбеден пристап до стандард кој гарантира дека апликациите се изградени имајќи ја предвид безбедноста од самиот почеток. Овој пристап вклучува:

  • Најмалку привилегија: Апликациите се дизајнирани да работат со најмала привилегија потребна за извршување на нивните функции, намалувајќи ја површината на нападот.
  • Непроменлива инфраструктура: Инфраструктурата е дизајнирана да биде непроменлива, што го олеснува откривањето и реагирањето на безбедносни инциденти.
  • Безбедна конфигурација: Апликациите се конфигурирани имајќи ја предвид безбедноста, вклучувајќи безбедни стандардни вредности и минимална конфигурација.

Интеграција на LangChain

LangChain е библиотека на Python која обезбедува едноставен и интуитивен API за градење веб-апликации со вештачка интелигенција. Ќе го интегрираме LangChain со безбедните бази на податоци со отворен код на Percona и пристапот безбеден по стандард на Chainguard за да создадеме робусна и безбедна архитектура.

Пример на код

Еве едноставен пример за код кој покажува како да се интегрира LangChain со безбедните бази на податоци со отворен код на Percona и безбеден по стандарден пристап на Chainguard:

увозен лангсин
од langchain import LLM


llm = LLM(
    model_name="davinci:2-large",
    уред = "cuda",
    max_tokens=1024,
)

# Создадете врска со базата на податоци Percona
увезете mysql.конектор
cnx = mysql.connector.connect(
    корисник = 'корисничко име',
    лозинка='лозинка',
    домаќин='127.0.0.1',
    база на податоци = 'база на податоци'
)

# Создадете безбедна конфигурација на Chainguard
увозна заштита на синџирот
cfg = чувар на синџир.Конфиг(
    app_name = "мојата_апликација",
    app_version = "1.0",
    env_vars={
        „DB_HOST“: „127.0.0.1“,
        "DB_USER": "корисничко име",
        "DB_PASSWORD": "лозинка",
    },
)

# Користете LangChain за пребарување на базата на податоци
барање = "ИЗБЕРИ * ОД мојата_табела"
резултат = llm.query(прашање, db=cnx, cfg=cfg)

# Испечатете го резултатот
печатење (резултат)

Овој пример на код покажува како да креирате примерок на LangChain LLM, да се поврзете со базата на податоци на Percona и да креирате безбедна конфигурација на Chainguard. Потоа го користи LangChain за да ја побара базата на податоци и да го испечати резултатот.

** Топ 5-10 најкористени команди/парчиња**

Еве ги првите 5-10 најкористени команди/парчиња за оваа технологија:

  1. langchain.LLM(model_name="davinci:2-large", device="cuda", max_tokens=1024) - Креирајте примерок на LangChain LLM.
  2. mysql.connector.connect(user='корисничко име', лозинка='лозинка', домаќин='127.0.0.1', база на податоци='база на податоци') - Создадете врска со базата на податоци Percona.
  3. `chainguard.Config(app_name="my_app", app_version="1.0", env_vars={"DB_HOST": "127.0.0.1", "DB_USER": "корисничко име", "DB_PASSWORD": "лозинка"})" - Создадете безбедна конфигурација за заштита на синџирот.
  4. llm.query(query, db=cnx, cfg=cfg) - Користете LangChain за пребарување на базата на податоци.
  5. печатење(резултат) - Печатете го резултатот од барањето.
  6. unport langchain - Увезете ја библиотеката LangChain.
  7. увоз на mysql.connector - Увезете го конекторот за базата на податоци Percona.
  8. увозна заштита на синџирот - Увезете ја библиотеката Chainguard.
  9. llm = LLM() - Креирајте примерок на LangChain LLM без да наведете модел.
  10. cnx = mysql.connector.connect() - Креирајте врска со база на податоци Percona без да наведете база на податоци.

Визуелизација

Еве визуелизација на безбедна-по-стандардна архитектура користејќи Chart.js:

{
  "тип": "бар",
  "податоци": {
    "етикети": ["База на податоци Перкона", "Безбедна конфигурација на чувар на синџири", "LangChain LLM"],
    "збирки на податоци": [
      {
        "label": "Безбедносни карактеристики",
        "податоци": [10, 8, 12],
        „Боја на позадина“: [„#FF6384“, „#36A2EB“, „#FFCE56“]
      }
    ]
  },
  "опции": {
    "наслов": {
      „екран“: точно,
      "text": "Secure-by-Default Architecture"
    },
    "вага": {
      „yOxes“: [
        {
          "крлежи": {
            "beginAtZero": точно
          }
        }
      ]
    }
  }
}

Оваа визуелизација ги прикажува безбедносните карактеристики на безбедните бази на податоци со отворен код на Percona, пристапот безбедно-по-стандардно на Chainguard и LLM на LangChain.

Заклучок

Спроведувањето на безбедна-по-стандардна архитектура за веб-апликациите напојувани со вештачка интелигенција е од клучно значење во денешниот пејзаж на закани. Со комбинирање на безбедните бази на податоци со отворен код на Percona со пристапот безбедно-по-стандардно на Chainguard и интегрирање со LangChain, можеме да создадеме робусна и безбедна архитектура која може да издржи потенцијални напади управувани од вештачка интелигенција. Оваа статија обезбеди практичен водич за тоа како да се имплементира оваа архитектура, вклучувајќи примери на код и визуелизации.


Have Questions?

Let's Talk

Contact me on LinkedIn