专栏名称: GitHubStore
分享有意思的开源项目
目录
相关文章推荐
野球帝  ·  自家长袖T恤!原价69元,福利价49元! ·  23 小时前  
苏群  ·  夏天追杜兰特,火箭准备好了吗? ·  2 天前  
野球帝  ·  文班亚马,赛季报销了... ·  2 天前  
野球帝  ·  自家长袖T恤!原价69元,福利价49元! ·  3 天前  
51好读  ›  专栏  ›  GitHubStore

ArXiv Paper Reader:旨在简化和流利的arXiv论文阅读

GitHubStore  · 公众号  ·  · 2024-03-22 07:32

正文

项目简介

这项工作的主要思想是简化和简化 ArXiv 论文阅读。如果您是视觉学习者,此代码会将论文转换为引人入胜的视频格式。如果您在跑步时喜欢听,此代码还将生成音频以供收听。


以下是该算法的主要步骤:

  1. 下载论文源代码,给出其 ArXiv ID

  2. 使用 latex2html latexmlc 将 Latex 代码转换为 HTML 页面

  3. 解析 HTML 页面以提取文本和方程,忽略表格、图形等

  4. 如果创建视频,还需要创建一个将 pdf 页面与文本以及文本块与页面块相匹配的地图。

  5. 将文本分成几个部分,然后通过 OpenAI GPT api 进行释义、简化和解释。

  6. 将 GPT 生成的文本拆分为块,并使用文本转语音 Google api 将它们转换为音频

  7. 打包所有必要的部分并创建一个 zip 文件以进行进一步的视频处理

  8. 使用之前计算的文本块映射,使用 ffmpeg 创建视频


注 1 该代码可以创建较长的、更详细的论文版本,以及简短的、总结性的论文版本。

注2 长视频版本还将在每个部分之后包含摘要块

注 3 短视频版本将包含自动生成的总结论文的幻灯片

注 4:如果提供适当的凭据,代码还可以将生成的音频文件上传到您的 Google 云端硬盘


安装

  • LaTeXML(https://github.com/brucemiller/LaTeXML)

  • Latex2html ( https://github.com/latex2html/latex2html )

  • OpenAI 密钥

  • ffmpeg(制作视频)

  • gcloud:(https://cloud.google.com/sdk/docs/install)

  • ADC 设置:(https://cloud.google.com/docs/authentication/provide-credentials-adc#how-to)

  • 谷歌文本转语音 (https://cloud.google.com/text-to-speech)

  • Google Drive 设置(可选,请关注 https://github.com/iterative/PyDrive2)


Python 包

openai、PyPDF2、spacy、tiktoken、pyperclip、谷歌云文本语音、pydrive2、pdflatex

如何运行

# to create audio, both short and long, and prepare for video creation
python main.py --verbose --include_summary --create_short --create_video --openai_key --paperid --l2h

默认的latex转换工具 latex2html 有时会失败,在这种情况下删除 --l2h 以使用 latexmlc 。另外,默认情况下,代码将处理整篇论文直至参考文献,如果您想提前停止,请传递 --stop_word "experiments" (例如,在实验部分之前停止)。

输出

<arxiv_paper_id>_files/├── final_audio.mp3├── final_audio_short.mp3├── abstract.txt├── zipfile-<time_stamp>.zip├── ...├── extracted_orig_text_clean.txt├── original_text_split_pages.txt├── original_text_split_sections.txt├── ...├── gpt_text.txt├── gpt_text_short.txt├── gpt_verb_steps.txt├── ...├── slides    ├── slide1.pdf    ├── ...

输出目录包含生成的音频文件、幻灯片、提取的原始文本和 GPT 生成的输出,跨页面或部分分割。输出还包含 zipfile- .zip ,其中包括用于视频生成的数据。

# to extract only the original text from ArXiv paper, without any GPT/audio/video processing
python main.py --verbose --extract_text_only --paperid

现在,我们准备生成视频:

# to generate video based on the results from above, point to the 
python makevideo.py --paperid

输出

output_<time_stamp>/├── output.mp4├── output_short.mp4├── ...

输出目录现在包含两个视频文件,一个是长视频,另一个是短视频。







请到「今天看啥」查看全文