当前位置: 首页 > ai >正文

Datawhale AI夏令营 第三期 task2 稍微改进

在打造基于大语言模型(LLM)+文档检索的问答系统中,财经研报类文档是最具挑战的场景之一。它包含图文混排、精细定位需求(页码、文件名)、问题措辞高度多样化等一系列复杂性。
下面的内容是大模型辅助整理的:
本项目围绕一个目标:给定一个用户问题,从数百份PDF财经报告中找出相关信息并生成准确答案,并给出其出处(文件名和页码),通过逐步优化 chunk 策略、向量检索和 LLM 提示工程

在train数据集上的得分为0.663,测试集目前为0.29679(排名第三)

更新:加入了文档来源的大模型输出和元数据的比对,切换大模型为Qwen3-32B,目前分数:0.36493(排名第一)

在这里插入图片描述

评分标准分三部分,总分 1:

维度 权重 说明
文件名匹配度 0.25 答案中的文件名是否与参考答案一致
页码匹配度 0.25 答案中页码是否准确
答案内容相似度 0.5 使用字符级 Jaccard 相似度度量回答文本差异

🏁 初始方案:页面粒度chunk(Baseline)
做法:
每一页作为一个chunk

用FAISS构建向量索引

每次检索返回最相似的几页

问题:
粒度太大,LLM难以定位具体内容

过度信息干扰答案质量

无法定位到确切页码和文件名

📉 得分:0.002

🔧 改进一:递归Chunk + 直接向量检索
每页文本递归分块

每个chunk保留其来源元数据 {filename, page_number}

用文本嵌入直接构建向量索引

📈 得分显著提升

🧩 页码匹配精度优化
一个核心挑战是:如何让LLM生成答案时,引用准确的页码?

采取的策略:

从文档解析阶段开始,全程保留元数据:
每一段文本、每张图片都保留 {filename, page_number}

在提示中引导 LLM 输出来源信息

请用如下格式回答:
{“answer”: “…”, “filename”: “…”, “page”: …}
🔁 检索优化策略
多路召回:
双路召回:将检索向量划分为两种策略:全文语义 vs. 精准短句(如问句特征)

重排(Re-ranking)策略:
采用 RRF(Reciprocal Rank Fusion):

多路召回的结果融合排序

提高相关 chunk 的综合得分,提升命中率

🔍 LLM输出页码不准的问题
即使检索相关 chunk 的元数据正确,LLM有时也会:

忽略页码

捏造页码或文件名

输出格式错误(影响JSON解析)

解决:
构建严格提示模板,限制输出格式

增加后处理逻辑,验证输出格式合法性,出错回退使用 chunk 元数据

引入 _safe_parse() 工具,对返回结果进行强健解析

🧱 持续挑战

  1. 格式输出不稳定
    LLM容易输出错 JSON,或 hallucinate 来源信息
    强化提示模板
    后处理校验修复

  2. 问题表达方式高度自由
    用户问法与文档表达方式差距大

优化嵌入模型选择(支持中文财经语料)

其实分数还可以再高,因为现在的文件名是提取的大模型的回答,只用8B的大模型,会有很多错误,比如本来正确的名字输出为繁体,或者汉字输出为字母等,所以这个地方需要大模型+元数据同时判断,还没有用mineru或者其他的文档结构化转换工具,现在分块方法还是太朴素了,也还没用引入多模态(表格解析和图像解析)

http://www.xdnf.cn/news/17080.html

相关文章:

  • MyBatis实现SQL
  • Python日志记录库——logaid
  • Centos-Stream 10 安装教程(2025版图文教程)
  • ASP3605I同步降压调节器的高频化设计与多相扩展技术优化方案
  • Python 函数详解
  • 重生之我在暑假学习微服务第十天《网关篇》
  • 微软Dragon Ambient eXperience (DAX) 深度解析
  • 《UE教程》第一章第六回——迁移独立项目(资源)
  • 【学习嵌入式day-17-数据结构-单向链表/双向链表】
  • 【计算机网络】6应用层
  • 深度学习·基础知识
  • selenium自动化收集资料
  • 从汇编角度揭秘C++构造函数(1)
  • 【深度学习新浪潮】混元3D是什么产品?
  • 2025《艾诺提亚失落之歌》逆向工程解包尝试
  • 【模电笔记】—— 直流稳压电源——整流、滤波电路
  • 二叉树——堆及其实现
  • 防御保护07-08
  • 三种灰狼算法求解无人机三维路径规划【MATLAB实现】
  • Android AppSearch 深度解析:现代应用搜索架构与实践
  • 论文阅读笔记:《Curriculum Coarse-to-Fine Selection for High-IPC Dataset Distillation》
  • 《算法导论》第 4 章 - 分治策略
  • uniapp云打包打包安卓app失败,显示:本地安装包生成失败,请重试或者切换到非安心打包模式进行打包
  • 第十七天:原码、反码、补码与位运算
  • 【渲染流水线】主线索引-从数据到图像以UnityURP为例
  • Kafka 的基本操作(1)
  • Go语言实战案例:使用sync.Mutex实现资源加锁
  • 解决docker load加载tar镜像报json no such file or directory的错误
  • 安科瑞智慧能源管理系统在啤酒厂5MW分布式光伏防逆流控制实践
  • Redis协议数据迁移方式