Hamburg Learning and writing about everything that intrigues me

长音频转阅读体验极佳的文字

2025-10-02
增益
LLM

简介

多年前买过一个音频课程,当时没空听,最近来兴趣了。一共十几节课,每节课两个多小时,对人的时间精力是个挑战。音频的问题在于,你得时刻专心听,中间偶一跑神就接不下去了,手机上也没有像小宇宙一样方便退后或前进十几秒的播放器,手动拖进度条很难定位准确。还是文字好,可以反复停留。于是就决定把这些音频转成文字稿。

网上有不少收费ASR服务,但一打开就是诱惑你连续包月的,我这一锤子买卖,没有长期使用需求,没必要。做算法的对这个也不陌生,也不缺卡,还是自己动手吧。

音频转译

于是在一张 4090 上用 whisper-large-v3 把十几个音频逐个转成了文字,每个音频转写耗费近一个小时,十几个音频共多半天时间。

# export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libffi.so.7
# export CUDA_VISIBLE_DEVICES=2,3,4,5,6,7

import torch
from transformers import AutoModelForSpeechSeq2Seq, AutoProcessor, pipeline
import sys
import os


torch_dtype = torch.float16 if torch.cuda.is_available() else torch.float32

model_id = "./huggingface/whisper-large-v3"

model = AutoModelForSpeechSeq2Seq.from_pretrained(
    model_id, torch_dtype=torch_dtype, low_cpu_mem_usage=True, use_safetensors=True, device_map="auto"
)

processor = AutoProcessor.from_pretrained(model_id)

pipe = pipeline(
    "automatic-speech-recognition",
    model=model,
    tokenizer=processor.tokenizer,
    feature_extractor=processor.feature_extractor,
    torch_dtype=torch_dtype,
)

input_path = "./Darwin_Dangerous_Idea_Audio/"
output_path = "./Darwin_Dangerous_Idea_ASR/"

for root, dirs, files in os.walk(input_path):
        for file in files:
            file_path = os.path.join(root, file)
            result = pipe([file_path], chunk_length_s=30, stride_length_s=5,generate_kwargs={"language": "zh", "task": "transcribe"})
            output_file = output_path + file.replace("mp3","txt")
            with open(output_file, 'a') as f:
                f.write(result[0]['text'])

然后发现 whisper 转写出来的文稿还是没法看,全是文字,没有标点符号,没有换行,更不用说段落。

