Utwórz instancję LangChain LLM | B4N1

Utwórz instancję LangChain LLM

3 months ago · b4n1 Read time: 4 min

Wdrażanie architektury Secure-by-Default dla aplikacji internetowych opartych na sztucznej inteligencji

Wprowadzenie

Ponieważ aplikacje internetowe oparte na sztucznej inteligencji stają się coraz bardziej powszechne, potrzeba solidnej i bezpiecznej architektury nigdy nie była bardziej nagląca. Wraz ze wzrostem liczby ataków opartych na sztucznej inteligencji istotne jest wdrożenie bezpiecznego podejścia domyślnego, które będzie w stanie wytrzymać potencjalne zagrożenia. W tym artykule zbadamy, jak połączyć bezpieczne bazy danych typu open source firmy Percona z podejściem „bezpieczne domyślnie” firmy Chainguard i zintegrować z LangChain na potrzeby aplikacji internetowych opartych na sztucznej inteligencji.

Zagrożenia dla aplikacji internetowych opartych na sztucznej inteligencji

Aplikacje internetowe oparte na sztucznej inteligencji są podatne na różne zagrożenia, w tym:

  • Zatruwanie danych: Modelami sztucznej inteligencji można manipulować, dostarczając im złośliwych danych, co prowadzi do błędnych przewidywań lub decyzji.
  • Inwersja modelu: osoby atakujące mogą wywnioskować poufne informacje na temat modelu sztucznej inteligencji lub jego danych szkoleniowych.
  • Ataki kontradyktoryjne: Modele AI można oszukać poprzez starannie opracowane dane wejściowe, których celem jest wprowadzenie modelu w błąd.

Architektura bezpieczna domyślna

Aby złagodzić te zagrożenia, wdrożymy architekturę „bezpieczne domyślnie”, która łączy bezpieczne bazy danych typu open source firmy Percona z podejściem „bezpieczne domyślnie” firmy Chainguard i integruje się z LangChain dla aplikacji internetowych opartych na sztucznej inteligencji.

Bezpieczne bazy danych typu open source firmy Percona

Percona oferuje szereg bezpiecznych baz danych typu open source, w tym Percona Server for MySQL i Percona Server for PostgreSQL. Te bazy danych zapewniają solidne funkcje bezpieczeństwa, takie jak:

  • Szyfrowanie: dane są szyfrowane w stanie spoczynku i podczas przesyłania, co gwarantuje, że wrażliwe informacje pozostaną poufne.
  • Kontrola dostępu: Szczegółowa kontrola dostępu pozwala administratorom ograniczyć dostęp do wrażliwych danych i zapewnić, że tylko upoważniony personel może modyfikować lub usuwać dane.
  • Audyt: Szczegółowe możliwości audytu zapewniają kompleksowy zapis całej aktywności bazy danych, ułatwiając wykrywanie incydentów bezpieczeństwa i reagowanie na nie.

Bezpieczne domyślne podejście Chainguarda

Chainguard oferuje podejście „bezpieczne domyślnie”, które zapewnia, że aplikacje są budowane z myślą o bezpieczeństwie od samego początku. Podejście to obejmuje:

  • Najmniejsze uprawnienia: Aplikacje zaprojektowano tak, aby działały z najniższymi uprawnieniami niezbędnymi do wykonywania ich funkcji, co ogranicza powierzchnię ataku.
  • Niezmienna infrastruktura: Infrastruktura została zaprojektowana tak, aby była niezmienna, co ułatwia wykrywanie incydentów związanych z bezpieczeństwem i reagowanie na nie.
  • Bezpieczna konfiguracja: Aplikacje są konfigurowane z myślą o bezpieczeństwie, łącznie z bezpiecznymi ustawieniami domyślnymi i minimalną konfiguracją.

Integracja LangChain

LangChain to biblioteka języka Python zapewniająca prosty i intuicyjny interfejs API do tworzenia aplikacji internetowych opartych na sztucznej inteligencji. Zintegrujemy LangChain z bezpiecznymi bazami danych typu open source firmy Percona i podejściem „bezpieczne domyślnie” firmy Chainguard, aby stworzyć solidną i bezpieczną architekturę.

Przykład kodu

Oto prosty przykład kodu, który pokazuje, jak zintegrować LangChain z bezpiecznymi bazami danych typu open source firmy Percona i podejściem „bezpieczne domyślnie” Chainguard:

zaimportuj łańcuch językowy
z langchain import LLM


