Regex LLM Output Extractor
Trích xuất dữ liệu có cấu trúc (JSON, code block, cặp key-value) từ response LLM lộn xộn. Chọn từ template phổ biến hoặc viết regex của riêng bạn. Preview trực tiếp.
Nhập dữ liệu ở trên để xem kết quả.
Công cụ này để làm gì?
Bạn yêu cầu LLM trả JSON. Nó trả JSON bọc trong fence ```json với lời mở đầu "Chắc chắn rồi, đây ạ!". Hoặc nó trả "câu trả lời là 42" khi bạn chỉ muốn 42. Hoặc nó trả danh sách đánh số khi bạn yêu cầu chuỗi phân cách bằng dấu phẩy. Chào mừng đến với vấn đề parsing mà không ai giải quyết thực sự. Công cụ này giữ một thư viện nhỏ các pattern trích xuất phổ biến cùng trình soạn regex tự do, để bạn lặp pattern với văn bản phản hồi thực ngay trong trình duyệt.
Khi nào nên dùng
- Thiết kế parser output cho pipeline agent. Ném vào vài response thực, dựng regex xử lý tất cả, dán vào code.
- Debug parser hỏng. Pipeline prod bắt đầu fail vì model thêm "Đây là JSON:" trước fence. Xem chính xác regex của bạn dừng match ở đâu.
- Trích xuất nhanh một lần. Bạn có mười response LLM trong một doc; cần trích phần có cấu trúc từ mỗi cái. Dán, match, sao chép, tiếp.
Các template
- JSON trong fence ```json — trường hợp phổ biến nhất. Bắt nhóm 1 = nội dung. Dùng
gnếu có thể có nhiều fence. - JSON trong bất kỳ fence nào — cùng ý nhưng thẻ ngôn ngữ tùy chọn và chỉ bắt nếu nội dung trông như
{ … }hoặc[ … ]. - YAML trong fence — giống JSON-fence nhưng match
```yaml/```yml. - Bất kỳ code block fenced — bắt thẻ ngôn ngữ + nội dung. Dùng khi không biết bên trong là gì.
- Đối tượng JSON trần — match tham lam từ
{đầu tiên đến}cuối. Mong manh nhưng hoạt động cho response "chỉ JSON". - Mục danh sách đánh số —
^\s*\d+[.)]\s*(.+)$vớigm. Bắt văn bản của mỗi mục, không có số. - Cặp key: value — dòng một. Nhóm 1 = key, nhóm 2 = value. Dừng ở dấu hai chấm đầu tiên.
- Nhãn phân loại đơn — hữu ích cho classifier sentiment / safety phải trả lời bằng một từ.
- Custom regex — xóa pattern và viết của bạn.
Dòng "Parsed JSON"
Nếu nhóm bắt đầu tiên (hoặc, nếu thất bại, full match) parse được dưới dạng JSON, công cụ in kết quả đã parse dưới các nhóm. Điều đó nói cho bạn không chỉ "regex có match không" mà còn "nó có match phần bạn muốn theo cách có thể decode JSON không". Nếu parsing fail, dòng đó trống.
Lưu ý thường gặp
- Regex JavaScript, không phải PCRE. Không có
\K, không có pattern đệ quy. Lookbehind cần trình duyệt hiện đại (sau 2018 — ổn ở đây nhưng cẩn thận nếu sao chép pattern đi nơi khác). - Model bọc JSON của nó trong bình luận. Đừng cố tìm
{ở đầu chuỗi — tìm fence hoặc dùng capture non-greedy linh hoạt. - Trailing comma trong "JSON" output. Một số model lén đưa trailing comma vào dù đã training. Match regex sẽ chạy;
JSON.parsesẽ fail. Bỏ trailing comma trước khi parse. - "JSON" với dấu nháy đơn. Cùng câu chuyện — trông như JSON, không phải JSON hợp lệ, regex không quan tâm,
JSON.parsequan tâm. - Fence lồng nhau. Nếu model đưa ví dụ fence markdown vào response, bạn có thể bị false-positive match ở fence trong. Test với dữ liệu thực tế.
- Đừng dùng regex cho trích xuất nghiêm túc bracket lồng nhau. Nếu model trả về object chứa object chứa mảng object, viết trình trích xuất JSON-aware đúng nghĩa — hoặc yêu cầu dạng fence và parse nội dung fence.
- Riêng tư. Văn bản và pattern ở lại trang. Không upload, không gọi API.