output. Gateway chạy
nó sau khi mô hình thượng nguồn phản hồi và trước khi một byte nào đến
client của bạn.
Trang này đề cập cụ thể đến giai đoạn output: cách một completion được
sàng lọc, một block tốn gì, và cách block và mask mỗi cái hành xử trên
các phản hồi streaming. Để xem engine đầy đủ — mọi loại quy tắc, trường,
và route — xem Guardrails.
1. Tại sao các team tìm đến output guardrails llm
Mô hình là phần không đáng tin của vòng lặp. Nó có thể lặp lại một secret từ prompt, kéo email của một khách hàng ra khỏi ngữ cảnh RAG, hoặc bịa ra một tuyên bố mà các nguồn của bạn chưa bao giờ đưa ra. Không có cái nào trong đó hiển thị ở giai đoạn input, vì không cái nào tồn tại cho đến khi mô hình đã trả lời. Một guardrail giai đoạn output là màng lọc trên chính completion. Một quy tắc chạy ở giai đoạn output khistage của nó là output (hoặc
both). Gateway đánh giá văn bản phản hồi của mô hình đối với chính sách,
ghi lại bất kỳ match nào, rồi hoặc cho nó đi qua, redact nó, hoặc từ chối
nó — chính xác cùng các hành động block / mask / flag mà bạn dùng
trên input, chỉ áp dụng cho phản hồi.
Các quy tắc output là một mối quan tâm bổ sung, không phải thay thế.
Hầu hết các chính sách sàng lọc
input để giữ dữ liệu ra khỏi prompt và
output để bắt cái mô hình trả về. Giai đoạn both gắn một quy tắc vào
cả hai đầu.2. Một ví dụ cụ thể — block một secret trong phản hồi
Tạo một guardrail trong console (/console/guardrails), thêm một quy tắc,
và gắn nó vào một key:
- Type: Secrets / regex detector
- Stage:
output - Action:
block
/v1/*:
guardrail_blocked — client không bao giờ thấy nội
dung bị rò rỉ. Nếu nó sạch, phản hồi đi qua nguyên vẹn.
3. Một block output tốn gì
Không như một block input — kích hoạt trước khi request được đo lường — một block output xảy ra sau khi mô hình thượng nguồn đã chạy. Gateway xử lý kế toán cho bạn:- Một completion bị block vẫn trả về HTTP 400
guardrail_blockedvới một thông báo nêu tên guardrail và quy tắc đã kích hoạt. - Không tốn quota. Block output hoàn trả lại quota đã tiêu trước sau khi phản hồi bị từ chối, nên cuộc gọi thất bại là miễn phí với bạn dù mô hình đã sản sinh token.
- Request được đánh dấu skip-retry — chạy lại cùng một prompt sẽ chỉ block lại, nên gateway sẽ không đốt một lần retry trên một kênh khác.
Đây là khác biệt then chốt so với giai đoạn input. Một block input
miễn phí vì đo lường chưa bắt đầu; một block output miễn phí vì quota
đã tiêu trước được hoàn trả một khi phản hồi bị từ chối. Dù theo cách
nào, caller không trả gì. Xem
lỗi guardrail_blocked.
4. Streaming — block vs. mask
Block được thực thi trên các phản hồi streaming; mask output thì chưa. Đây là cách mỗi cái hành xử:block — được thực thi trên streaming VÀ không streaming
block — được thực thi trên streaming VÀ không streaming
Trên một phản hồi không streaming, completion được sàng lọc đầy đủ
trước khi nó trả về. Trên một phản hồi streaming, một scanner theo
dõi các delta khi chúng chảy; khi một quy tắc block kích hoạt giữa
stream nó cắt stream — scanner đóng kín, phát ra một thông báo
thay thế ngắn thay cho phần còn lại, và kênh SSE đóng trước khi bất kỳ
nội dung bị block nào đến được client.Các byte đã được flush không thể bị thu hồi, nên một block là nỗ lực
tốt nhất trên những gì đã stream nhưng chặn đáng tin mọi thứ sau
match. Để có một đảm bảo cứng rằng không byte vi phạm nào từng được
gửi, hãy dùng một request không streaming.
mask — chỉ không streaming (masking in-stream nằm trong lộ trình)
mask — chỉ không streaming (masking in-stream nằm trong lộ trình)
Trên một phản hồi không streaming, một quy tắc mask viết lại
completion — vd: một email trong phản hồi trở thành
[EMAIL] — và văn
bản đã làm sạch là cái client của bạn nhận được.Trên một phản hồi streaming, một quy tắc mask output không
redact phản hồi hôm nay. Scanner vẫn đánh giá mỗi delta và sẽ hành
động theo một quyết định block, nhưng văn bản đã che mà nó tính
không được chuyển tiếp — các delta thô đi qua không đổi. Viết lại
output streaming in-band nằm trong lộ trình. Cho đến khi nó ship,
hãy gửi request không streaming nếu bạn cần một mask output thực
sự redact phản hồi.Hành động trên output | Không streaming | Streaming |
|---|---|---|
block | từ chối phản hồi | cắt stream |
mask | redact phản hồi | chưa được redact (lộ trình) |
flag | chỉ ghi lại | chỉ ghi lại |
5. Grounding — một kiểm tra độ trung thực ở giai đoạn output
Một quy tắc nâng cao vốn dĩ có hình dạng output: contextual grounding. Một quy tắcgrounding chấm điểm câu trả lời của mô hình so với các
nguồn được truy xuất trên request (ngữ cảnh RAG của bạn) và kích hoạt
khi độ trung thực rơi xuống dưới một ngưỡng (mặc định 0.7). Ghép nó với
block để từ chối các câu trả lời không trung thực, hoặc flag để đo
lường độ lệch trước khi bạn thực thi. Nó tính phí như một judge sub-line,
như bất kỳ quy tắc dựa trên mô hình nào. Các trường đầy đủ nằm trong
Guardrails.
6. PII Shield ở giai đoạn output
Preset PII Shield là một quy tắcpii đơn lẻ, hành động mask, giai
đoạn both. Ở giai đoạn input nó hoạt động đầy đủ — nó viết lại
request trước mô hình, trên cả streaming lẫn không streaming. Ở giai đoạn
output nó che các completion không streaming, như trong
§4; trên một phản hồi streaming, mask
output không redact phản hồi hôm nay (masking output in-stream nằm trong
lộ trình).
Vậy nên ở giai đoạn output, hãy gọi không streaming nếu bạn cần PII
Shield thực sự redact phản hồi. Xem
PII Shield và
masking formats.
7. Xem cái gì đã kích hoạt
Mỗi quy tắc output kích hoạt ghi lại một match — loại quy tắc, hành động, giai đoạn (output), và một chuỗi detail — trong feed Matches
của workspace (GET /api/guardrail/match, mở cho mọi Member).
Chuỗi con đã khớp được ghi lại chỉ khi toggle Log raw content của
guardrail bật; nó tắt theo mặc định (tư thế bảo thủ về quyền riêng
tư), nên theo mặc định bạn thấy rằng một quy tắc output đã kích hoạt,
không phải văn bản nhạy cảm mà nó bắt được. Một false positive được đánh
dấu với POST /api/guardrail/match/:id/mark-fp (Admin) — coi nó là
một tín hiệu để tinh chỉnh, không phải lý do để tắt quy tắc.
8. Đi đâu tiếp theo
Giai đoạn input
Hình ảnh phản chiếu — sàng lọc request trước khi mô hình thấy nó.
Masking input hoạt động đầy đủ, bao gồm streaming.
Hành động
block, mask, và flag chuyên sâu — khi nào mỗi cái là lựa chọn đúng.
Streaming coverage
Ma trận đầy đủ về cái gì được thực thi trên streaming vs. không streaming.
Lỗi guardrail_blocked
HTTP 400, hoàn trả quota, và hành vi skip-retry.
Khái niệm liên quan
Khái niệm liên quan
Mối đe dọa cái này xử lý
Mối đe dọa cái này xử lý
Tham chiếu engine đầy đủ
Tham chiếu engine đầy đủ
Guardrails — mọi loại quy tắc, trường, và
route, bao gồm grounding và LLM judge.
