Tạo một phiên bản LangChain LLM | B4N1

Tạo một phiên bản LangChain LLM

3 months ago · b4n1 Tiempo de lectura: 6 min

Triển khai Kiến trúc bảo mật theo mặc định cho các ứng dụng web được hỗ trợ bởi AI

Giới thiệu

Khi các ứng dụng web được hỗ trợ bởi AI ngày càng trở nên phổ biến, nhu cầu về kiến trúc mạnh mẽ và an toàn chưa bao giờ cấp thiết hơn thế. Với sự gia tăng của các cuộc tấn công do AI điều khiển, điều cần thiết là phải triển khai phương pháp tiếp cận an toàn theo mặc định để có thể chống lại các mối đe dọa tiềm ẩn. Trong bài viết này, chúng ta sẽ khám phá cách kết hợp cơ sở dữ liệu nguồn mở an toàn của Percona với phương pháp tiếp cận bảo mật theo mặc định của Chainguard và tích hợp với LangChain cho các ứng dụng web hỗ trợ AI.

Các mối đe dọa đối với các ứng dụng web được hỗ trợ bởi AI

Các ứng dụng web được hỗ trợ bởi AI dễ bị tấn công bởi nhiều mối đe dọa khác nhau, bao gồm:

  • Ngộ độc dữ liệu: Các mô hình AI có thể bị thao túng bằng cách cung cấp cho chúng dữ liệu độc hại, dẫn đến những dự đoán hoặc quyết định không chính xác.
  • Đảo ngược mô hình: Kẻ tấn công có thể suy ra thông tin nhạy cảm về mô hình AI hoặc dữ liệu đào tạo của nó.
  • Các cuộc tấn công bất lợi: Các mô hình AI có thể bị đánh lừa bởi các đầu vào được chế tạo cẩn thận nhằm mục đích đánh lừa mô hình.

Cấu trúc bảo mật theo mặc định

Để giảm thiểu những mối đe dọa này, chúng tôi sẽ triển khai kiến trúc bảo mật theo mặc định kết hợp cơ sở dữ liệu nguồn mở bảo mật của Percona với cách tiếp cận bảo mật theo mặc định của Chainguard và tích hợp với LangChain cho các ứng dụng web hỗ trợ AI.

Cơ sở dữ liệu nguồn mở an toàn của Percona

Percona cung cấp nhiều cơ sở dữ liệu nguồn mở an toàn, bao gồm Percona Server cho MySQL và Percona Server cho PostgreSQL. Các cơ sở dữ liệu này cung cấp các tính năng bảo mật mạnh mẽ, chẳng hạn như:

  • Mã hóa: Dữ liệu được mã hóa khi lưu trữ và truyền đi, đảm bảo rằng thông tin nhạy cảm được giữ bí mật.
  • Kiểm soát truy cập: Kiểm soát truy cập chi tiết cho phép quản trị viên hạn chế quyền truy cập vào dữ liệu nhạy cảm và đảm bảo rằng chỉ những nhân viên được ủy quyền mới có thể sửa đổi hoặc xóa dữ liệu.
  • Kiểm tra: Khả năng kiểm tra chi tiết cung cấp bản ghi toàn diện về tất cả hoạt động của cơ sở dữ liệu, giúp phát hiện và ứng phó với các sự cố bảo mật dễ dàng hơn.

Phương pháp tiếp cận bảo mật theo mặc định của Chainguard

Chainguard cung cấp cách tiếp cận bảo mật theo mặc định để đảm bảo rằng các ứng dụng được xây dựng với tiêu chí bảo mật ngay từ đầu. Cách tiếp cận này bao gồm:

  • Đặc quyền tối thiểu: Các ứng dụng được thiết kế để chạy với ít đặc quyền cần thiết nhất để thực hiện các chức năng của chúng, làm giảm bề mặt tấn công.
  • Cơ sở hạ tầng bất biến: Cơ sở hạ tầng được thiết kế không thể thay đổi, giúp phát hiện và ứng phó với các sự cố bảo mật dễ dàng hơn.
  • Cấu hình bảo mật: Các ứng dụng được định cấu hình chú trọng đến bảo mật, bao gồm các giá trị mặc định an toàn và cấu hình tối thiểu.

Tích hợp LangChain

LangChain là thư viện Python cung cấp API đơn giản và trực quan để xây dựng các ứng dụng web hỗ trợ AI. Chúng tôi sẽ tích hợp LangChain với cơ sở dữ liệu nguồn mở an toàn của Percona và phương pháp tiếp cận bảo mật theo mặc định của Chainguard để tạo ra một kiến ​​trúc mạnh mẽ và an toàn.

Ví dụ về mã

