# finllm-eval **Repository Path**: mirrors/finllm-eval ## Basic Information - **Project Name**: finllm-eval - **Description**: 金融行业具有高专业、强合规、低容错的核心特性,对金融数据高敏感,对幻觉容忍度低 - **Primary Language**: Python - **License**: BSD-3-Clause - **Default Branch**: main - **Homepage**: https://www.oschina.net/p/finllm-eval - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2026-01-19 - **Last Updated**: 2026-02-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

finLLM-Eval: 针对大模型金融领域逻辑、事实和数据准确性评测方法

--- ## 📕 简介 金融行业具有高专业、强合规、低容错的核心特性,对金融数据高敏感,对幻觉容忍度低。本工程提供大模型金融场景逻辑一致性、事实准确性和金融数据准确性的评测方法。强化了金融场景幻觉评测能力,在行业内首次提出无 GroundTruth 下金融数据准确性的评测方案。 --- ## 📖 功能特色 - 🚀 针对大模型生成:提供金融事实准确性、逻辑一致性的模型幻觉评测能力 - 🚀 针对大模型应用:提供无 GroundTruth 下,基于真实用户问答的大模型应用端到端的金融数据准确性评测能力 - 🚀 Agent As Judger:无需人工标注 --- ## 📝 原理 ✒️ 具体详见:[大模型金融场景逻辑、事实、数据准确性评测](docs/cn/大模型金融场景逻辑、事实、数据准确性评测.pdf) ### 🚀 逻辑一致性&事实准确性 在模型的评测中,使用用户的真实Query和应用层带的RAG内容,做为LLM输入。大模型的回答Output中往往涉及多个金融事实(如分析股价的研报会包含多个金融指标数据),本文称为事实点, 以及基于事实的逻辑分析推论,本文称为逻辑链。 评测Agent将结合RAG和Answer,从模型回答中,提取全部事实点和全部逻辑链。针对每个事实点,逐一核查事实点与RAG的符合性。 针对每条逻辑链,提取论点和论据,进行逻辑链条一致性核查。初判结果经LLM二次复核后输出。 如下图:


### 🚀 金融数据准确性 模型生成的回答往往涉及多个标的、不同时间范围及多项金融指标,我们从中提取出一组结构化的“事实三要素”清单(标的、时间和指标)。在提取出相关金融数据后,我们借助内部构建的大规模、经过验证的金融数据库及配套的 MCP 调用工具链,对常见金融指标进行查询与比对。 如下图:


--- ## 🛠 使用方法 本工程仅支持逻辑一致性和事实准确性评测,端到端金融数据准确性评测涉及内部金融数据库,暂不支持。 ### 1.安装 本工程需要python版本>=3.6.8,下载本工程: ``` git clone {本工程url} ``` 安装依赖: ``` pip install -r requirements.txt ``` ### 2.准备评测集 使用用本文的[评测集](dataset/fin.jsonl)或自备评测集提前通过被测模型拉取答案,参照[data.xlsx](data.xlsx)格式准备输入excel文件。 格式如下: | model | query | prompt | answer | |--- |--- |--- |--- | | openai-gpt-5-response | 2022~2024年每年,GDP | 【相关资讯】:来源序号:1标题:解读中国经济“答卷”,2023年中国经济回升向好...... | 以下为中国2022—2024年GDP(现价总量)...... | 说明: ``` - model:模型名称 - query: 评测问题 - prompt: RAG内容 - answer: 模型回答 ``` ### 3.配置评判AI接口 配置config/config.py,填入用来评判的AI接口: ```python llm_config = { "model_url": "{评判AI的接口url}", "access_token": "{评判AI的token}", } ``` 在llm/llm.py里修改请求和响应格式: ```python ... headers = { "Content-Type": "application/json", "Authorization": "Bearer " + {评判AI的api token} } ... # 请求格式,按需修改 payload = { "contents": [ { "role": "user", "parts": [ { "text": user_prompt } ] } ] } ... ``` ### 4.评测 执行: ```bash python eval_main.py data.xlsx ``` ### 5.输出结果 结果会保存在“***事实逻辑评测结果-{model}.xlsx***”,输出汇总格式示例: |总得分题数|事实得分题数|逻辑得分题数|答案总长度|总错误点数|事实错误点数|逻辑错误点数|千字幻觉率|评分|评测日期| |----|----|----|----|----|----|----|----|----|----| |74|151|122|383441|517|230|287|1.35|26.62|2025/10/11| --- ## 📎 引用 如果您觉得本工程对您的研究有用,欢迎按以下方式进行引用: ``` @misc{finLLM-Eval author={Lichang Liang and Shaohui Wu and Yunlong Zhang and Yeyang Tang and Fanyang Lu}, title={finLLM-Eval: 针对大模型金融领域逻辑、事实和数据准确性评测方法}, howpublished={\url{https://www.github.com/Tencent/finLLM-Eval}}, year={2025}, } ``` --- ## 🤝 贡献指南 我们欢迎来自学术界、工业界及社区的开发者共同参与项目建设。欢迎通过Star、Fork、Issue、Pull Request 参与数据扩展与评测改进,共同推动项目迭代与完善,促进大模型在AI金融领域的产业落地与学术研究。 ### 共建方向 - 评测策略优化:共创金融场景下准确性评测策略 - 讨论与建议: 欢迎任何形式的参与与支持,包括提出改进建议、分享最佳实践或参与社区讨论。