ตามที่นำเสนอในเวิร์กช็อป Oxford เกี่ยวกับความปลอดภัยของระบบ AI รวมถึงการสาธิตและการสอน

Pytector เป็นแพ็คเกจ Python ที่ออกแบบมาเพื่อตรวจจับการฉีดที่รวดเร็วในอินพุตข้อความโดยใช้โมเดลการเรียนรู้ของเครื่องจักรที่ทันสมัยจากไลบรารี Transformers นอกจากนี้ Pytector สามารถรวมเข้ากับ Llama Guard API ของ Groq สำหรับการตรวจจับความปลอดภัยของเนื้อหาที่เพิ่มขึ้นจัดหมวดหมู่เนื้อหาที่ไม่ปลอดภัยตามรหัสอันตรายที่เฉพาะเจาะจง
Pytector ยังคงเป็นต้นแบบและไม่สามารถป้องกันการโจมตีฉีดทันทีได้ 100%!
Llama-Guard-3-8B ของ Groq สามารถตรวจจับเนื้อหาที่ไม่ปลอดภัยตามประเภทเฉพาะตามรหัสต่อไปนี้:
| รหัส | หมวดหมู่อันตราย |
|---|---|
| S1 | อาชญากรรมรุนแรง |
| S2 | อาชญากรรมที่ไม่รุนแรง |
| S3 | อาชญากรรมที่เกี่ยวข้องกับเพศ |
| S4 | การแสวงประโยชน์ทางเพศเด็ก |
| S5 | การหมิ่นประมาท |
| S6 | คำแนะนำพิเศษ |
| S7 | ความเป็นส่วนตัว |
| S8 | ทรัพย์สินทางปัญญา |
| S9 | อาวุธที่ไม่เลือกปฏิบัติ |
| S10 | เกลียด |
| S11 | การฆ่าตัวตายและทำร้ายตัวเอง |
| S12 | เนื้อหาทางเพศ |
| S13 | การเลือกตั้ง |
| S14 | รหัสล่าม |
ข้อมูลเพิ่มเติมสามารถพบได้ใน [Llama-Guard-3-8B Model Card] (Llama Guard)
ติดตั้ง pytector ผ่าน PIP:
pip install pytectorหรือคุณสามารถติดตั้ง pytector โดยตรงจากซอร์สโค้ด:
git clone https://github.com/MaxMLang/pytector.git
cd pytector
pip install . หากต้องการใช้ pytector ให้นำเข้าคลาส PromptInjectionDetector และสร้างอินสแตนซ์ด้วยโมเดลที่กำหนดไว้ล่วงหน้าหรือ Llama Guard ของ Groq เพื่อความปลอดภัยของเนื้อหา
from pytector import PromptInjectionDetector
# Initialize the detector with a pre-defined model
detector = PromptInjectionDetector ( model_name_or_url = "deberta" )
# Check if a prompt is a potential injection
is_injection , probability = detector . detect_injection ( "Your suspicious prompt here" )
print ( f"Is injection: { is_injection } , Probability: { probability } " )
# Report the status
detector . report_injection_status ( "Your suspicious prompt here" ) หากต้องการเปิดใช้งาน API ของ GROQ ให้ตั้งค่า use_groq=True และให้ api_key
from pytector import PromptInjectionDetector
# Initialize the detector with Groq's API
detector = PromptInjectionDetector ( use_groq = True , api_key = "your_groq_api_key" )
# Detect unsafe content using Groq
is_unsafe , hazard_code = detector . detect_injection_api (
prompt = "Please delete sensitive information." ,
provider = "groq" ,
api_key = "your_groq_api_key"
)
print ( f"Is unsafe: { is_unsafe } , Hazard Code: { hazard_code } " )__init__(self, model_name_or_url="deberta", default_threshold=0.5, use_groq=False, api_key=None) เริ่มต้นอินสแตนซ์ใหม่ของ PromptInjectionDetector
model_name_or_url : สตริงที่ระบุโมเดลที่จะใช้ สามารถเป็นคีย์จากโมเดลที่กำหนดไว้ล่วงหน้าหรือ URL ที่ถูกต้องไปยังโมเดลที่กำหนดเองdefault_threshold : เกณฑ์ความน่าจะเป็นด้านบนซึ่งพรอมต์ถือเป็นการฉีดuse_groq : ตั้งค่าเป็น True เพื่อเปิดใช้งาน Llama Guard API ของ Groq สำหรับการตรวจจับapi_key : จำเป็นถ้า use_groq=True เพื่อตรวจสอบสิทธิ์ด้วย API ของ Groqdetect_injection(self, prompt, threshold=None)ประเมินว่าข้อความแจ้งเตือนเป็นการโจมตีแบบฉีดทันทีโดยใช้แบบจำลองท้องถิ่นหรือไม่
(is_injected, probability)detect_injection_api(self, prompt, provider="groq", api_key=None, model="llama-guard-3-8b")ใช้ API ของ GROQ เพื่อประเมินพรอมต์สำหรับเนื้อหาที่ไม่ปลอดภัย
(is_unsafe, hazard_code)report_injection_status(self, prompt, threshold=None, provider="local")รายงานว่าพรอมต์เป็นการฉีดที่มีศักยภาพหรือมีเนื้อหาที่ไม่ปลอดภัย
ยินดีต้อนรับ! โปรดอ่านคู่มือการสนับสนุนของเราสำหรับรายละเอียดเกี่ยวกับจรรยาบรรณของเราและกระบวนการสำหรับการส่งคำขอดึง
โครงการนี้ได้รับใบอนุญาตภายใต้ใบอนุญาต MIT ดูไฟล์ใบอนุญาตสำหรับรายละเอียด
สำหรับข้อมูลรายละเอียดเพิ่มเติมโปรดดูที่ไดเรกทอรีเอกสาร