01月14日
一、今日完成情况
- AI系统(B站视频内容总结)实现落地,至少打通两个环节 –全部完成
- 配置一下vscode还有相关的AI插件cline,vscode还是少不了,而且trae的付费我不是很喜欢。
- 制定一个衣物整理清点计划,我要知道自己的衣服如何收纳和数量 –完成
二、今日感悟
- 核心业务数据:
- 一个项目的搭建
- vscode的配置
- Orion浏览器的探索
- 今日工作总结:
- 发现内嵌CLine的vscode编程效率更高了,我明天还得好好琢磨怎么快速上手,明天需要解决的问题有Gemini的vscode代码网络连接的问题,还有把B站视频内容快速总结的项目包装一下,让AI帮我配置一下前端代码,最后能够运行到服务器上,不过这就要求语音转文字功能不能使用本地模型了,必须要使用接口了,可以尝试。
- 工欲善其事必先利其器,最近搞得事情不太专一,全是工具层面和宏观层面的,但是只有这样才能更好的对于这个学习路线和系统有自己的理解。
- Orion果然是专业搞检索的,免费的才是最贵的,谷歌浏览器对于隐私保护,检索广告筛选本来以为相比于百度已经做的更好了,没想到付费的浏览器打磨的更好,检索的资料好干好干,就特别适合我这种深度检索的极客用户画像。
- 明日工作计划:
- 需要琢磨一下mac系统检测不到HDMI链接是什么问题,第一次链接的好好的,之后就连接不上了。解决实际问题一直都是我的强项。
- 还要琢磨一下如何搭建AI 工作流批量的实现PDF文章的翻译,参考这个项目 https://www.bilibili.com/video/BV1MHk9Y2Ef7
- 今日学习成长:
- 非常有成就感哦,这个AI视频笔记总结的效果满足我的预期了。B站昨天探索的市面上的产品还是挺贵的,虽然效果我的稍微好一点,而且可以把视频当中什么时间说了什么内容也标注好,可是还是没必要,我自己搭建的系统,可以实现总结已经很不错了。
三、备注
- 无
四、AI B站视频总结系统
我调用 Obsidian的MCP服务,直接让AI总结我刚才的项目笔记,然后直接导入到我的笔记当中:
至此,我只需要微调笔记内容即可。
1、项目思路
本项目的核心目标是构建一个自动化的B站视频知识转化工具。它接收一个B站URL,通过一系列AI处理模块,最终输出一份结构精美、内容详实的Markdown学习笔记,实现从被动观看视频到主动吸收知识的转化。
只需要配置好B站视频的链接、token登录信息,配置好对应的语言模型就可以了,视频链接可以在输入指令的时候一起输入,也可以在代码当中设置。
严格按照技术流程图来实现:输入B站URL -> 模块1: 音频提取 -> 模块2: 语音转文本 -> 模块3: 文本总结 -> 模块4: 笔记生成 -> 输出Markdown文件
2、项目架构
项目采用高度模块化的架构,确保了代码的清晰度、可维护性和扩展性:
main.py: 作为项目的主控制器和入口,负责按顺序调用各个功能模块,串联起整个处理流程。module_audio_extractor.py(模块1): 使用yt-dlp从视频URL中提取并下载音频文件。module_speech_to_text.py(模块2): 利用openai-whisper模型将音频文件精准地转录为原始文字稿。module_text_summarizer.py(模块3): 核心AI总结模块。它调用大语言模型(如DeepSeek, Gemini)API,并通过“Map-Reduce”策略处理长文本,生成精炼的内容摘要。module_note_generator.py(模块4): 笔记美化与生成模块。它使用一个精心设计的“元提示词”,将模块3生成的摘要二次创作成包含亮点、思考和术语解释的结构化Markdown笔记。config.yaml与.env: 采用配置与代码分离的最佳实践。config.yaml定义模型、服务商等结构化信息,.env则安全地存储API密钥。
3、 遇到的核心问题与解决方案
问题:
yt-dlp在Python脚本中静默失败,无法生成音频文件,尽管在终端手动执行是成功的。- 排查过程: 通过在代码中加入
--verbose详细日志,定位到问题根源是在脚本执行环境下,yt-dlp自动使用了系统代理,导致B站下载请求失败。 - 解决方案: 其实问题是,默认这里下载的事B站的高码率的视频,所以才需要会员导致下载失败,所以我在关闭代理的同时,调整代码下载内容,我只需要音频就可以了,
- 排查过程: 通过在代码中加入
问题: 如何灵活、安全地管理和切换多个大语言模型及其API密钥。
- 排查过程: 用户最初设想在
.env文件中配置复杂的模型结构,但这不符合.env的设计。 - 解决方案: 引入了
config.yaml文件来管理模型列表等结构化配置,而.env文件只用于存储敏感的API密钥。代码被重构为启动时读取config.yaml,根据所选模型动态查找并加载对应的密钥,实现了高度灵活且安全的配置驱动架构。
- 排查过程: 用户最初设想在
问题: LangChain 在近期版本中进行了模块化拆分,导致导入的库发生了问题,我修改了一下库的名字即可
- 使用轻量级独立包,pip install langchain-text-splitters,修改代码为,from langchain_text_splitters import RecursiveCharacterTextSplitter即可。
4、项目效果图
项目代码日志示意:
笔记效果示意:
笔记内容要求:
因为我主要总结的视频内容是知识类型的笔记,所以需要有一定的结构限制,我的笔记是限定提示词的,提示词如下:
你的输出必须严格遵循以下Markdown格式,不得有任何偏差:
- 主总结 (段落): 首先,用一段流畅、引人入生的文字对视频核心内容进行概括。
- 亮点 (列表): 提取3-5个视频中最具价值或最关键的亮点,使用列表形式(以 📚, 🛠️, 📝, 🔍, 💡 等表情符号开头),并可选择性地标注时间戳(如果摘要信息中包含)。
- 标签 (Hashtags): 生成3-5个高度相关的标签,用于内容归类。
- 思考 (问答): 基于视频内容,提出1-2个能够引发深入思考或探究的问题,并给出你基于视频内容的解答。格式为:
- 问题: [提出的问题]
- 解答: [你的解答]
- 术语解释 (列表): 识别并解释视频中出现的3-5个关键术语或概念。格式为:
- 术语名称: [术语的定义]
笔记内容展示:
主总结 (段落):
在信息全球化的今天,高效精准地翻译学术论文、技术文档等PDF文件,同时保持其原有的复杂排版、公式图表,是一项极具挑战性的需求。PDF Translate 这款开源工具正是为此而生。它巧妙地结合了深度学习、文档解析和自动化排版技术,不仅能通过多种翻译引擎(从传统API到前沿AI大模型)处理文本,更能近乎完美地还原PDF的原始布局,为用户提供了从在线体验到本地离线部署的完整解决方案,尤其适合对格式保真度和数据隐私有高要求的专业场景。
亮点 (列表):
📚 格式无损翻译:核心突破在于使用U-Net模型进行布局分析,确保翻译后的PDF在公式、图表、目录、版式上与原文完全一致。
🛠️ 灵活部署方案:提供从“Windows一键脚本”快速启动、Python虚拟环境安装到命令行直接调用的多种部署方式,兼顾易用性与灵活性。
📝 引擎聚合与AI增强:内置MassTranslate库,可多线程调用谷歌、DeepL等多种翻译API,并支持配置OpenAI等大模型API以显著提升翻译质量。
🔍 离线的优势:在线服务有文件大小和页数限制,而本地部署无此限制,能处理更大文档,且保障了数据隐私和安全。
💡 输出格式可选:用户可根据需要,选择生成双语对照或纯中文版本的PDF,满足不同阅读习惯和分发需求。
标签 (Hashtags):
#PDF翻译 #文档处理 #本地化部署 #AI工具 #开源项目
思考 (问答):
问题: 为什么PDF Translate在翻译技术文档或学术论文时,比简单的“复制文本到翻译软件”方案更具优势?
解答: 简单的复制粘贴会彻底丢失PDF中所有的非文本元素(如图表、公式、特殊排版)和结构信息(如目录、页码、分栏)。PDF Translate通过“布局分析-内容提取-页面重构”的技术流程,将文本与版式分离处理,翻译后再按原坐标精确重组,从而实现了“所见即所得”的格式保真,这是手动操作无法企及的。
术语解释 (列表):
U-Net模型: 一种最初用于生物医学图像分割的卷积神经网络架构,因其高效的像素级定位能力,在此工具中被用于精准识别和定位PDF页面中的文本块、图像、公式等不同元素。
PyMuPDF: 一个功能强大的Python库,用于处理PDF、XPS等文档。在PDF Translate中,它负责根据布局分析结果和翻译后的文本,重新生成和渲染最终的PDF页面。
MassTranslate: 项目自带的翻译聚合库。它的作用是统一接口,管理并多线程调用不同的翻译服务API(如谷歌翻译、DeepL等),提高翻译效率并提供回退机制。
五、衣物清点计划
1、问题
袜子、短袖、长袖、夏季短裤、秋季长裤、冬日长裤、卫衣、外套、毛线衫等等衣服,零散不好寻找,而且没有分类,昨天找衣服我已经领教到这个坏习惯的弊端了,而且还有一个问题,是很多衣服根本没有进入我的穿衣轮转当中,会导致衣服的浪费。
这就是衣服太多的烦恼,所以我痛定思痛,一定要把衣服裤子分个类别,这样我在设计自己的穿衣风格的时候也可以灵活自由,从而在穿着设计上尝试一下。
毕竟未来总是要带外面,留给其他人的第一印象还是挺重要的,我的自己倒无所谓,邋里邋遢的也就过来了。
2、解决方案
分类:袜子、短袖+长袖 、薄长裤 + 短裤、后长裤,至于毛衣、外套我就放在柜子了。
购买五个收纳盒,不大不小,放置冬天以外的服装刚刚好
任务完成。
六、vscode 插件配置心得
CLine效果比较拔尖,而且可以使用免费的模型数量比较多,也可以使用Claude 模型的免费额度,只不过token比较贵,很快就要用完
vscode的copilot插件效果一般,自定义程度不高,而且长时间使用必须得是copilot会员才可以,不建议使用。
现在我使用英语看各种软件和网页教程的配置,越看越顺眼,果然作为一个合格的程序员英语文档查看的能力还是非常重要的,算是未来基本功。
感觉vscode功能特别完善,自定义程度太高了,而且我设置的英语语言,导致在我看来vscode反而是相对于PyCharm、trae等IDE门槛最高的了,不过一定要上手的,vscode还是扩展性非常强,用起来最丝滑的,一旦上手,且基本配置熟练之后,就没什么问题了。
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 kipleyarch@gmail.com