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

一款计算机顶会爬取解析系统 paper info

一款计算机顶会爬取解析系统 paper info

    • 背景
    • 项目实现的功能
  • 技术方案
    • 架构设计
    • 项目使用的技术选型
  • 使用方法
    • 本地项目部署
    • 使用ChatGPT等大模型
      • 创建一个ChatGPT助手
      • 使用阿里云
    • 顶会数据量
  • 百度网盘
    • pfd文件
    • json文件
  • Q&A

github链接 :https://github.com/codebricking/paper-info
paper info 可以爬取顶会或者arxiv论文,并且利用ChatGPT对论文的关键信息进行理解,然后利用es进行检索,实现用中文检索英文论文,并快速了解论文核心内容。

当然,对于不从事开发工作的用户来说,部署这个项目,会有一点繁琐,本项目提供了爬取的顶会论文,以及解析的文本信息,用户可以将其直接上传至ChatGPT或者国内的大模型的语料库中,也可以实现和论文直接对话的功能。

背景

AI计算机领域很多新的成果都是通过论文的形式发出来的,高效的检索,下载和了解论文核心内容对于科研十分重要。在计算机领域,尤其是顶会论文。本人在读研初期,没有及时关注最新的高水平论文,阅读了一些质量不算高或者是方法不够新的论文,浪费了不少时间。随着研究的主键深入,对于在哪里寻找高水平论文才有了进一步的了解。因此,在周末空余实现,根据之遇到的问题,写了这样一个工具。

项目实现的功能

  1. 使用Jsoup抓取顶会论文和arxiv的论文关键信息。
  2. 批量下载论文到本地
  3. 使用XEasyPdf解析pdf为纯文本,方便后续处理
  4. 调用ChatGPT梳理论文关键信息
  5. 使用xxl-job定时任务功能,结合Jsoup检测arxiv最新的论文,紧跟研究方向前沿
  6. 使用xxl-job定时定频率地调用api接口,以免频率过高导致调用失败
  7. 使用es进行查询,让用户可以直接在众多论文中进行关键词查找,提高了检索速度
  8. 封装了调用ChatGPT的接口
  9. 封装了调用Google翻译的借口
  10. 封装了ChatGPT和Google代理,需要部署在国外服务器上

技术方案

架构设计

请添加图片描述

项目使用的技术选型

Java8

MySQL8

mybatis-plus

springboot 2.7

elastic search

xxl-job

Jsoup

knife4j

hutool

使用方法

本地项目部署

1、安装MySQL

2、安装es

3、xxjob(可选)

4、运行项目

可以将自己关注的领域的文章导入(JSON数据链接:https://pan.baidu.com/s/1Y3IlR0N2phD6AlKWfkXAdQ
提取码:umgd),调用接口进行翻译和核心内容提取。

使用ChatGPT等大模型

本项目所积累的数据还可以作为和大模型对话的个人数据,将其上传到大模型中,利用ChatGPT或者阿里云等服务自带的向量数据库,可以直接与论文进行对话。

JSON数据链接:https://pan.baidu.com/s/1Y3IlR0N2phD6AlKWfkXAdQ
提取码:umgd

创建一个ChatGPT助手

  1. 进入 https://platform.openai.com/assistants
  2. 点击create创建
  3. 上传数据

使用阿里云

//todo

顶会数据量

年份AAAIAISTATSACMLCOLTICMLCVPRICCVWACVECCVJMLRNIPSsum
20221623728316212328020406164535126719047
2021196145511513911831047836406028922718702
2020186141954125108114660378135825118978890
2019134035978124771129410750018414266651
201810982165793618979006618410064812
201701674175431783621002316773026
201669116229683206430002345662713
20156731232877269602526001184012817
201447412125583025400001204062046
2013276713250281471454001153572107

详细列表见

data/paper/

top_conference_2013.md337 kB
top_conference_2014.md310 kB
top_conference_2015.md444 kB
top_conference_2016.md414 kB
top_conference_2017.md535 kB
top_conference_2018.md800 kB
top_conference_2019.md1.1 MB
top_conference_2020.md1.5 MB
top_conference_2021.md1.5 MB
top_conference_2022.md1.5 MB

百度网盘

pfd文件

链接:https://pan.baidu.com/s/1FKK27KgbYHm_2n5iDy3WZA
提取码:z8a9

json文件

JSON数据链接:https://pan.baidu.com/s/1Y3IlR0N2phD6AlKWfkXAdQ
提取码:umgd

