# knowledges **Repository Path**: cxy_gitee_123456/knowledges ## Basic Information - **Project Name**: knowledges - **Description**: 构建一个油藏、采油工艺、井下作业有关的知网论文数据库 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-15 - **Last Updated**: 2025-11-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## !!!使用前需注意 在已有分支上建立新分支参与贡献 ## 文件夹构成 ai/ ai 工具库,包含: - embed 嵌入函数 - llm 大模型调用 - parse mineru 批量 pdf 数据解析获取切块 - rec 图片识别 > collect/ 基于“摘要+关键词”与“油藏”关键词的相似度筛选的有关知识文件 > tmp/ mineru 批量数据获取切块存放 > spider.py 爬虫 > ocr_result.json mineru 解析文件记录(执行前可删除) > split/ - error_files.txt 阅读器读取错误文件,需二次筛选 - relevant_files.txt 基于“摘要+关键词”与“油藏”关键词的相似度筛选的有关知识文件记录 python>=3.12 ## 整体技术路线 数据获取=>数据预处理=>mineru 解析分块=>向量嵌入与检索=>页面 demo(maybe 遥遥无期) 展开来说: ### 数据获取 selenium 模拟进行数据下载 代码已完成,数据下载进度: - 油藏:1313+1042/2000 - 开采工艺:644+562/1000 - 井下作业:60/1000 ### 数据预处理 筛选出有关论文 pdf - 油藏:1042/1000 √ - 开采工艺:562/500 √ - 井下作业:0/500 ### mineru 解析分块 已写好代码,需要注意的是建议一次性 50 个文件以内,并且单个文件不超过 20M ### 向量嵌入与检索 已准备好代码,考虑使用 milvus 还是简易 json ### 页面 demo 任重道远 ## TODO ### 目前存在两个问题尚待解决 1. 如何评估基于 RAG 技术生成结果的准确性? 这又涉及到问题的复杂性,对某个方向的研究会涉及多个文件,对某个具体问题或许只需要一个。 知识库问答应该覆盖这些问题 让人类专家或是基于工作流的 AI 专家来提出这些问题,这些问题需要覆盖知识库,才能确定检索效果 2. 论文的引用文献是否作为可被用于检索的块? 可能没必要,而且反而可能影响检索效果。需要在代码中解决 ### 爬取时论文名称对比方案 爬取到的pdf已有大量重复了,90/130,油藏论文数据是否假饱和 制作已有论文名称数组,如果论文名不在数组才爬取,否则跳过(基于已有足够多的数据) ### 可行的检验方向 利用 RAG 领域的三篇论文完成知识库的构建,凭借论文提出问题来搜索 ## other 爬虫上还有一个问题,即一直存在的滑动验证,这个页面可以用seleuim模拟拖动进行验证,假设可以实现,那么能不能在随机一段时间执行一次验证,这样就可以避免接下来爬虫程序可能遇到的验证 验证页面链接举例 * 第一个时间段的验证码链接 https://bar.cnki.net/bar/dist/index.html?platform=nxgp&returnUrl=https%3A%2F%2Fbar.cnki.net%2Fbar%2Fdownload%2Forder%3Fid%3DPmp%252F5es3RB81cmauPwpbvsPMJcfwHgIZAnUyOJG6KdpcFthR2AfRFJJL4BBrDlb934fP7wMMKVNry6%252BQLSsEKAngEXMbilQsXeX%252BL8VeSZd7b5mY%252FmsIpB5E%252FKF94iQVwddxEU3rL3oTHoiWc6PitFK57xT%252B8LhM%252BfEqYWvBGm0igmLMld3nSvbU4a5%252BOkNaUlSU0HSLnl9m7MwOtW%252FIk%252FNju5pSYEjJtX%252FmhMN3wwRlgv7q8C%252BP7FPVW3hwYPcq4VRMY0JBbjbLmfwjvao1dw%253D%253D%26source%3D%26isMobile%3Dfalse%26rb%3DEveryNTimes%26showpage%3D1&lang=zh-CN&ip=x.x.x.x&errorcode=3 > 不同的部分 > 252FNju5pSYEjJtX%252FmhMN3wwRlgv7q8C > 252B9YtF9XCkTEePfdL4nBsLtlgv7q8C * 第二个时间的验证码链接 https://bar.cnki.net/bar/dist/index.html?platform=nxgp&returnUrl=https%3A%2F%2Fbar.cnki.net%2Fbar%2Fdownload%2Forder%3Fid%3DPmp%252F5es3RB81cmauPwpbvsPMJcfwHgIZAnUyOJG6KdpcFthR2AfRFJJL4BBrDlb94er%252Bp4eBaePzUo0GFFMeQmuWrB7XINmQbcCGMMJyr7Z7b5mY%252FmsIpB5E%252FKF94iQVwddxEU3rL3oTHoiWc6PitFK57xT%252B8LhM%252BfEqYWvBGm0igmLMld3nSvbU4a5%252BOkNaUlSU0HSLnl9m7MwOtW%252FIk%252B9YtF9XCkTEePfdL4nBsLtlgv7q8C%252BP7FPVW3hwYPcq4VRMY0JBbjbLmfwjvao1dw%253D%253D%26source%3D%26isMobile%3Dfalse%26rb%3DEveryNTimes%26showpage%3D1&lang=zh-CN&ip=x.x.x.x&errorcode=3