שאַפֿן אַ LangChain LLM בייַשפּיל | B4N1

שאַפֿן אַ LangChain LLM בייַשפּיל

3 months ago · b4n1 Read time: 4 min

** ימפּלאַמענטינג זיכער-דורך-דיפאָלט אַרטשיטעקטורע פֿאַר אַי-פּאַוערד וועב אַפּפּליקאַטיאָנס**

הקדמה

ווי אַי-פּאַוערד וועב אַפּלאַקיישאַנז ווערן ינקריסינגלי פאַרשפּרייט, די נויט פֿאַר געזונט און זיכער אַרקאַטעקטשער איז קיינמאָל געווען מער דרינגלעך. מיט די העכערונג פון אַי-געטריבן אנפאלן, עס איז יקערדיק צו ינסטרומענט אַ זיכער-דורך-פעליקייַט צוגאַנג וואָס קענען וויטסטאַנד פּאָטענציעל טרעץ. אין דעם אַרטיקל, מיר וועלן ויספאָרשן ווי צו פאַרבינדן די זיכער עפֿענען-מקור דאַטאַבייסיז פון Percona מיט Chainguard ס זיכער-דורך-פעליקייַט צוגאַנג און ויסשטימען מיט LangChain פֿאַר אַי-פּאַוערד וועב אַפּלאַקיישאַנז.

** טרעץ צו AI-Powered וועב אַפּפּליקאַטיאָנס**

AI-Powered וועב אַפּלאַקיישאַנז זענען שפּירעוודיק צו פאַרשידן טרעץ, אַרייַנגערעכנט:

  • ** דאַטן פאַרסאַמונג **: אַי מאָדעלס קענען זיין מאַניפּיאַלייטיד דורך פידינג זיי בייזע דאַטן, וואָס פירן צו פאַלש פֿאָרויסזאָגן אָדער דיסיזשאַנז.
  • ** מאָדעל ינווערזשאַן **: אַטטאַקקערס קענען אָנפירן שפּירעוודיק אינפֿאָרמאַציע וועגן די אַי מאָדעל אָדער זיין טריינינג דאַטן.
  • ** קעגנער אַטאַקס **: אַי מאָדעלס קענען זיין פארפירט דורך קערפאַלי קראַפטעד ינפּוץ וואָס זענען דיזיינד צו פאַרפירן דעם מאָדעל.

** זיכער-דורך-דיפאָלט אַרטשיטעקטורע**

צו פאַרמינערן די טרעץ, מיר ינסטרומענט אַ זיכער-דורך-פעליקייַט אַרקאַטעקטשער וואָס קאַמביינז פּערקאָנאַ ס זיכער אָפֿן-מקור דאַטאַבייסיז מיט Chainguard ס זיכער-דורך-פעליקייַט צוגאַנג און ינטאַגרייץ מיט LangChain פֿאַר אַי-פּאַוערד וועב אַפּלאַקיישאַנז.

פּערcona ס זיכער עפֿן מקור דאַטאַבייסיז

Percona אָפפערס אַ קייט פון זיכער אָפֿן-מקור דאַטאַבייסיז, אַרייַנגערעכנט Percona Server פֿאַר MySQL און Percona Server פֿאַר PostgreSQL. די דאַטאַבייסיז צושטעלן שטאַרק זיכערהייט פֿעיִקייטן, אַזאַ ווי:

  • ** ענקריפּשאַן **: דאַטן זענען ינקריפּטיד אין רו און אין דורכפאָר, און ינשורינג אַז שפּירעוודיק אינפֿאָרמאַציע בלייבט קאַנפאַדענשאַל.
  • ** אַקסעס קאָנטראָל **: פיין-גריינד אַקסעס קאָנטראָל אַלאַוז אַדמיניסטראַטאָרס צו באַגרענעצן אַקסעס צו שפּירעוודיק דאַטן און ענשור אַז בלויז אָטערייזד פּערסאַנעל קענען מאָדיפיצירן אָדער ויסמעקן דאַטן.
  • ** אַודיטינג **: דיטיילד אַדאַטינג קייפּאַבילאַטיז צושטעלן אַ פולשטענדיק רעקאָרד פון אַלע דייטאַבייס אַקטיוויטעטן, מאכן עס גרינגער צו דעטעקט און ריספּאַנד צו זיכערהייט ינסאַדאַנץ.

