gsiam/review-sentiment-eval
GitHub: gsiam/review-sentiment-eval
基于LLM的客户评论情感分析评估套件,用于检测模型忠实性和鲁棒性。
Stars: 0 | Forks: 0
# 基于LLM的客户评论分析评估套件
一个用于基于LLM的评论分析系统的评估套件,该系统从客户评论中提取结构化信号,用于下游路由和分类。这个套件询问:*提取的信号是否可信,模型是否可以被操纵以产生错误的信号?*
## 测试的系统
一个每天处理数百条评论的卖家需要一种理解客户大规模说法的方法,以便他们可以将评论路由到正确的团队并及时回应客户。从这些评论中提取结构化信号对于这种理解可能是关键。
该系统从每条评论中提取三个字段:
- `overall_sentiment` — 顾客的底线判断(`positive`、`negative`或`neutral`);这用于路由评论:积极的到聚合,消极的到分类
- `contains_conflicting_signals` — 评论是否包含积极和消极方面;与`overall_sentiment`结合,决定了投诉的优先级和处理方式:
- `negative` + 相冲突:*"产品很棒,运输很糟糕"* — 不满集中在某个区域,通常是一个有针对性的修复
- `positive` + 相冲突:*"喜欢这个产品,但设置很烦人"* — 综合情绪看起来仍然健康,但摩擦正在积累
- `neutral` + 相冲突:在实践中不出现 — 一个处于中间位置的评论往往不包含使冲突标志有意义的混合方面结构
- `summary` — 一个简短的忠实摘要,让处理代理一眼就能看到投诉的核心,而无需阅读完整的评论文本
### 如果信号是错误的怎么办?
如果这些信号是错误的,后果出现在两个层面:
**对于处理代理:** 错误的路由将评论发送到错误的团队;误读的冲突标志触发了错误的响应;不忠实的摘要针对错误的投诉,所以客户感到被忽视,问题仍未解决。
**对于组织:** 系统性错误看起来像是正常操作。驱动产品决策、支持人员配备和质量控制的数据默默下降,组织失去了对客户实际说什么的视线。
## 架构概述
通过 Ollama 进行本地推理。
pytest -m integration --summarizer-model ollama/llama3.2 --judge-model ollama/mistral
pytest -m integration --summarizer-model ollama/llama3.2 --judge-model claude-sonnet-4-6
```
## 依赖项
- `anthropic` — 异步Anthropic客户端(由Ragas裁判使用)
- `langchain-anthropic` — Claude API集成(由摘要器使用)
- `ragas` — 幻觉检测的忠实性指标
- `pytest` — 测试框架
Fig. 1. Evaluation pipeline: the Summarizer (system under test) feeds faithfulness and injection robustness checks
Fig. 2. Adaptive baseline: clean-text and adversarial runs are compared; a flip occurs when the injected run diverges
标签:请求拦截, 逆向工具