Dưới đây là một ví dụ mã đơn giản minh họa cách tích hợp LangChain với cơ sở dữ liệu nguồn mở an toàn của Percona và phương pháp tiếp cận bảo mật theo mặc định của Chainguard:

nhập khẩu chuỗi lang
từ LLM nhập khẩu langchain


llm = LLM(
    model_name="davinci:2-large",
    thiết bị="cuda",
    max_tokens=1024,
)

# Tạo kết nối cơ sở dữ liệu Percona
nhập mysql.connector
cnx = mysql.connector.connect(
    người dùng='tên người dùng',
    mật khẩu='mật khẩu',
    máy chủ='127.0.0.1',
    cơ sở dữ liệu='cơ sở dữ liệu'
)

# Tạo cấu hình bảo mật Chainguard
nhập khẩu chainguard
cfg = chainguard.Config(
    app_name="my_app",
    app_version="1.0",
    env_vars={
        "DB_HOST": "127.0.0.1",
        "DB_USER": "tên người dùng",
        "DB_PASSWORD": "mật khẩu",
    },
)

# Sử dụng LangChain để truy vấn cơ sở dữ liệu
truy vấn = "CHỌN * TỪ my_table"
kết quả = llm.query(truy vấn, db=cnx, cfg=cfg)

#In kết quả
in (kết quả)

Ví dụ về mã này trình bày cách tạo phiên bản LangChain LLM, kết nối với cơ sở dữ liệu Percona và tạo cấu hình bảo mật Chainguard. Sau đó, nó sử dụng LangChain để truy vấn cơ sở dữ liệu và in kết quả.

Top 5-10 Lệnh/Đoạn mã được sử dụng nhiều nhất

Dưới đây là 5-10 lệnh/đoạn mã được sử dụng nhiều nhất cho công nghệ này:

  1. langchain.LLM(model_name="davinci:2-large", device="cuda", max_tokens=1024) - Tạo một phiên bản LangChain LLM.
  2. mysql.connector.connect(user='username', pass='password', Host='127.0.0.1', cơ sở dữ liệu='database') - Tạo kết nối cơ sở dữ liệu 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": "password"}) - Tạo cấu hình bảo mật Chainguard.
  4. llm.query(query, db=cnx, cfg=cfg) - Sử dụng LangChain để truy vấn cơ sở dữ liệu.
  5. print(result) - In kết quả của truy vấn.
  6. import langchain - Nhập thư viện LangChain.
  7. import mysql.connector - Nhập trình kết nối cơ sở dữ liệu Percona.
  8. nhập chainguard - Nhập thư viện Chainguard.
  9. llm = LLM() - Tạo một phiên bản LangChain LLM mà không chỉ định mô hình.
  10. cnx = mysql.connector.connect() - Tạo kết nối cơ sở dữ liệu Percona mà không chỉ định cơ sở dữ liệu.

Trực quan hóa

Dưới đây là hình ảnh trực quan về kiến trúc bảo mật theo mặc định bằng Chart.js:

{
  "loại": "thanh",
  "dữ liệu": {
    "nhãn": ["Cơ sở dữ liệu Percona", "Cấu hình bảo mật Chainguard", "LangChain LLM"],
    "bộ dữ liệu": [
      {
        "label": "Tính năng bảo mật",
        "dữ liệu": [10, 8, 12],
        "backgroundColor": ["#FF6384", "#36A2EB", "#FFCE56"]
      }
    ]
  },
  "tùy chọn": {
    "tiêu đề": {
      "hiển thị": đúng,
      "text": "Cấu trúc bảo mật theo mặc định"
    },
    "cân": {
      "yAxes": [
        {
          "tích tắc": {
            "bắt đầuAtZero": đúng
          }
        }
      ]
    }
  }
}

Hình ảnh trực quan này cho thấy các tính năng bảo mật của cơ sở dữ liệu nguồn mở an toàn của Percona, phương pháp tiếp cận bảo mật theo mặc định của Chainguard và LLM của LangChain.

Kết luận

Việc triển khai kiến trúc bảo mật theo mặc định cho các ứng dụng web được hỗ trợ bởi AI là rất quan trọng trong bối cảnh mối đe dọa ngày nay. Bằng cách kết hợp cơ sở dữ liệu nguồn mở an toàn của Percona với cách tiếp cận bảo mật theo mặc định của Chainguard và tích hợp với LangChain, chúng tôi có thể tạo ra một kiến ​​trúc mạnh mẽ và an toàn có thể chống lại các cuộc tấn công tiềm ẩn do AI điều khiển. Bài viết này đã cung cấp hướng dẫn thực tế về cách triển khai kiến ​​trúc này, bao gồm các ví dụ về mã và hình ảnh trực quan.


¿Tienes preguntas?

Hablemos

Contáctame en LinkedIn