llm = LLM(
    model_name="davinci:2-duży",
    urządzenie="cuda",
    max_tokens=1024,
)

# Utwórz połączenie z bazą danych Percona
zaimportuj złącze mysql
cnx = mysql.connector.connect(
    użytkownik='nazwa użytkownika',
    hasło='hasło',
    host='127.0.0.1',
    baza danych='baza danych'
)

# Utwórz bezpieczną konfigurację Chainguard
importowana osłona łańcucha
cfg = osłona łańcucha.Config(
    nazwa_aplikacji="moja_aplikacja",
    aplikacja_wersja="1.0",
    env_vars={
        "DB_HOST": "127.0.0.1",
        "DB_USER": "nazwa użytkownika",
        "DB_PASSWORD": "hasło",
    },
)

# Użyj LangChain do wysłania zapytania do bazy danych
zapytanie = "WYBIERZ * Z mojej_tabeli"
wynik = llm.query(zapytanie, db=cnx, cfg=cfg)

# Wydrukuj wynik
wydrukuj (wynik)

Ten przykład kodu demonstruje, jak utworzyć instancję LangChain LLM, połączyć się z bazą danych Percona i utworzyć bezpieczną konfigurację Chainguard. Następnie używa LangChain do wysyłania zapytań do bazy danych i drukowania wyników.

Top 5-10 najczęściej używanych poleceń/fragmentów

Oto 5–10 najczęściej używanych poleceń/fragmentów dla tej technologii:

  1. langchain.LLM(model_name="davinci:2-large", urządzenie="cuda", max_tokens=1024) - Utwórz instancję LangChain LLM.
  2. mysql.connector.connect(user='nazwa użytkownika', hasło='hasło', host='127.0.0.1', baza danych='baza danych') - Utwórz połączenie z bazą danych Percona.
  3. chainguard.Config(app_name="my_app", app_version="1.0", env_vars={"DB_HOST": "127.0.0.1", "DB_USER": "nazwa użytkownika", "DB_PASSWORD": "hasło"}) - Utwórz bezpieczną konfigurację Chainguard.
  4. llm.query(query, db=cnx, cfg=cfg) - Użyj LangChain do odpytywania bazy danych.
  5. print(result) - Drukuje wynik zapytania.
  6. import langchain - Importuj bibliotekę LangChain.
  7. import mysql.connector - Zaimportuj łącznik bazy danych Percona.
  8. importuj osłonę łańcucha - Importuj bibliotekę osłony łańcucha.
  9. llm = LLM() - Utwórz instancję LangChain LLM bez określania modelu.
  10. cnx = mysql.connector.connect() - Utwórz połączenie z bazą danych Percona bez określania bazy danych.

Wizualizacja

Oto wizualizacja bezpiecznej architektury domyślnej przy użyciu Chart.js:

{
  "typ": "pasek",
  „dane”: {
    „labels”: [„Baza danych Percona”, „Bezpieczna konfiguracja Chainguard”, „LangChain LLM”],
    „zestawy danych”: [
      {
        "label": "Funkcje bezpieczeństwa",
        „dane”: [10, 8, 12],
        „Kolor tła”: [„#FF6384”, „#36A2EB”, „#FFCE56”]
      }
    ]
  },
  „opcje”: {
    "tytuł": {
      "wyświetlacz": prawda,
      "text": "Architektura zabezpieczona domyślnie"
    },
    „skale”: {
      „Osie y”: [
        {
          „tyknięcia”: {
            „beginAtZero”: prawda
          }
        }
      ]
    }
  }
}

Ta wizualizacja przedstawia funkcje bezpieczeństwa bezpiecznych baz danych typu open source firmy Percona, podejście „zabezpieczenie domyślne” firmy Chainguard oraz rozwiązanie LLM firmy LangChain.

Wniosek

Wdrożenie bezpiecznej architektury domyślnej dla aplikacji internetowych opartych na sztucznej inteligencji ma kluczowe znaczenie w dzisiejszym krajobrazie zagrożeń. Łącząc bezpieczne bazy danych typu open source firmy Percona z podejściem Secure-by-default firmy Chainguard i integrując się z LangChain, możemy stworzyć solidną i bezpieczną architekturę, która będzie w stanie wytrzymać potencjalne ataki oparte na sztucznej inteligencji. W tym artykule przedstawiono praktyczny przewodnik dotyczący implementacji tej architektury, w tym przykłady kodu i wizualizacje.


Have Questions?

Let's Talk

Contact me on LinkedIn