טשיינגואַרד ס זיכער-דורך-פעליקייַט צוגאַנג

Chainguard אָפפערס אַ זיכער-דורך-פעליקייַט צוגאַנג וואָס ינשורז אַז אַפּלאַקיישאַנז זענען געבויט מיט זיכערהייט אין זינען פון די אָנהייב. דעם צוגאַנג כולל:

  • ** קלענסטער פּריווילעגיע **: אַפּפּליקאַטיאָנס זענען דיזיינד צו לויפן מיט די קלענסטער פּריווילעגיע צו דורכפירן זייער פאַנגקשאַנז, רידוסינג די באַפאַלן ייבערפלאַך.
  • ** ימיוטאַבאַל ינפראַסטראַקטשער **: ינפראַסטראַקטשער איז דיזיינד צו זיין ימיוטאַבאַל, מאכן עס גרינגער צו דעטעקט און ריספּאַנד צו זיכערהייט ינסאַדאַנץ.
  • ** זיכער קאָנפיגוראַטיאָן **: אַפּפּליקאַטיאָנס זענען קאַנפיגיערד מיט זיכערהייט אין זינען, אַרייַנגערעכנט זיכער דיפאָלץ און מינימאַל קאַנפיגיעריישאַן.

לאַנגטשאַין ינטעגראַטיאָן

LangChain איז אַ פּיטהאָן ביבליאָטעק וואָס גיט אַ פּשוט און ינטואַטיוו אַפּי פֿאַר בנין אַי-פּאַוערד וועב אַפּלאַקיישאַנז. מיר וועלן ויסשטימען LangChain מיט Percona ס זיכער עפֿענען-מקור דאַטאַבייסיז און Chainguard ס זיכער-דורך-פעליקייַט צוגאַנג צו שאַפֿן אַ געזונט און זיכער אַרקאַטעקטשער.

קאָוד ביישפּיל

דאָ איז אַ פּשוט קאָד ביישפּיל וואָס דעמאַנסטרייץ ווי צו ויסשטימען LangChain מיט Percona ס זיכער עפֿענען-מקור דאַטאַבייסיז און Chainguard ס זיכער-דורך-פעליקייַט צוגאַנג:

אַרייַנפיר לאַנגטשאַין
פֿון לאַנגטשאַין אַרייַנפיר LLM


llm = LLM(
    model_name="davinci:2-large",
    device="cuda",
    מאַקס_טאָקענס=1024,
)

# שאַפֿן אַ פּערקאָנאַ דאַטאַבייס פֿאַרבינדונג
אַרייַנפיר mysql.connector
cnx = mysql.connector.connect(
    באַניצער = 'באַניצער נאָמען',
    פּאַראָל = 'פּאַראָל',
    באַלעבאָס='127.0.0.1',
    דאַטאַבייס = 'דאַטאַבייס'
)

# שאַפֿן אַ Chainguard זיכער קאַנפיגיעריישאַן
אַרייַנפיר קייטגאַרד
cfg = chainguard.Config(
    app_name = "מיין_אַפּ",
    app_version = "1.0",
    env_vars={
        "DB_HOST": "127.0.0.1",
        "DB_USER": "באַניצער נאָמען",
        "DB_PASSWORD": "שפּריכוואָרט",
    },
)

# ניצן LangChain צו אָנפרעג די דאַטאַבייס
אָנפֿרעג = "SELECT * פֿון מיין_טיש"
רעזולטאַט = llm.query (אָנפֿרעג, db = cnx, cfg = cfg)

# דרוק דעם רעזולטאַט
דרוק (רעזולטאַט)

