bilgekayali/finsec-llm-eval
GitHub: bilgekayali/finsec-llm-eval
一个面向金融服务场景的开放基准测试,用于评估大语言模型和 AI agent 的安全性、可靠性和控制行为。
Stars: 1 | Forks: 0
# FinSec-LLM-Eval
[](https://github.com/bilgekayali/finsec-llm-eval/actions/workflows/ci.yml)
[](https://www.python.org/)
[](docs/TECHNICAL_REPORT_v0.2.md)
[](LICENSE)
[](DATA_LICENSE.md)
FinSec-LLM-Eval 是一个开放基准测试,用于测试金融服务中使用的大语言模型和 AI agent 的安全性、可靠性和控制行为。
版本 0.2 是一个**发布候选版本**,包含 60 个合成英语和土耳其语案例、真实的远程/本地模型适配器、可复现的比较报告,以及准备好推送的 Hugging Face 数据集和 Space 包。
## 涵盖范围
| 代码 | 风险领域 | 核心控制问题 |
|---|---|---|
| PI | Prompt injection | 当检索到的内容包含恶意意图时,系统是否会保留受信任的指令? |
| SD | 敏感数据 | 它是否能防止泄露受限的客户、交易和凭证数据? |
| TU | 工具授权 | 它是否会在没有经过验证的权限和批准的情况下拒绝产生副作用? |
| FR | 财务和监管真实性 | 它是否能避免捏造或夸大高风险的规则和事实? |
| HE | 人工介入 | 它是否会停止执行并移交后果严重或模棱两可的决策? |
| CC | 引用和置信度校准 | 其确定性是否与可用证据保持比例关系? |
v0.2 候选版本在设计上是平衡的:
| 维度 | 分布 |
|---|---|
| 案例 | 60 |
| 语言 | 30 个英语,30 个土耳其语 |
| 分类 | 每个分类 10 个 |
| 模式 | 32 个 RAG,18 个 agent,10 个聊天 |
| 严重性 | 34 个严重,22 个高,4 个中 |
| 审查 | 12 个已批准,48 个草稿 |
所有姓名、账户、交易、策略、文档和 canaries 均为虚构。不包含任何生产数据或实时金融工具。
## 评估流程
```
flowchart LR
A["Versioned JSONL"] --> B["Schema + invariant checks"]
B --> C["Remote, local, or recorded adapter"]
C --> D["Deterministic evidence"]
D --> E["Human review where required"]
E --> F["JSON + Markdown comparison"]
```
严重的确定性失败不能被语义分数覆盖。
不支持的功能会被报告为 `not_applicable`,语义案例在被裁定之前将保持 `needs_review` 状态。
## 快速开始
```
git clone https://github.com/bilgekayali/finsec-llm-eval.git
cd finsec-llm-eval
python3 -m venv .venv
source .venv/bin/activate
python -m pip install -e .
```
在 Windows PowerShell 上:
```
.venv\Scripts\Activate.ps1
```
验证 60 个案例的发布候选版本:
```
finsec-eval validate --dataset datasets/v0.2/cases.jsonl
```
更严格的命令会特意报告人工审查尚未完成:
```
finsec-eval validate \
--dataset datasets/v0.2/cases.jsonl \
--release-ready
```
运行确定性控制比较:
```
finsec-eval compare \
--dataset datasets/v0.2/cases.jsonl \
--config configs/comparison.mock.json \
--output-dir reports/latest
```
运行测试:
```
python -m unittest discover -s tests -v
```
## 模型适配器
运行器支持:
- 通过官方 Python SDK 调用 OpenAI Responses API;
- 兼容 OpenAI 的 Chat Completions 端点,例如受控的本地 vLLM 或 Ollama 服务;
- 本地 Hugging Face Transformers 文本生成 pipeline;
- 用于审计和确定性重放的已记录 JSONL 响应;
- 故意设计的安全和不安全 mock,用于测试基准测试本身。
适配器仅记录提议的工具调用。它们从不执行付款、交易、客户数据导出、发布操作或任何其他具有副作用的操作。
仅需安装您需要的依赖:
```
python -m pip install -e ".[openai]"
python -m pip install -e ".[local]"
python -m pip install -e ".[demo]"
```
实时凭证仅从指定的环境变量中读取,且绝不会写入报告中。请参阅[实时模型运行指南](docs/LIVE_MODEL_GUIDE.md)以及 [`configs/`](configs/) 下的无需凭证示例。
## 当前参考结果
这些控制验证了评分 pipeline;它们不是真实模型。
| 适配器 | 通过 | 需要审查 | 失败 | 严重失败率 |
|---|---:|---:|---:|---:|
| `mock:safe` | 30 | 30 | 0 | 0% |
| `mock:leaky` | 0 | 0 | 60 | 100% |
安全控制留下 30 个语义案例未解决。泄漏控制导致所有 60 个案例失败,这表明严重的泄漏和未经授权的工具提议不会被平均值所掩盖。请参阅[结果与解读](docs/RESULTS.md)。
## Hugging Face 包
该仓库包含两个独立的、准备好推送的目录:
- [`huggingface/dataset/`](huggingface/dataset/) — 数据集卡片和准备好用于查看器的 JSONL;
- [`huggingface/space/`](huggingface/space/) — Gradio 案例浏览器和粘贴响应评分器。
该 Space 不会调用模型 API、接受凭证或执行工具。
发布这些目录需要维护者的 Hugging Face 账户;在该外部步骤成功完成之前,不声称拥有任何托管 URL。
## 文档
- [技术报告 v0.2](docs/TECHNICAL_REPORT_v0.2.md)
- [数据集卡片](docs/DATASET_CARD.md)
- [实时模型运行指南](docs/LIVE_MODEL_GUIDE.md)
- [人工审查指南](docs/HUMAN_REVIEW_GUIDE.md)
- [v0.2 审查工作表](docs/REVIEW_WORKSHEET_v0.2.md)
- [威胁模型和基准测试规范](BENCHMARK_SPEC.md)
- [LinkedIn 发布草稿](docs/LINKEDIN_POST.md)
- [Medium 文章草稿](docs/MEDIUM_ARTICLE_DRAFT.md)
- [演示视频脚本](docs/VIDEO_SCRIPT.md)
## 仓库结构
```
configs/ Credential-free comparison configurations
datasets/v0.1/ Approved 12-case seed set
datasets/v0.2/ 60-case release candidate
docs/ Methodology, review, results, and launch material
huggingface/dataset/ Dataset Hub package
huggingface/space/ Self-contained Gradio Space
reports/ Reproducible control reports
scripts/ Dataset build tooling
src/finsec_eval/ Adapters, runner, scoring, and reporting
tests/ Standard-library automated tests
```
## 发布门控
公开的模型比较需要满足以下所有条件:
- 对 48 个新案例进行人工审查;
- 双语和领域校准;
- 包含不可变模型/配置元数据的完整实时运行;
- 对每个 `needs_review`、失败、错误和严重结果进行人工裁定;
- 对严重失败和有争议的决策进行独立的二次审查;
- 对确定性通过案例进行分层审计;
- 披露局限性和利益冲突。
在这些门控完成之前,模型结果表必须保持私有,或者明确标记为未审查的实验性输出。
## 引用和许可证
使用 [CITATION.cff](CITATION.cff) 来引用本软件。
- 源代码和文档:[Apache License 2.0](LICENSE)
- 原始基准测试数据:[CC BY 4.0](DATA_LICENSE.md)
由 **Bilge Kayalı** 创建和维护。
标签:AI安全, AI风险缓解, Chat Copilot, DLL 劫持, 人工智能, 大语言模型, 用户模式Hook绕过, 红队评估, 逆向工具, 金融科技, 零日漏洞检测