3 分•作者: sheldon7337•3 个月前
我曾使用过 Calibre 的内容服务器和 calibre-web,实际阅读时则配合 Calibre 和 Apple Books。虽然能完成任务,但体验总是不够流畅——于是我利用 Claude Code 构建了自己的解决方案。 它与 Calibre 完全兼容——我本人就是这样使用的:我的书籍仍然存储在 Calibre 库中,BeePub 只需指向该库即可保持同步(只读模式;Calibre 始终是数据源)。这与 calibre-web 的工作方式相同。 我在 CJK / 繁体中文支持(包括竖排文本)以及漫画 EPUB 方面投入了大量精力。还有一个使用 Capacitor 构建的原生应用,目前在 TestFlight (iOS) 上。它还支持 OPDS 和 KOReader 进度同步 (kosync),因此可以很好地与电子墨水阅读器配合使用。 如果您感兴趣,可以在 <a href="https://demo.beepub.app" rel="nofollow">https://demo.beepub.app</a> 上体验(登录:demo / demodemo — 数据每 6 小时重置一次)。 这是我每天都在使用的项目,所以请期待它不断更新!
11 分•作者: laalshaitaan•3 个月前
大家好,我是 Shubham 和 Parth,我们是儿时好友,共同创立了 Agnost AI (https://agnost.ai),为构建聊天和语音代理的团队提供产品分析服务。 我们阅读生产环境中的对话,找出行为上的缺陷,例如用户愤怒地提示(对代理咒骂)、反复重述同一个请求、纠正代理、要求缺少的功能,或者在得到技术上成功的回答后离开。 我们提供一个无需注册的交互式演示:https://app.agnost.ai?demo=true 这是一个演示视频:https://www.tella.tv/video/agnost-ai-launch-hn-demo-9haa 核心问题在于,聊天和语音产品不像 Web 应用那样拥有相同的指标。当产品界面是语言时,点击和漏斗图的用处大大降低。用户也很少提供明确的反馈,即使提供了,通常也是委婉的。我自己也很少在 Claude 或 Codex 中输入“/feedback”。大多数用户只是咒骂、重复提问、纠正代理或直接离开。因此,产品工程师可以从延迟、错误和追踪中获得技术可见性,但仍然必须猜测用户是否得到了他们想要的东西。 在过去一年中,我们一直专注于构建代理,并有几位创始人向我们寻求类似 PostHog 的工具,用于他们正在构建的 AI 助手的对话分析。 我们无意涉足可观测性或评估领域。可观测性告诉你技术上发生了什么。评估验证你已知的情况。我们更侧重于发现方面,例如用户想要什么、他们在哪里感到沮丧、他们反复要求什么,以及应该存在哪些新的评估。 团队通过 SDK 或 OTel 将代理对话消息发送给我们,还可以选择性地附带账户、计划、来源、组织等元数据。我们将对话聚类成特定于产品的意图。功能请求和错误是默认类别;大多数其他聚类是根据客户数据动态创建的,并会随着时间推移而演变。你可以用简单的英语创建自己的聚类。如果一个聚类变得太宽泛,我们会将其拆分。如果出现新的模式,我们会建议它。 一家 AI 视频编辑公司使用 Agnost AI 发现了隐藏在聊天中的功能请求。其中最重要的是,大约有 70 位用户想要自动字幕功能,但他们以“在此帧中添加此文本”的方式表达了 12 次,在一次会话中,还有“能否加上字幕”、“提供音频的转录”以及各种语言的变体。该团队后来构建了该功能。 最初的难点在于,在不将所有内容发送到 LLM 的情况下处理数百万条消息。在 ClickHouse 中,“按时间获取对话中的最后 50 个事件”和“获取此对话中的所有事件”需要不同的排序顺序,因此我们在排序键、分区、物化视图和投影方面进行了大量迭代。 对于查找新聚类,将所有内容通过 LLM 处理太慢且成本太高。HDBSCAN 式的嵌入聚类在规模化时也因成对比较而变得棘手。我们首先根据余弦漂移将对话分割成片段,运行 BIRCH 来压缩候选空间,然后在较小的集合上使用类似 HDBSCAN 的聚类。对于匹配现有聚类,我们使用嵌入、较小的分类器/BERT 式模型,并将 LLM 仅作为模糊情况的后备。 我们已经与多家公司合作上线,每天处理约 100 万条聊天和语音消息。定价公开:Starter 版本免费,Pro 版本为 499 美元/月,Enterprise 版本适用于更高流量、安全和保留需求。我们仅使用客户的数据为该客户服务。我们已通过 SOC 2 Type 1 认证,Type 2 认证正在进行中,我们的 SDK 已在 PyPI 和 npm 上提供。 我们非常希望听到 HN 社区以及构建聊天或语音代理的开发者的反馈:你们目前是如何检测这些信号的?哪些反馈方法有效?什么会阻碍你们尝试我们的产品?我们很乐意回答问题并接受批评。
1 分•作者: stony-builds•3 个月前
1 分•作者: mehrant•3 个月前
五年前,我在面包板上制作了一个 SAP-1 的衍生品(主要受 Ben Eater 的启发),并进行了一些改进,称之为 MSAP-1(<a href="https://github.com/mehrantsi/MSAP-1" rel="nofollow">https://github.com/mehrantsi/MSAP-1</a>)。我创建了自己的非常基础的汇编语言和一个简单的 Arduino 编程器(<a href="https://github.com/mehrantsi/8-bit_CPU_Programmer" rel="nofollow">https://github.com/mehrantsi/8-bit_CPU_Programmer</a>),我可以用它将我的程序加载到 MSAP-1 中,甚至进行调试(<a href="https://github.com/mehrantsi/8-bit_CPU_Debugger" rel="nofollow">https://github.com/mehrantsi/8-bit_CPU_Debugger</a>)。 之后,我开始着手制作它的第二版(<a href="https://github.com/mehrantsi/MSAP-2" rel="nofollow">https://github.com/mehrantsi/MSAP-2</a>),增加了堆栈、中断等功能,目标是让第二版能够运行一个非常基础的操作系统。但生活中的变故让我没有足够的时间投入其中,尽管我一直在进步。 两年前,我进行了一项小测试,想看看哪个模型能理解 MSAP-1、我的汇编语言、我编写的程序,以及最终是否能理解 MSAP-2。之前没有一个模型能真正理解整个堆栈,而且早期模型在理解硬件和电子学方面普遍表现很差。直到 Fable 5 的出现…… 将同样的提示输入 Fable,它是第一个能够理解整个堆栈以及我为正在开发的第二版所设想的意图的模型。我让它创建一个模拟器,它做到了(当然不是一次性完成的),我利用它最终确定了设计。然后,我与 Fable 一起使用我自己的汇编语言创建了一个操作系统(<a href="https://github.com/mehrantsi/MOS-1" rel="nofollow">https://github.com/mehrantsi/MOS-1</a>),并将其加载到其中,一切都运行正常! Fable 在电子学方面的能力比之前的模型有了巨大的提升,这真是太令人着迷了! MSAP-1 模拟器:<a href="https://msap1.mehran.dk" rel="nofollow">https://msap1.mehran.dk</a> MSAP-2 模拟器:<a href="https://msap2.mehran.dk" rel="nofollow">https://msap2.mehran.dk</a>
23 分•作者: plicerin•3 个月前
这个想法在我脑海里已经酝酿了好几年。我一直在收集名著的开篇句,觉得每天打开浏览器时能看到一句名言会很酷。我尝试了不同的风格,最终选择了简单的背景配文字,让文字本身来说话。随着时间的推移,我添加了更多的引言,现在大概有近60句了,所以希望你多刷新几次,每次都能看到一句新的。希望你们喜欢,尽情享受吧!