Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack 🎉 Learn more
LibreChat

Kiểm duyệt tự động

Cấu hình Hệ thống Kiểm duyệt Tự động. Hệ thống này sử dụng cơ chế chấm điểm để theo dõi các vi phạm của người dùng. Khi người dùng thực hiện các hành động như đăng nhập, đăng ký hoặc gửi tin nhắn quá mức, họ sẽ tích lũy điểm vi phạm. Khi đạt đến ngưỡng đã thiết lập, người dùng và địa chỉ IP của họ sẽ bị cấm tạm thời. Hệ thống này đảm bảo an ninh nền tảng bằng cách giám sát và xử phạt các hoạt động nhanh hoặc đáng ngờ.

Hệ thống Kiểm duyệt Tự động sử dụng cơ chế tính điểm để theo dõi các vi phạm của người dùng. Khi người dùng thực hiện các hành động như đăng nhập, đăng ký hoặc gửi tin nhắn quá mức, họ sẽ tích lũy điểm vi phạm. Khi đạt đến ngưỡng đã thiết lập, người dùng và địa chỉ IP của họ sẽ bị cấm tạm thời. Hệ thống này đảm bảo an ninh nền tảng bằng cách giám sát và xử phạt các hoạt động nhanh hoặc đáng ngờ.

Trong môi trường production, bạn nên sử dụng Cloudflare hoặc một giải pháp bảo vệ chống DDoS khác để thực sự bảo vệ máy chủ khỏi các yêu cầu quá mức, nhưng những thay đổi này phần lớn sẽ bảo vệ bạn khỏi một hoặc vài đối tượng xấu nhắm mục tiêu vào instance đã triển khai của bạn để thực hiện proxy.

Để biết thêm chi tiết, hãy tham khảo hướng dẫn sử dụng được cung cấp tại đây: Automated Moderation

Thiết lập

Dưới đây là tất cả các biến môi trường liên quan để sử dụng và cấu hình hệ thống mod. Lưu ý rằng thông tin này cũng có trong tệp /.env.example, cần được thiết lập trong tệp .env của riêng bạn.

Lưu ý: hiện tại, hầu hết các giá trị này được cấu hình thông qua tệp .env, nhưng chúng có thể sớm được chuyển đổi để chỉ cấu hình từ librechat.yaml config file.

Vi phạm, Khoảng thời gian, Thời lượng

KeyTypeDescriptionExample
BAN_VIOLATIONSbooleanCó cho phép cấm người dùng do vi phạm hay không (họ vẫn sẽ được ghi lại nhật ký).BAN_VIOLATIONS=true
BAN_DURATIONintegerThời gian người dùng và IP liên quan bị cấm (tính bằng mili giây).BAN_DURATION=1000 * 60 * 60 * 2
BAN_INTERVALintegerNgười dùng sẽ bị cấm mỗi khi điểm số của họ đạt/vượt qua ngưỡng khoảng thời gian.BAN_INTERVAL=20

Điểm số cho mỗi vi phạm

KeyTypeDescriptionExample
LOGIN_VIOLATION_SCOREintegerĐiểm cho các vi phạm đăng nhập.LOGIN_VIOLATION_SCORE=1
REGISTRATION_VIOLATION_SCOREintegerĐiểm số cho các vi phạm đăng ký.REGISTRATION_VIOLATION_SCORE=1
CONCURRENT_VIOLATION_SCOREintegerĐiểm số cho các vi phạm đồng thời.CONCURRENT_VIOLATION_SCORE=1
MESSAGE_VIOLATION_SCOREintegerĐiểm số cho các vi phạm tin nhắn.MESSAGE_VIOLATION_SCORE=1
NON_BROWSER_VIOLATION_SCOREintegerĐiểm số cho các vi phạm không liên quan đến trình duyệt.NON_BROWSER_VIOLATION_SCORE=20
IMPORT_VIOLATION_SCOREintegerĐiểm số cho các vi phạm khi nhập cuộc trò chuyện.IMPORT_VIOLATION_SCORE=1
FORK_VIOLATION_SCOREintegerĐiểm cho các vi phạm phân nhánh hội thoại.FORK_VIOLATION_SCORE=1
TTS_VIOLATION_SCOREintegerĐiểm số cho các vi phạm chuyển văn bản thành giọng nói.TTS_VIOLATION_SCORE=0
STT_VIOLATION_SCOREintegerĐiểm vi phạm cho tính năng chuyển đổi giọng nói thành văn bản.STT_VIOLATION_SCORE=0
FILE_UPLOAD_VIOLATION_SCOREintegerĐiểm số cho các vi phạm tải tệp lên.FILE_UPLOAD_VIOLATION_SCORE=0
RESET_PASSWORD_VIOLATION_SCOREintegerĐiểm số cho các vi phạm đặt lại mật khẩu.RESET_PASSWORD_VIOLATION_SCORE=0
VERIFY_EMAIL_VIOLATION_SCOREintegerĐiểm số cho các vi phạm xác minh email.VERIFY_EMAIL_VIOLATION_SCORE=0
TOOL_CALL_VIOLATION_SCOREintegerĐiểm số cho các vi phạm gọi công cụ.TOOL_CALL_VIOLATION_SCORE=0
CONVO_ACCESS_VIOLATION_SCOREintegerĐiểm số cho các vi phạm truy cập hội thoại.CONVO_ACCESS_VIOLATION_SCORE=0

Giới hạn tốc độ đăng nhập và đăng ký.

KeyTypeDescriptionExample
LOGIN_MAXnumberSố lượng đăng nhập tối đa cho phép trên mỗi IP trong mỗi LOGIN_WINDOW. Mặc định là `7`.
LOGIN_WINDOWnumberTính bằng phút, xác định khoảng thời gian cho LOGIN_MAX lượt đăng nhập. Mặc định là `5`.
REGISTER_MAXnumberSố lượng đăng ký tối đa cho phép trên mỗi IP trong mỗi REGISTER_WINDOW. Mặc định là `5`.
REGISTER_WINDOWnumberTính bằng phút, xác định khoảng thời gian cho REGISTER_MAX lượt đăng ký. Mặc định là `60`.

Giới hạn tốc độ tin nhắn

KeyTypeDescriptionExample
LIMIT_CONCURRENT_MESSAGESbooleanLiệu có giới hạn số lượng tin nhắn mà người dùng có thể gửi trong mỗi yêu cầu hay không.LIMIT_CONCURRENT_MESSAGES=true
CONCURRENT_MESSAGE_MAXintegerSố lượng tin nhắn tối đa mà một người dùng có thể gửi trong mỗi yêu cầu.CONCURRENT_MESSAGE_MAX=2

Lưu ý: Bạn có thể sử dụng cả hai bộ giới hạn, nhưng mặc định chỉ giới hạn theo IP.

Giới hạn tốc độ tin nhắn (theo IP)

KeyTypeDescriptionExample
LIMIT_MESSAGE_IPbooleanLiệu có giới hạn số lượng tin nhắn mà một IP có thể gửi trong mỗi `MESSAGE_IP_WINDOW` hay không.LIMIT_MESSAGE_IP=true
MESSAGE_IP_MAXintegerSố lượng tin nhắn tối đa mà một IP có thể gửi trong mỗi `MESSAGE_IP_WINDOW`.MESSAGE_IP_MAX=40
MESSAGE_IP_WINDOWintegerTrong vài phút, xác định khoảng thời gian cho `MESSAGE_IP_MAX` tin nhắn.MESSAGE_IP_WINDOW=1

Giới hạn tốc độ tin nhắn (theo Người dùng)

KeyTypeDescriptionExample
LIMIT_MESSAGE_USERbooleanLiệu có giới hạn số lượng tin nhắn mà người dùng có thể gửi trong mỗi `MESSAGE_USER_WINDOW` hay không.LIMIT_MESSAGE_USER=false
MESSAGE_USER_MAXintegerSố lượng tin nhắn tối đa mà một người dùng có thể gửi trong mỗi `MESSAGE_USER_WINDOW`.MESSAGE_USER_MAX=40
MESSAGE_USER_WINDOWintegerTính bằng phút, xác định khoảng thời gian cho `MESSAGE_USER_MAX` tin nhắn.MESSAGE_USER_WINDOW=1

Giới hạn tốc độ nhập cuộc trò chuyện

Giới hạn tần suất người dùng có thể nhập cuộc trò chuyện để ngăn chặn hành vi lạm dụng.

Lưu ý: Bạn có thể sử dụng cả hai bộ giới hạn, nhưng mặc định chỉ giới hạn theo IP.

Giới hạn tốc độ nhập cuộc trò chuyện (theo IP)

