Skip to content

telagod/llm-probe

Repository files navigation

LLM Probe

LLM Probe Logo

LLM API 端点真伪检测 · 协议合规验证 · 注入抗性评估 · 多维信任评分

功能 · 快速开始 · Web 控制台 · 测试套件 · 信任评分 · Roadmap


这是什么?

LLM Probe 是一个开源的 LLM API 端点检测框架。当你使用第三方 API 代理、镜像站或自建网关时,你如何确认背后跑的真的是你付费的那个模型?

LLM Probe 通过协议指纹、行为探针、推理能力评估、注入抗性测试等多维度检测,生成一个量化的信任评分,帮你识别:

  • 🎭 模型替换 — 用便宜模型冒充贵模型
  • 🔀 协议篡改 — 修改/丢弃 API 参数、缓存、工具调用
  • 💉 注入风险 — 中间层注入系统提示、泄露内部信息
  • 📉 能力降级 — 推理能力、一致性低于官方基线

功能

维度 检测内容
协议合规 Messages API 参数覆盖、缓存读写、工具调用链路、SSE 流式事件序列
真伪识别 协议指纹防伪、模型 ID 校验、隐藏工具注入探针、一致性漂移检测
注入抗性 直接覆盖攻击、间接 tool-result 注入、allowlist 逃逸、信息泄漏探针
推理评估 多领域题库(医学/法律/金融/安全/架构/SRE)、语义等价判分、外部 benchmark 导入
边界探测 长文本 needle-in-haystack、payload 体积二分逼近
趋势分析 跨时间 baseline 回归漂移告警、P95/slope/change-point 趋势
信任评分 加权多维度评分 + Hard-Gate 安全门控,一票否决机制

快速开始

CLI 探针

# 构建
go build ./cmd/claude-probe

# 运行(当前支持 Anthropic Messages API 兼容端点)
export CLAUDE_BASE_URL="https://your-api-endpoint.com"
export CLAUDE_API_KEY="your_key"
export CLAUDE_MODEL="claude-sonnet-4-5-20250929"

go run ./cmd/claude-probe -suite all

指定套件:

go run ./cmd/claude-probe -suite stream,error,authenticity,injection

输出 JSON 报告:

go run ./cmd/claude-probe -suite all -format json -out report.json

Web 控制台

# 1. 启动 API 服务
cp ./configs/server.example.yaml ./configs/server.local.yaml
# 编辑 server.local.yaml:填入 key 池配置
go run ./cmd/probe-api -config ./configs/server.local.yaml

# 2. 启动前端
cd web && npm install && npm run dev
  • 免登录快检:http://localhost:5173/user
  • 管理后台:http://localhost:5173/admin(需 OIDC 登录)

架构

┌─────────────────────────────────────────────────────┐
│                    Web 控制台                         │
│  ┌──────────────┐  ┌──────────────────────────────┐  │
│  │  用户快检 UI  │  │       管理后台 (OIDC)        │  │
│  └──────┬───────┘  └──────────────┬───────────────┘  │
│         │                         │                   │
│         └────────────┬────────────┘                   │
│                      ▼                                │
│              API Server (Go)                          │
│    ┌─────────────────────────────────┐                │
│    │ Router · Auth · Budget · Store  │                │
│    │ Run Queue · SSE · OTel Tracing  │                │
│    └──────────────┬──────────────────┘                │
│                   ▼                                   │
│           Probe Engine (Go)                           │
│    ┌─────────────────────────────────┐                │
│    │  Runner · Suites · Scoring      │                │
│    │  Forensics · Regression         │                │
│    └──────────────┬──────────────────┘                │
│                   ▼                                   │
│          Target LLM API Endpoint                      │
└─────────────────────────────────────────────────────┘

测试套件

套件 说明 成本
params Messages API 参数覆盖验证
cache Prompt Caching 读写 + 前缀变异
tools 多工具多轮 tool_use/tool_result 链路
toolchoice tool_choice 语义一致性
stream SSE 事件序列与结构验证
error 错误语义与 envelope 契约
authenticity 协议指纹防伪 + 隐藏工具探针
reasoning 多领域推理题库 + 语义等价判分
injection 直接/间接注入 + allowlist 逃逸
needle 长文本 needle-in-haystack
block Payload 体积二分边界探测
regression 跨时间 baseline 漂移告警
timeline P95/slope/change-point 趋势

信任评分

LLM Probe 生成一个 0-100 的信任评分,由两层机制组成:

加权评分:各维度按权重汇总(authenticity 30%、injection 25%、tools 15%、toolchoice 10%、stream 10%、error 10%)

Hard-Gate 一票否决:以下信号命中任一项,直接判定 fail,无视加权分:

  • Spoof risk score > 70
  • Injection leak count > 0
  • 隐藏工具信号检出
  • 未知工具调用检出
  • 一致性漂移超阈值
Trust Score: 87.3 / 100  ✓ PASS
Hard-Gate:   0 hits      ✓ CLEAR
Decision:    TRUSTED

可观测性

cd deploy/otel && docker compose up -d
# Jaeger UI: http://localhost:16686

所有 probe 执行自动上报 OpenTelemetry traces。

API 接口

方法 路径 说明 认证
POST /api/v1/admin/runs 创建测试任务 OIDC
GET /api/v1/admin/runs/{id} 任务详情 OIDC
GET /api/v1/admin/runs/{id}/events SSE 事件流 OIDC
GET /api/v1/admin/metrics/overview 概览指标 OIDC
POST /api/v1/user/quick-test 免登录快检 限流
GET /api/v1/user/quick-test/{id} 快检结果(脱敏) 限流

安全设计

  • 前端零接触 API Key — 所有模型调用在服务端执行
  • Key 池限额 — 支持 daily_limit_usd / RPM / TPM
  • 审计日志 — 每次 run 记录 key_usage、风险快照
  • Injection 探针使用随机 sentinel — 不会输出真实密钥

开发

# 后端测试
go test ./...

# 前端开发
cd web && npm run dev

# 前端构建
cd web && npm run build

# 冒烟测试
./scripts/smoke_api.sh

License

MIT


Built for trust. Because you deserve to know what's behind the API.

About

Claude API Endpoint Probe — 检测真伪、验证协议、评估注入抗性、生成多维信任评分

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors