宝玉 Profile picture
Mar 9 4 tweets 3 min read
基于OpenAI的Whisper的C/C++实现,完全可以离线使用。
🔗 github.com/ggerganov/whis…
- 没有外部依赖
- 不需要联网
- 内存使用率低
- 支持几乎所有的主流平台,Mac、iOS、Android、Windows、WebAssembly等

参考在 iPhone 13 设备上运行模型的视频——完全离线
基于它你可以轻松制作自己的离线语音助手应用
之前有朋友留言问支不支持中文,支持的效果怎么样。答案是肯定的,那么效果怎么样呢?

先说明一下,在本地运行Whisper之前要先下载模型,从tiny到large,自然是体积越大效果越好。

我拿王局的最新一期视频的第一分钟测试了一下,图一是base模型,图二是large,差别还是有一点的,large识别效果很好 ImageImageImageImage
测试它的SwiftUI的那个Demo要注意
1. 先要下载好Model,然后放到SwiftUI项目的Resources/models目录下
2. WhisperState类下的模型文件名要修改成对应的模型文件
3. LibWhisper类中的”en”改成”zh”才能输出成中文结果

不建议用large测试,base就可以,Large虽然精度最高,但内存占用很高,解析速度很慢 ImageImageImage
模型的安装在它的models目录下有说明:
github.com/ggerganov/whis…

终于明白为啥还是得花钱用OpenAI的Whisper API了,本地运行成本也不低,tiny或者base对中文的识别效果不怎么好,large模型的话,磁盘得占3G,内存得占5G,解析速度还慢!

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with 宝玉

宝玉 Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @dotey

Mar 8
刘润老师在他的得到专栏上有一篇讲了《知识(Knowledge)、技能(Skill)和态度(Attitude)》。可以帮助从另一个角度来回复这个问题。
知识就是已经被发现和证明的规律,它是确定的,不需要你通过自身的成功、挫败去验证,然后恍然大悟的那些规律

比如我们书本上学的知识,小学学的1+1=2,大学学的编程语言排序算法。

就像Cat文章中提到的显性知识。知识的学习主要依赖的是你的记忆,而记忆是会衰退的,很多学过的知识会忘记。
技能就是那些你以为你知道,但如果你没做过,就永远不会真的知道的事情。

最简单的例子就是骑自行车,无论你看了多少学习自行车的理论,你不骑永远学不会。类似的还有游泳、演讲、管理等等。

所以我们常说掌握沟通技能、管理技能,而不会说沟通知识、管理知识。

技能要靠练习,变成条件反射。
Read 11 tweets
Mar 6
Tried to reverse Twitter's VirtualScroller component with the help of ChatGPT
Get the source code from Chrome dev tool, then paste the code to ChatGPT to convert it to a readable React component. ImageImageImageImage
Sometimes the code is too long ChatGPT cannot return the complete code, you can ask it to return only a certain function. Image
Read 5 tweets
Mar 3
这确实是一个相当好的绕过tokens长度限制解决方案,我尝试将这个方案整理一下。🧵
现在ChatGPT的API是无状态的,意味着你需要自己去维持会话状态,保存上下文,每次请求的时候将之前的历史消息全部发过去,但是这里面有两个问题:1. 请求内容会越来越大;2. 费用很高。
原推的方案可以借助OpenAI的embedding模型和自己的数据库,先在本地搜索数据获得上下文,然后在调用ChatGPT的API的时候,加上本地数据库中的相关内容,这样就可以让ChatGPT从你自己的数据集获得了上下文,再结合ChatGPT自己庞大的数据集给出一个更相关的理想结果。
Read 13 tweets
Mar 2
这其实是个好机会,越是烂代码烂系统,可发挥的空间越大,越能体现水平。

按照我的经验,接受这种烂代码,可以通过几个步骤来改进完善。🧵
做事之前要先收集收据。两个目的:1. 帮助分析问题,找出大的严重的问题;2. 为将来邀功和吹牛逼准备好基础。

常见的数据包括:构建时间、响应时间、部署频率、新功能开发时间、bug修复时间、服务故障恢复时间、单测覆盖率、部署后回滚频率、生产故障频率等一切对将来你解决问题和吹牛逼有帮助的数据
先根据数据找出那种能短期提升效果的任务。这可以让你很快建立威信,让同事和老板相信你能做好事,给你更多机会。那种要花很长时间的留在后面再做,不然体现不出来能力,老板还不知道你在忙什么

比如够构建时间太长,你可以写一些自动化帮助提升效率,瞬间就可以将部署时间从30分钟提升到3分钟
Read 7 tweets
Feb 28
我以前帮人整过一个几十万数据的小网站,这么多数据存关系型数据库放到云上每月要几十刀不合算,所以后来采用了个便宜的方案 🧵
第一个版本方案

完整的数据存在本地的Sqlite,备份到网盘

用脚本将单条数据和列表数据导出到Json文件,存到AWS的S3,当做后端数据库

网站用Nextjs,基于它的ISR静态化的方案,第一次请求页面的时候静态化,后面就不需要访问数据库了

nextjs.org/docs/basic-fea…
搜索用的是Meilisearch,它支持中文全文检索,性能很好,对前端也友好,可以方便的集成到Nextjs中。

部署到从oracle cloud白嫖的免费主机上,然后从网站上包了个API访问Meilisearch。

meilisearch.com
Read 7 tweets
Jul 27, 2022
最近跟我一起合作了一段时间的PM(产品经理)离职了,她的工作能力有口皆碑,大家都很喜欢和她一起合作,今天在和接任她的PM的一对一会议上,新PM问我:“你觉得她哪些方面做的好?这样我能向她学习,争取也能像她一样优秀!”
这其实也是我一直在思考的问题:怎么从优秀的PM身上找出他们的闪光点,如何向他们学习。

我尝试着给新PM总结了一下:
首先是她的产品设计基本功不错,能在短时间内熟悉我们的产品功能,并对我们的产品功能做出了不少优秀的改良,对于产品相关的问题,能做出专业的解答。
Read 20 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(