Prompt injection là gì?

Trả lời nhanh: Prompt injection là kẻ chèn chỉ dẫn vào dữ liệu mà mô hình đang đọc, để mô hình bỏ quy tắc gốc. Cần tách chỉ dẫn hệ thống khỏi nội dung người dùng đưa vào.

Điểm chính

  • Prompt injection là kẻ chèn chỉ dẫn vào dữ liệu mà mô hình đang đọc, để mô hình bỏ quy tắc gốc. Cần tách chỉ dẫn hệ thống khỏi nội dung người dùng đưa vào.
  • Bắt đầu bằng một tình huống thật, thử trên phạm vi nhỏ, đo kết quả, rồi mới mở rộng. Không bắt đầu bằng việc mua công cụ.
  • Phù hợp khi quy trình đã có dữ liệu và có người dùng kết quả. Chưa phù hợp khi quy trình còn chưa viết được.
  • Đừng dùng prompt injection để né một quyết định quản trị. Công cụ không thay người ký và không thay trách nhiệm với khách hàng.
  • Thuộc chuyên mục AI tạo sinh & LLM. Chỉ mở rộng sau khi một phạm vi nhỏ đã đo được.
Mục lục
  1. prompt injection là gì
  2. prompt injection hoạt động ra sao?
  3. Khi nào nên dùng prompt injection?
  4. Ví dụ trong công việc
  5. Người phụ trách cần chuẩn bị gì?
  6. Dễ nhầm và rủi ro
  7. Câu hỏi thường gặp

prompt injection là gì

Prompt injection là kẻ chèn chỉ dẫn vào dữ liệu mà mô hình đang đọc, để mô hình bỏ quy tắc gốc. Cần tách chỉ dẫn hệ thống khỏi nội dung người dùng đưa vào.

Người đọc bài này nên ra về với một câu trả lời dùng được: prompt injection giải quyết việc gì, không giải quyết việc gì, và ai chịu trách nhiệm khi kết quả sai. Định nghĩa để trang trí slide thì chưa đủ.

prompt injection hoạt động ra sao?

Bắt đầu bằng một tình huống thật, thử trên phạm vi nhỏ, đo kết quả, rồi mới mở rộng. Không bắt đầu bằng việc mua công cụ.

Hình dung theo bốn bước, không cần công cụ đắt tiền ở bước đầu:

  1. Viết việc cần làm bằng một câu, có đầu vào và đầu ra.
  2. Lấy một mẫu nhỏ dữ liệu hoặc một tình huống thật, không lấy cả hệ thống.
  3. Cho prompt injection chạy trên mẫu đó và ghi chỗ sai.
  4. Chỉ mở rộng khi chỗ sai đã có người sửa và có cách đo.
Bắt đầu từ một việc nhỏ 1. Một việc đầu vào và đầu ra rõ 2. Mẫu nhỏ đủ để thấy đúng sai 3. Đo chỗ lệch không chỉ xem demo 4. Mới mở rộng khi đã có người chịu trách nhiệm
prompt injection chỉ nên ra khỏi thí điểm sau khi bước 3 có số liệu. Sơ đồ do VBPO Tech Blog tổng hợp.

Khi nào nên dùng prompt injection?

Phù hợp khi quy trình đã có dữ liệu và có người dùng kết quả. Chưa phù hợp khi quy trình còn chưa viết được.

Nên dùng khi ba điều cùng đúng. Việc lặp hoặc đủ lớn để làm tay không xuể. Có dữ liệu hoặc có chứng từ để đối chiếu. Có một người được giao quyền dừng lại nếu kết quả không đạt.

Chưa nên dùng khi đội chưa thống nhất thế nào là đúng. Thêm công cụ vào một quy trình đang cãi nhau về định nghĩa sẽ tạo ra một hệ thống sai nhanh hơn, không phải một hệ thống tốt hơn.

Câu hỏi Nếu trả lời có Nếu trả lời không
Việc có lặp không? Đáng xem prompt injection Hãy viết quy trình trước
Có cách biết sai không? Có thể đo thí điểm Chưa đưa vào vận hành
Có người chịu trách nhiệm không? Gắn tên người đó Đừng giao cho công cụ
Phạm vi có hẹp không? Thí điểm được Chia nhỏ rồi hãy làm