KeyTypeDescriptionExample
LIMIT_IMPORT_IPbooleanLiệu có giới hạn số lượng nhập hội thoại mà một IP có thể thực hiện trong mỗi `IMPORT_IP_WINDOW` hay không.LIMIT_IMPORT_IP=true
IMPORT_IP_MAXintegerSố lượng nhập cuộc trò chuyện tối đa mà một IP có thể thực hiện trong mỗi `IMPORT_IP_WINDOW`.IMPORT_IP_MAX=100
IMPORT_IP_WINDOWintegerTính bằng phút, xác định khoảng thời gian cho các lượt nhập `IMPORT_IP_MAX`.IMPORT_IP_WINDOW=1

Giới hạn tốc độ nhập cuộc trò chuyện (theo Người dùng)

KeyTypeDescriptionExample
LIMIT_IMPORT_USERbooleanLiệu có giới hạn số lượng nhập cuộc trò chuyện mà một người dùng có thể thực hiện trong mỗi `IMPORT_USER_WINDOW` hay không.LIMIT_IMPORT_USER=false
IMPORT_USER_MAXintegerSố lượng nhập cuộc trò chuyện tối đa mà một người dùng có thể thực hiện trong mỗi `IMPORT_USER_WINDOW`.IMPORT_USER_MAX=50
IMPORT_USER_WINDOWintegerTính bằng phút, xác định khoảng thời gian cho các lượt nhập `IMPORT_USER_MAX`.IMPORT_USER_WINDOW=1

Giới hạn tốc độ phân nhánh cuộc trò chuyện

Giới hạn tần suất người dùng có thể fork các cuộc trò chuyện để ngăn chặn hành vi lạm dụng.

Lưu ý: Bạn có thể sử dụng cả hai bộ giới hạn, nhưng mặc định chỉ giới hạn theo IP.

Giới hạn tốc độ phân nhánh hội thoại (theo IP)

KeyTypeDescriptionExample
LIMIT_FORK_IPbooleanLiệu có giới hạn số lượng nhánh hội thoại mà một IP có thể tạo trong mỗi `FORK_IP_WINDOW` hay không.LIMIT_FORK_IP=true
FORK_IP_MAXintegerSố lượng nhánh hội thoại tối đa mà một IP có thể tạo trong mỗi `FORK_IP_WINDOW`.FORK_IP_MAX=30
FORK_IP_WINDOWintegerTính bằng phút, xác định khoảng thời gian cho các fork `FORK_IP_MAX`.FORK_IP_WINDOW=1

Giới hạn tốc độ phân nhánh hội thoại (theo Người dùng)

KeyTypeDescriptionExample
LIMIT_FORK_USERbooleanLiệu có giới hạn số lượng nhánh hội thoại mà một người dùng có thể tạo trong mỗi `FORK_USER_WINDOW` hay không.LIMIT_FORK_USER=false
FORK_USER_MAXintegerSố lượng nhánh hội thoại tối đa mà một người dùng có thể tạo trong mỗi `FORK_USER_WINDOW`.FORK_USER_MAX=7
FORK_USER_WINDOWintegerTính bằng phút, xác định khoảng thời gian cho các fork `FORK_USER_MAX`.FORK_USER_WINDOW=1

Các yêu cầu model không hợp lệ

Lưu ý: Các yêu cầu model bất hợp pháp hầu như luôn là hành vi xấu vì điều đó có nghĩa là một bên thứ 3 đang cố gắng truy cập vào máy chủ thông qua một tập lệnh tự động. Đối với trường hợp này, tôi khuyên bạn nên đặt điểm số tương đối cao, không dưới 5.

KeyTypeDescriptionExample
ILLEGAL_MODEL_REQ_SCOREintegerĐiểm số cho các yêu cầu mô hình không hợp lệ.ILLEGAL_MODEL_REQ_SCORE=5

Kiểm duyệt văn bản OpenAI

KeyTypeDescriptionExample
OPENAI_MODERATIONbooleanCó bật tính năng kiểm duyệt của OpenAI trên các endpoint **OpenAI** và **Plugins** hay không.OPENAI_MODERATION=false
OPENAI_MODERATION_API_KEYstringKhóa API OpenAI của bạn.OPENAI_MODERATION_API_KEY=

Lưu ý rằng điều này có thể không hoạt động với tất cả các reverse proxy:

KeyTypeDescriptionExample
OPENAI_MODERATION_REVERSE_PROXYstringLưu ý: Mặc định bị chú thích, tính năng này không hoạt động với tất cả các reverse proxy.# OPENAI_MODERATION_REVERSE_PROXY=

Hướng dẫn này thế nào?