2 分•作者: samwho•7 个月前
返回首页
最新
3 分•作者: kstonekuan•7 个月前
Tambourine 是一个开源的、完全可定制的语音听写系统,它允许你控制 STT/ASR、LLM 格式化和提示,以便将干净的文本插入到任何应用程序中。
我已经在业余时间构建这个系统几周了。 促使我构建它的原因是,我想要一个可定制的 Wispr Flow 版本,在那里我可以完全控制模型的行为、格式化和系统的运作方式,而不是依赖于一个黑盒。
Tambourine 直接构建在 Pipecat 之上,并依赖于其模块化的语音代理框架。 后端是一个本地 Python 服务器,它使用 Pipecat 将 STT 和 LLM 模型拼接成一个单一的管道。 这种模块化使得交换提供商、试验不同的设置以及对语音 AI 进行细粒度控制变得容易。
我与朋友分享了一个早期版本,最近还在我当地的 Claude Code 聚会上进行了展示。 反响非常积极,这鼓励我更广泛地分享它。
桌面应用程序是用 Tauri 构建的。 前端用 TypeScript 编写,而 Tauri 层使用 Rust 来处理底层系统集成。 这使得全局热键的注册、音频设备的管理以及在 Windows 和 macOS 上光标处的可靠文本输入成为可能。
从高层次来看,Tambourine 为你提供了一个跨操作系统的通用语音界面。 你按下全局热键,说话,格式化后的文本就会直接在你的光标处输入。 它适用于电子邮件、文档、聊天应用程序、代码编辑器和终端。
在幕后,音频通过 WebRTC 从 TypeScript 前端流式传输到 Python 服务器。 服务器使用可配置的 STT 提供商进行实时转录,然后将转录文本传递给 LLM,LLM 会删除填充词、添加标点符号,并应用自定义格式化规则和个人词典。 STT 和 LLM 提供商以及提示可以在不重启应用程序的情况下切换。
该项目仍在积极开发中。 我正在处理边缘情况并完善用户体验,并且可能会有重大更改,但大多数核心功能已经运行良好,并已成为我日常工作流程的一部分。
我非常感谢反馈,特别是来自任何对语音作为界面未来感兴趣的人。
22 分•作者: akyuu•7 个月前
1 分•作者: wonderbar•7 个月前
1 分•作者: radio879•7 个月前
1 分•作者: ideamod•7 个月前
1 分•作者: lisper•7 个月前
2 分•作者: throw0101a•7 个月前
1 分•作者: d416•7 个月前
Hello HN,
我开发了“Wax On, Python”,这是一个基于浏览器的 Python '道场',通过重复和肌肉记忆来专注于语法精确性。
[https://waxonpython.com](https://waxonpython.com)
问题:
在学习编程时,很容易复制粘贴或一带而过语法。许多教程解释了逻辑,但并没有强制你实际输入代码。有时,初学者在开始编写脚本时会遇到基本的语法错误(缺少冒号、缩进错误、括号不匹配等)。
解决方案:
受经典虚构故事的启发,这个应用程序采取了一种类似“严厉的师父”的教学方法:
- 练习:给你代码片段,你必须逐字逐句地完全输入它们。
- 即时反馈:打字错误?“集中精神!”“马虎。”正确?“很好。”
- 肌肉记忆:从简单的 print 语句开始,逐步构建到循环、类,最终是 pandas 数据框。
- 哲学:在练习之间,你会得到师父的哲学智慧,解释概念背后的原因(例如:“变量是桶”,“缩进是选择”等)。
技术…
- 完全在浏览器中运行。代码在本地执行,因此没有服务器或延迟。
- 在浏览器中运行 Pyodide Python REPL,因此用户可以在犯错时看到真实的错误。包括用于数据科学练习的 Pandas 包。
- 技术栈:原生 js、HTML、css。
我为什么开发它
我在工作中运营一个 Python 学习小组,并希望为任何对 Python 感兴趣的人(无论其专业或技术背景如何)提供一个良好的、引人入胜的起点——目标是使语法自动化,这样你就不必考虑它,从而解放思维以进行更高级别的逻辑思考,并让人们了解他们即将开始的学习旅程。
关于课程进度和“严厉的爱”方法的任何反馈都将有所帮助——它对你有效吗?很乐意听到你的意见。
注意:由于 Zscaler 中实施了严格的 wasm 规则,该应用程序实际上在工作中被阻止了 :(
1 分•作者: FillMaths•7 个月前
1 分•作者: mrwizrd•7 个月前
最近空闲时间多了点,我用英国交通部的数据,做了一个英国公交车的实时地图,并且开源了。<p>这东西还很粗糙,运行起来也够呛,但你可以试试。我太激动了,忍不住要发出来。<p><a href="https://busmap.tail5c8e3.ts.net/" rel="nofollow">https://busmap.tail5c8e3.ts.net/</a>
1 分•作者: 7402•7 个月前
2 分•作者: janandonly•7 个月前
33 分•作者: lnbharath•7 个月前
19 分•作者: fanf2•7 个月前
3 分•作者: qzcanoe•7 个月前
PhotoToVideoAI 是一款由人工智能驱动的工具,可以将您的照片转化为动态视频。上传一张照片和一个提示词,大约 30 秒后,您将获得一个高质量的视频,分辨率高达 1080p,时长为 5 或 10 秒。该工具专为内容创作者、市场营销人员和摄影师设计。欢迎提供反馈!
4 分•作者: ckennelly•7 个月前
1 分•作者: slmslm•7 个月前
我一直在开发 Gitmore 一段时间了。我试图解决的问题是:每周我都会花 1-2 个小时浏览提交记录,试图拼凑出“我们发布了什么?”给那些不想阅读“feat: impl oauth2 w/ refresh”的利益相关者看。<p>我的见解是:所有信息都已存在于 Git 中。提交记录、PR、作者、时间戳。只是对于非开发人员来说,这些信息难以理解。<p>所以我构建了一个 AI 层,它:<p>1. 通过 OAuth 连接到 GitHub/GitLab/Bitbucket(仅读取元数据,从不读取代码)
2. 通过 Webhook 实时捕获提交记录和 PR
3. 使用 Claude 将原始 Git 活动转换为人类可读的摘要
4. 按照您想要的任何时间表,通过电子邮件或 Slack 自动发送<p>转换示例:<p><pre><code> 之前:“fix: rm deprecated api calls, refactor: extract auth middleware”
之后:“通过更新已弃用的端点修复了 API 超时问题。通过集中身份验证逻辑提高了安全性。”
</code></pre>
技术栈:Next.js 15、MongoDB、用于异步报告生成的 Bull 队列、用于摘要的 Claude API。使用 Webhook 进行实时数据传输,而不是轮询。<p>我从中学习到的一些东西:<p>- 提交消息遵循严格的模式(73% 以 feat:/fix:/refactor: 开头),但几乎不包含“为什么”的上下文
- 团队每年/每人花费大约 78 小时手动编写状态报告
- “我们这周发布了什么?”这个问题占关于存储库查询的 62%<p>从相同的数据层中涌现的其他功能:
- 您可以与之聊天的 AI 代理(“Sarah 上周做了什么?”)
- 具有贡献评分的开发者排行榜
- 自动生成的公共变更日志<p>免费套餐:1 个存储库,1 个自动化。Pro(每月 15 美元):5 个存储库。企业版(每月 49 美元):20 个存储库 + 自定义品牌报告。<p>https://gitmore.io<p>很乐意回答有关架构、AI 提示策略或 Webhook 处理的技术问题。也很好奇——其他团队如何处理“我们发布了什么”这个问题?
1 分•作者: jacksteven•7 个月前
1 分•作者: geox•7 个月前