Ví dụ trong công việc

Một đội đang làm trong ai tạo sinh & llm muốn dùng prompt injection. Họ không mua nền tảng ngay. Họ chọn một tuần dữ liệu cũ, nhờ một người thành thạo làm đối chứng, và so với kết quả của prompt injection. Chỗ khớp thì ghi lại điều kiện. Chỗ lệch thì không "sửa cho đẹp" mà tìm vì sao lệch.

Phù hợp khi quy trình đã có dữ liệu và có người dùng kết quả. Chưa phù hợp khi quy trình còn chưa viết được. Sau hai tuần, họ chỉ giữ những trường hợp đã khớp. Phần còn lại vẫn do người làm. Đó là cách đưa prompt injection vào việc mà không đánh đổi trách nhiệm.

Người phụ trách cần chuẩn bị gì?

Trước khi dùng prompt injection trong việc thật, người phụ trách nên viết một trang giấy: việc nào được làm, việc nào cấm, dữ liệu nào được xem, và ai được dừng thí điểm. Trang này quan trọng hơn tài khoản phần mềm. Không có trang này thì mỗi người hiểu prompt injection một kiểu, và kết quả không so được.

Nên hẹn một ngày đọc kết quả, không để thí điểm kéo dài không hạn. Đến ngày đó, chỉ có hai lối: giữ vì số liệu đạt ngưỡng đã viết, hoặc dừng vì không đạt. Không có lối thứ ba là "cho thêm thời gian" nếu ngưỡng chưa được viết lại từ đầu.

Dễ nhầm và rủi ro

Đừng dùng prompt injection để né một quyết định quản trị. Công cụ không thay người ký và không thay trách nhiệm với khách hàng.

Ba nhầm lẫn hay gặp:

  • Coi tên gọi là giải pháp. Đổi tên dự án thành prompt injection không đổi kết quả.
  • Đo bằng số lần dùng, không đo bằng số lần đúng. Một công cụ được mở nhiều mà quyết định vẫn sai thì chưa có ích.
  • Bỏ người kiểm tra vì bảng điều khiển màu xanh. Màu xanh chỉ đúng với chỉ số đã chọn. Chỉ số chọn sai thì xanh vẫn là sai.

Câu hỏi thường gặp

prompt injection có thay người làm việc đó không?

Không. prompt injection xử lý phần lặp hoặc phần tính toán đã có quy tắc. Người vẫn chọn quy tắc, xử lý ngoại lệ và chịu trách nhiệm với khách hàng, với số liệu hoặc với hồ sơ.

Doanh nghiệp nhỏ có dùng được không?

Có, nếu bắt đầu bằng một việc nhỏ và một công cụ sẵn có, không bằng một dự án nhiều tháng. Phù hợp khi quy trình đã có dữ liệu và có người dùng kết quả. Chưa phù hợp khi quy trình còn chưa viết được.

Làm sao biết đã dùng đúng?

Có một mẫu đối chứng do người làm, và kết quả của prompt injection khớp với mẫu đó trên các trường đã chọn. Không khớp thì chưa được gọi là xong. Đừng dùng prompt injection để né một quyết định quản trị. Công cụ không thay người ký và không thay trách nhiệm với khách hàng.

Có nên đưa vào quy trình chính ngay không?

Chưa. Hãy để ở thí điểm cho đến khi số lần phải sửa nằm trong giới hạn đội đã viết từ trước. Giới hạn viết sau khi thấy kết quả thì luôn được nới, và thí điểm mất nghĩa.

prompt injection khác gì với việc đang làm bằng bảng tính hoặc bằng kinh nghiệm?

Bắt đầu bằng một tình huống thật, thử trên phạm vi nhỏ, đo kết quả, rồi mới mở rộng. Không bắt đầu bằng việc mua công cụ. Khác ở chỗ cách làm phải lặp lại được và kiểm được, không phụ thuộc vào một người nhớ trong đầu. Nếu chưa kiểm được thì giữ cách cũ song song, đừng tắt cách cũ trong tuần đầu.