Leapfrog-LSA/CATS-Contextual-Ambiguity-Trust-Scoring
GitHub: Leapfrog-LSA/CATS-Contextual-Ambiguity-Trust-Scoring
一个面向开源情报来源的信任评分系统,通过分析行为模式而非内容真伪来评估来源可靠性。
Stars: 0 | Forks: 0
# CATS — 上下文歧义与信任评分
[](https://github.com/Leapfrog-LSA/CATS-Contextual-Ambiguity-Trust-Scoring/actions)
[](https://codecov.io/gh/Leapfrog-LSA/CATS-Contextual-Ambiguity-Trust-Scoring)
[](https://www.python.org/)
[](LICENSE)
[](docs/compliance.md)
[](docs/compliance.md)
## 什么是 CATS?
| ❌ 事实核查 | ✅ CATS |
|---|---|
| “这条信息是真的吗?” | **“在这个上下文中,这个来源目前有多可靠?”** |
CATS 分析来源随时间变化的*行为模式*——叙事一致性、情绪波动性、时间间隔以及算法操纵迹象——并返回一个透明、可解释的信任分数。
## 信号
| 信号 | 测量内容 | 方法 |
|---|---|---|
| **Coherence(一致性)** | 消息间的实体/论点一致性 | spaCy NER + Jaccard 相似度 |
| **Volatility(波动性)** | 叙事语调的突变 | TextBlob 情绪峰值检测 |
| **Silence(静默)** | 发布时间上的异常间隔 | 间隔分析 vs. 来源类型阈值 |
| **Gaming(博弈)** | 算法操纵迹象 | 重复度 + TTR + 突发度 + 词汇多样性 |
## 快速开始
```
# 克隆并配置
git clone https://github.com/Leapfrog-LSA/CATS-Contextual-Ambiguity-Trust-Scoring.git && cd CATS-Contextual-Ambiguity-Trust-Scoring
cp .env.example .env # fill in secrets (see .env.example)
# 安装
make dev-install # deps + pre-commit hooks
make nlp-download # spaCy it_core_news_lg + TextBlob corpora
# 启动服务并运行
make docker-up # PostgreSQL 16 + Redis 7
make db-migrate # Alembic migrations
uvicorn cats.api.main:app --reload
# 测试
make test
```
## API 示例
```
curl -s -X POST http://localhost:8000/v1/cats/evaluate \
-H "Authorization: Bearer $CATS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"source_id": "twitter:example_handle",
"messages": [
{"timestamp": "2026-01-01T08:00:00Z", "text": "Governo annuncia piano economico."},
{"timestamp": "2026-01-01T09:00:00Z", "text": "Protesta dei lavoratori in piazza."},
{"timestamp": "2026-01-01T10:00:00Z", "text": "Parlamento discute la legge di bilancio."}
],
"context": {"source_type": "social"}
}' | jq
```
```
{
"trace_id": "550e8400-e29b-41d4-a716-446655440000",
"score": 68.4,
"band": "medium_high",
"requires_review": false,
"signals": [
{"name": "coherence", "value": 71.2, "confidence": 0.3},
{"name": "volatility", "value": 55.0, "confidence": 0.15},
{"name": "silence", "value": 0.0, "confidence": 0.1},
{"name": "gaming", "value": 12.8, "confidence": 0.06}
]
}
```
## 信任分数段
| 分数 | 等级 | 建议操作 |
|---|---|---|
| 80–100 | `high` | 可用于 OSINT |
| 60–79 | `medium_high` | 交叉验证关键主张 |
| 40–59 | `medium` | 建议人工审查 |
| 20–39 | `low` | 需要人工审查 |
| 0–19 | `very_low` | 未经验证不可使用 |
## 架构
```
Client (HTTPS + Bearer token)
│
nginx (TLS 1.3 · rate 30 req/min)
│
FastAPI — 9-phase pipeline
├─ POST /v1/cats/evaluate
├─ GET /v1/cats/explain/{trace_id} ← GDPR Art.14/22
├─ POST /v1/cats/contest/{trace_id} ← GDPR Art.22
├─ GET /v1/cats/stats
└─ GET /health /metrics
│ │
Redis 7 PostgreSQL 16
(rate limiting) (AES-256 audit log)
+ APScheduler purge
```
有关完整的信号和安全详细信息,请参阅 [docs/architecture.md](docs/architecture.md)。
## 文档
| 文档 | 描述 |
|---|---|
| [docs/api.md](docs/api.md) | 完整 API 参考 |
| [docs/architecture.md](docs/architecture.md) | 信号算法、权重矩阵、安全设计 |
| [docs/compliance.md](docs/compliance.md) | GDPR + 欧盟 AI 法案合规性 |
| [CHANGELOG.md](CHANGELOG.md) | 版本历史 |
| [CONTRIBUTING.md](CONTRIBUTING.md) | 开发指南 |
| [SECURITY.md](SECURITY.md) | 漏洞报告 |
## 已知限制 (WP 4.1)
- **NLP 准确率约 55–62%**:spaCy NER 和 TextBlob 是基础实现
- **参数未校准**:所有阈值均为初始估算值,未在标记数据上进行验证
- **针对意大利语优化**:使用 `it_core_news_lg`;其他语言会降低准确率
- **仅限序数评分**:不适合作为自主决策的唯一依据
## 路线图
| 版本 | 目标时间 | 关键功能 |
|---|---|---|
| **v1.0** | ✅ 现在 | spaCy NER · 9 阶段流水线 · GDPR API · Docker |
| v1.1 | 2026 年 Q2 | BERT 意大利语情绪 · 多租户 PostgreSQL · 批量端点 |
| v1.2 | 2026 年 Q3 | Sentence-BERT 一致性 · SHAP 解释器 |
| v2.0 | 2027 | AUC-ROC ≥ 0.78 · 完整欧盟 AI 法案 Annex IX 合规 |
## 许可证
[MIT](LICENSE) — technical@cats-system.org
标签:ESC4, EU AI Act, GDPR合规, NER, NLP, OSINT, Python, spaCy, 信任评分, 信息真实性, 反取证, 可信度分析, 可解释性, 威胁情报, 安全评估, 实体识别, 开发者工具, 情感分析, 情绪波动检测, 搜索引擎查询, 数据合规, 文本相似度, 无后门, 欧盟人工智能法案, 测试用例, 算法操纵检测, 背景消歧, 舆情分析, 虚假信息检测, 请求拦截, 逆向工具, 透明度