Bộ Kiểm Thử Đánh Giá LLM
Đo thực tế một endpoint tương thích OpenAI/Anthropic trên 6 chiều: khả dụng, độ trung thực yêu cầu, tốc độ, đồng thời, tuân thủ giao thức và chất lượng.
Lập trìnhNâng cao★ 1,323⑂ 212Điểm AI 9/10Cập nhật lần cuối: 8 thg 8, 2026
Làm được gì
Chỉ cần base_url + model + tên biến môi trường chứa API key, skill sẽ đo thật thay vì tin vào con số quảng cáo của nhà cung cấp.
- Khả dụng (Availability): model ID nào thực sự có route, phân loại lỗi 3 trạng thái (
no-channel/upstream-error/empty-content), giữ max_tokens 8192 để model suy luận không bị hiểu nhầm là chết. - Độ trung thực yêu cầu (Fidelity): system prompt, tools, lịch sử hội thoại có thật sự đến được model không — dùng mã canary. Bắt đúng lỗi khó chịu nhất: gateway trả 200 và trò chuyện trôi chảy nhưng âm thầm bỏ system prompt.
- Tốc độ: TTFT và tok/s giải mã bền vững, có tính cả
reasoning_contentđể tránh lỗi phổ biến thổi 750 tok/s thành 4700 tok/s. - Đồng thời: tăng dần 10/20/40/60 để tìm điểm gãy, tắt proxy môi trường và keep-alive nên đo đúng giới hạn model chứ không phải của proxy.
- Tuân thủ giao thức: kiểm tra riêng biệt việc sinh khối
thinkingcủa Anthropic và việc chấp nhận khối đó khi phát lại lịch sử — nguyên nhân khiến phiên agent chết giữa chừng. - Hồi quy chất lượng: chạy bộ use-case của bạn, rồi 3 giám khảo độc lập chấm mù, chỉ tính đa số đồng thuận; im lặng không được tính là đạt.
API key luôn truyền qua tên biến môi trường, không bao giờ lộ trong ps, lịch sử shell hay báo cáo. Bộ use-case và key nên để ở ~/.llm-eval/, tách khỏi thư mục skill công khai.
Dành cho ai
- Kỹ sư backend/platform cần thẩm định một gateway hoặc reseller LLM mới trước khi tích hợp
- Lập trình viên agent đang truy lỗi "model không nghe system prompt" mà không có thông báo lỗi nào
- Người vận hành cần chắc hệ thống chịu được tải trước một buổi workshop/demo
- Trưởng nhóm cần bằng chứng số liệu khi đổi model mà sợ tụt chất lượng
Ví dụ sử dụng
- Tiếp nhận kênh mới: "đo thử gateway này xem dùng được không" → chạy availability để lập danh sách model hỗ trợ, rồi fidelity với
--repeat 10để biết tỉ lệ giao system prompt làintermittent 6/10hay ổn định. - Phiên chat cứ đứt giữa chừng: gặp lỗi 400 "invalid part type: thinking" ở lượt sau → chạy
protocol_probe.py --check history-replay, rồi đối chiếu với endpoint gốc của nhà cung cấp trước khi kết luận. - Kiểm chứng tuyên bố tok/s:
speed_probe.py --mode bothcho ra cả throughput tác vụ thật lẫn trần giải mã bền vững, giúp viết báo cáo trung thực so với con số quảng cáo.
· · · Hướng dẫn cài đặt · · ·
Cài vào ứng dụng Claude (không cần terminal)
- Tải tệp ZIP bằng nút bên dưới.
- Trong Claude, mở Settings → Capabilities và bật 'Code execution and file creation'. (chỉ một lần)
- Vào Customize → Skills → + → 'Upload a skill' rồi tải tệp ZIP lên.
Cài vào Claude Code
Để Claude làm — dán câu dưới đây vào Claude Code
Hãy cài skill mình tìm thấy trên Claude Skill Mart. Copy thư mục llm-eval-harness từ repo GitHub daymade/claude-code-skills vào ~/.claude/skills/llm-eval-harness/ của mình. Sau khi cài xong, cho mình biết skill này làm được gì trong một câu.
Cài bằng lệnh thủ công
git clone https://github.com/daymade/claude-code-skills.git /tmp/claude-code-skills && mkdir -p ~/.claude/skills && cp -r /tmp/claude-code-skills/llm-eval-harness ~/.claude/skills/⚠ Đây là skill do người khác tạo. Hãy kiểm tra repo gốc trước khi cài.
- Mở terminal và clone kho về thư mục tạm:
git clone https://github.com/daymade/claude-code-skills.git /tmp/claude-code-skills - Tạo thư mục skills của Claude Code và sao chép skill này vào:
mkdir -p ~/.claude/skills cp -r /tmp/claude-code-skills/llm-eval-harness ~/.claude/skills/ - Cài
uvđể chạy các script Python (bỏ qua nếu đã có):curl -LsSf https://astral.sh/uv/install.sh | sh - Tạo thư mục dữ liệu riêng, đặt bộ use-case ở ngoài thư mục skill:
mkdir -p ~/.llm-eval cp ~/.claude/skills/llm-eval-harness/assets/example_usecases.json ~/.llm-eval/usecases.json - Khai báo API key bằng biến môi trường, tuyệt đối không gõ giá trị key trực tiếp trên dòng lệnh:
export MY_KEY=sk-... - Khởi động lại Claude Code, sau đó yêu cầu ví dụ: "đo tốc độ và độ ổn định của endpoint này giúp tôi".
- Lần chạy đầu nên giảm số mẫu (
--repeat 3) để ước lượng chi phí token và tránh bị rate limit, rồi mới chạy đầy đủ.
Xem mã nguồn trên GitHub ↗Giấy phép: MIT