Q&A

1、项目所部署的机器无法访问ChatGPT和谷歌翻译

A:使用项目中提供的API-Reverse-Proxy模块,将其部署在可以访问的机器上,然后将本地项目调用的接口地址改为代理机器的地址。或者使用国产的替代

相关文章:

一款计算机顶会爬取解析系统 paper info

一款计算机顶会爬取解析系统 paper info 背景项目实现的功能 技术方案架构设计项目使用的技术选型 使用方法本地项目部署使用ChatGPT等大模型创建一个ChatGPT助手使用阿里云 顶会数据量 百度网盘pfd文件json文件 Q&A github链接 :https://github.com/codebricki…...

CommonJs模块化实现原理ES Module模块化原理

CommonJs模块化实现原理 首先看一个案例 初始化项目 npm init npm i webpack -D目录结构如下: webpack.config.js const path require("path"); module.exports {mode: "development",entry: "./src/index.js",output: {path: p…...

实验4.1 静态路由的配置

实验4.1 静态路由的配置 一、任务描述二、任务分析三、具体要求四、实验拓扑五、任务实施1.设置交换机和路由器的基本配置。2.使用display ip interface brief命令查看接口配置信息。3.配置静态路由,实现全网互通。 六、任务验收七、任务小结 一、任务描述 某公司刚…...

Java网络编程-深入理解BIO、NIO

深入理解BIO与NIO BIO BIO 为 Blocked-IO(阻塞 IO),在 JDK1.4 之前建立网络连接时,只能使用 BIO 使用 BIO 时,服务端会对客户端的每个请求都建立一个线程进行处理,客户端向服务端发送请求后,…...

ShenYu网关注册中心之HTTP注册原理

文章目录 1、客户端注册流程1.1、读取配置1.1.1、用于注册的 HttpClientRegisterRepository1.1.2、用于扫描构建 元数据 和 URI 的 SpringMvcClientEventListener 1.2、扫描注解,注册元数据和URI1.2.1、构建URI并写入Disruptor1.2.2、构建元数据并写入Disruptor1.2.…...

探索GameFi:区块链与游戏的未来融合

在过去的几年里,区块链技术逐渐渗透到各个领域,为不同行业带来了前所未有的变革。其中,游戏行业成为了一个引人注目的焦点,而这种结合被称为GameFi,即游戏金融。GameFi不仅仅是一个概念,更是一场区块链和游…...

Windows下使用CMake编译lua

Lua 是一个功能强大、高效、轻量级、可嵌入的脚本语言。它支持程序编程、面向对象程序设计、函数式编程、数据驱动编程和数据描述。 Lua的官方网站上只提供了源码,需要使用Make进行编译,具体的编译方法为 curl -R -O http://www.lua.org/ftp/lua-5.4.6.…...

【C语言(十一)】

C语言内存函数 一、memcpy使用和模拟实现 void * memcpy ( void * destination, const void * source, size_t num ); • 函数memcpy从source的位置开始向后复制num个字节的数据到destination指向的内存位置。 • 这个函数在遇到 \0 的时候并不会停下来。 • 如果sourc…...

系统运行占用过高

1、CPU过高的问题排查 示例代码: public class Test { static class MyThread extends Thread { public void run() { // 死循环,消耗CPU int i 0; while (true) { i; } } } public static void main(String args[]) throws InterruptedException { ne…...

HTML---初识CSS

文章目录 前言一、pandas是什么?二、使用步骤 1.引入库2.读入数据总结 一.CSS概念 CSS是层叠样式表(Cascading Style Sheets)的缩写。它是一种用于描述HTML文档外观样式的标记语言。通过CSS,开发者可以在不改变HTML标记结构的情况…...

监控pod 容器外网请求网络带宽,过滤掉内网、基于k8spacket开发、prometheus开发export

首先安装k8spacket 安装k8spacket遇到问题,下载插件一直能不能下载成功,pod不能启动。所有手动下载处理。 helm repo add k8spacket https://k8spacket.github.io/k8spacket-helm-chart helm pull k8spacket/k8spacket打开values.yaml 文件 手动下载插…...

windows下docker环境安装

开启硬件虚拟化技术 win10中开启 Hyper-V Win10 下是否开启硬件虚拟化技术,在控制面板,启用 window 功能,找到 Hyper-V 选项,点勾选确认。如图: Windows 11 家庭中文版新增 Hyper-V选项 注意以下的解决方案来自win1…...

Python小程序 - 表格数值统计

题设:Excel表格中,计算如下图所示不同颜色(蓝、黄、桔)单元格值:各颜色填涂的单元格值的总和条件: - Excle表格中 - 分色标记,单元格有值 - 开始列(当前为D),…...

Unity | Shader基础知识(第一集:unity中最简单的shader)

目录 一、unity的shader 二、创建一个shader(在创建时,选前三种都可以) 三、内容解读 1.shader一直都在 2.我们写shader在写什么 四、没有被干预的shader(最简单的shader) 相关阅读 编写着色器概述 - Unity 手册…...

橘子学K8S01之容器中所谓的隔离

我们一直都在说容器就是一个沙盒,沙盒技术顾名思义就是像一个集装箱一样,把应用(服务,进程之类的)装起来的技术,这样每个进程在自己的沙盒中和其他的沙盒隔离开来,每个沙盒之间存在一个边界使得他们互不干扰&#xff0…...

利用svm进行模型训练

一、步骤 1、将文本数据转换为特征向量 : tf-idf 2、使用这些特征向量训练SVM模型 二、代码 from sklearn.model_selection import train_test_split from sklearn.feature_extraction.text import TfidfVectorizer from sklearn.svm import SVC from sklearn.m…...

【Docker】WSL 2 上的 Docker 搭建和入门

▒ 目录 ▒ 🛫 导读开发环境 1️⃣ 安装安装Docker Desktop for Windows 2️⃣ 环境配置3️⃣ hello world第一次运行再次运行分析总结 📖 参考资料 🛫 导读 开发环境 版本号描述文章日期2023-12-14操作系统Win11 - 22H222621.2715WSL2 C:…...

pytorch环境配置

1.创建环境 conda create --name pytorch python3.11.5 2.激活环境 source activate pytorch 3.添加国内镜像源: conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --add channels https://mirrors.tuna.tsin…...

电子眼+无人机构建平安城市视频防控监控方案

电子眼(也称为监控摄像机)可以通过安装在城市的不同角落,实时监控城市的各个地方。它们可以用于监测交通违法行为、监控公共场所的安全以及实时监测特定区域的活动情况。通过电子眼的应用,可以帮助警方及时发现并响应各类安全事件…...

mysql binlog_ignore_db参数的效果详解

​ 我们知道 binlog 会记录数据库所有执行的 DDL 和 DML 语句(除了数据查询语句select、show等)。 我们可以在mysql配置文件中关闭binlog [mysqld] skip-log-bin注意默认情况下会记录所有库的操作,那么如果我们有另类需求,比如说只让某个库记录 binglog 或排除某个库记录…...

RestClient

什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端,它允许HTTP与Elasticsearch 集群通信,而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级&#xff…...

基于算法竞赛的c++编程(28)结构体的进阶应用

结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...

突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合

强化学习(Reinforcement Learning, RL)是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程,然后使用强化学习的Actor-Critic机制(中文译作“知行互动”机制),逐步迭代求解…...

第25节 Node.js 断言测试

Node.js的assert模块主要用于编写程序的单元测试时使用,通过断言可以提早发现和排查出错误。 稳定性: 5 - 锁定 这个模块可用于应用的单元测试,通过 require(assert) 可以使用这个模块。 assert.fail(actual, expected, message, operator) 使用参数…...

ETLCloud可能遇到的问题有哪些?常见坑位解析

数据集成平台ETLCloud,主要用于支持数据的抽取(Extract)、转换(Transform)和加载(Load)过程。提供了一个简洁直观的界面,以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...

mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包

文章目录 现象:mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时,可能是因为以下几个原因:1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...

Mobile ALOHA全身模仿学习

一、题目 Mobile ALOHA:通过低成本全身远程操作学习双手移动操作 传统模仿学习(Imitation Learning)缺点:聚焦与桌面操作,缺乏通用任务所需的移动性和灵活性 本论文优点:(1)在ALOHA…...

让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比

在机器学习的回归分析中,损失函数的选择对模型性能具有决定性影响。均方误差(MSE)作为经典的损失函数,在处理干净数据时表现优异,但在面对包含异常值的噪声数据时,其对大误差的二次惩罚机制往往导致模型参数…...

代码随想录刷题day30

1、零钱兑换II 给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证结果符合 32 位带…...

处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的

修改bug思路: 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑:async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...