好好能能能听到吗各位能能能能听到能听到是吧有没有回音嗯好没有回音特别好啊非常感谢各位同学朋友来这里听我们这个达尔文的危险观念的这个课程当然也首先要感谢这次我们的DDI这个课程的这些观念人员观念员然后呢现在我们就开始来说一下我们整个课程的一个基本安排今天我们会用30到45分钟给大家稍微介绍一下这个课的基本的内容也对大家可能会关心的一些问题来做出一个预先的答复然后呢我们就请大家提问然后提问的时候我们就来回答大家提问到时候可以在右边可以在右边打字提问就可以对吧那现在应该是不可以发言了是吧那我现在就开始了可以可以可以可以讲讲一讲吧那么这个我们来看一下我这个弄了大概十张PPT给大家稍微说明一下十张看一看对如果看不到PPT的话可以刷新通常这些东西都是经常需要刷新一样因为有人上的比较早首先我们为什么要选这样一本书丹尼尔丹尼特这个人呢他现在是在塔夫斯大学他本人是跨英的学生那么当然是非常非常著名的心灵哲学家也是认知科学哲学专家他虽然是个哲学家但是在心理学认知科学里面去别人的实验室都是直接受到别人的欢迎因为他真的是比较愿意去深入的理解不是普通的那种意义上的哲学家那我自己读了很多关于哲学的一些书籍我本身是研究哲学出身的那么我发现了戴利特这个人的哲学思想对我的吸引力是巨大无比的所以他是非常重要的一个思想人物有人甚至说如果20世纪上半叶是罗素的时代那么20世纪后半叶也就是1950年到2000年左右应该是丹利特的一个时代当然丹利特是1940几年出生的严格来说他真正出道大概是在1970几年那么所以实际上是21世纪上半年可以认为是丹利特的一个时代非常重要这个PPT有的同学说是没有看到PPT用电脑端可以看得很清楚如果是用手机或者是用iPad之类的就可能看不到大家会在群里应该会有粘贴的一个内容对我现在刚刚说到第二页那么现在已经有讨战来帮我们粘贴了所以可以看一下群里有的在群里有那么说一下这个导这是丹利特这个人那么为什么选这本书这个书应该是他最成熟的一本著作那么他还有些其他的书比如说我跟一些朋友们翻译了意识的解释那么那本书也很精彩是专门讲意识怎样去追踪他的一个一个来源一步一步的去分析意识是什么回事那么那是把达尔文的思想应用于意识领域那么丹利特在用达尔文主义去分析了意识分析了自由分析了自我等等一些哲学上的主题以后他发现了实际上让他导致导致他的思想在哲学界不是那么受欢迎但是在心理学界认知科学界反而比较受到重视的一个重要原因在于这个很多哲学家对达尔文主义的思路不是很理解所以这个会阻碍科学进一步向阻碍达尔文主义阻碍科学进一步向人类的文化语言思维等等这个领域取得成果因为达尔文主义已经在生物科学取得了巨大的成果但达尔文主义绝对不只是一个生物学达尔文主义可以这样说凡是生命现象都可以用达尔文主义来去解释当然我们人的思维我们的意识我们的自我我们的文化甚至我们的各种经济社会生活等等可能都是属于达尔文主义的范畴大家如果跟着我们把这个书看完然后呢把这个课听完两个月的时间你会发现这一点这是一个非常伟大的理论它的基础地位达尔文主义的基础地位其实就相当于刘顿对古典物理学的地位相当于像量子力学和爱因斯坦相当于对于现代物理学的敌问这是没有任何问题的那么达尔文主义呢就是

文字整理

于是又写了个prompt,把文稿一个个丢给 Gemini 2.5 Pro 做整理,整理得非常好。最后把这些文字稿存到锤子便签上,阅读体验极佳。

prompt:


「
此处粘贴上面 whisper-large-v3 转译内容。
」

以上是关于一本书《达尔文的危险思想》其中一章的一个讲课录音,通过 whisper-large-v3 转成了文字稿,但这文字稿毫无段落,甚至连标点也是缺失的,请你整理该文字稿,主要是添加断句、标点符号,并进行分段,尽量还原老师讲的原话,不需要你对文本做修改润色,除非你发现有错别字可以纠正下。请你按以上要求进行整理。切记不要有遗漏!

Gemini 2.5 Pro 输出样例:

那么,我们来看一下,我这个弄了大概十张PPT给大家稍微说明一下。十张,看一看。对,如果看不到PPT的话可以刷新,通常这些东西都是经常需要刷新一下,因为有人上得比较早。

首先,我们为什么要选这样一本书?丹尼尔·丹尼特这个人呢,他现在是在塔夫茨大学,他本人是跨学科的学生。那么,当然是非常非常著名的心灵哲学家,也是认知科学哲学专家。他虽然是个哲学家,但是在心理学、认知科学里面去别人的实验室都是直接受到别人的欢迎,因为他真的是比较愿意去深入地理解,不是普通的那种意义上的哲学家。

那我自己读了很多关于哲学的书籍,我本身是研究哲学出身的。那么,我发现了丹尼特这个人的哲学思想对我的吸引力是巨大无比的,所以他是一个非常重要的思想人物。有人甚至说,如果20世纪上半叶是罗素的时代,那么20世纪后半叶,也就是1950年到2000年左右,应该是丹尼特的一个时代。当然,丹尼特是1940几年出生的,严格来说,他真正出道大概是在1970几年,那么所以实际上是21世纪上半年可以认为是丹尼特的一个时代,非常重要。

Similar Posts

Comments