דעם קאָד ביישפּיל דעמאַנסטרייץ ווי צו שאַפֿן אַ LangChain LLM בייַשפּיל, פאַרבינדן צו אַ פּערקאָנאַ דאַטאַבייס און שאַפֿן אַ 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 (באַניצער = 'באַניצער נאָמען', פּאַראָל = 'פּאַראָל', באַלעבאָס = '127.0.0.1', דאַטאַבייס = 'דאַטאַבייס')' - שאַפֿן אַ פּערקאָנאַ דאַטאַבייס קשר.
  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 (אָנפֿרעג, db = cnx, cfg = cfg) - ניצן LangChain צו אָנפֿרעג די דאַטאַבייס.
  5. 'פּרינט (רעזולטאַט)' - פּרינט די רעזולטאַט פון די אָנפֿרעג.
  6. 'ימפּאָרט לאַנגטשאַין' - ימפּאָרט די לאַנגטשאַין ביבליאָטעק.
  7. 'ימפּאָרט mysql.connector' - ימפּאָרט די פּערקאָנאַ דאַטאַבייס קאַנעקטער.
  8. 'אַרייַנפיר טשאַינגואַרד' - ימפּאָרט די טשאַינגואַרד ביבליאָטעק.
  9. llm = LLM() - שאַפֿן אַ LangChain LLM בייַשפּיל אָן ספּעציפיצירן אַ מאָדעל.
  10. cnx = mysql.connector.connect() - שאַפֿן אַ פּערקאָנאַ דאַטאַבייס קשר אָן ספּעציפיצירן אַ דאַטאַבייס.

וויסואַליזאַטיאָן

דאָ איז אַ וויזשוואַלאַזיישאַן פון די זיכער-דורך-פעליקייַט אַרקאַטעקטשער ניצן Chart.js:

{
  "type": "באַר",
  "דאַטן": {
    "labels": ["פּערקאָנאַ דאַטאַבאַסע", "טשייןגואַרד זיכער קאַנפיגיעריישאַן", "לאַנגטשאַין LLM"],
    "דאַטאַסעטס": [
      {
        "label": "זיכערהייט פֿעיִקייטן",
        "דאַטן": [10, 8, 12],
        "backgroundColor": ["#FF6384", "#36A2EB", "#FFCE56"]
      }
    ]
  },
  "אָפּציעס": {
    "טיטל": {
      "ווייַז": אמת,
      "text": "זיכער-דורך-דיפאָלט אַרקאַטעקטשער"
    },
    "סקאַלעס": {
      "יאַקסעס": [
        {
          "טיקס": {
            "באַגינאַט זעראָ": אמת
          }
        }
      ]
    }
  }
}

די וויזשוואַלאַזיישאַן ווייזט די זיכערהייט פֿעיִקייטן פון פּערקאָנאַ ס זיכער עפֿענען-מקור דאַטאַבייסיז, Chainguard ס זיכער-דורך-פעליקייַט צוגאַנג און LangChain ס LLM.

** מסקנא**

ימפּלאַמענטינג אַ זיכער-דורך-פעליקייַט אַרקאַטעקטשער פֿאַר אַי-פּאַוערד וועב אַפּלאַקיישאַנז איז קריטיש אין הייַנט ס סאַקאָנע לאַנדשאַפט. דורך קאַמביינינג פּערקאָנאַ ס זיכער עפֿענען-מקור דאַטאַבייסיז מיט Chainguard ס זיכער-דורך-פעליקייַט צוגאַנג און ינטאַגרייטינג מיט LangChain, מיר קענען מאַכן אַ געזונט און זיכער אַרקאַטעקטשער וואָס קענען וויטסטאַנד פּאָטענציעל אַי-געטריבן אנפאלן. דער אַרטיקל האט צוגעשטעלט אַ פּראַקטיש פירער ווי צו ינסטרומענט דעם אַרקאַטעקטשער, אַרייַנגערעכנט קאָד ביישפילן און וויזשוואַלאַזיישאַנז.


Have Questions?

Let's Talk

Contact me on LinkedIn