嗨,HN,我是EmbedPDF的创作者。
我最近在这里发布了我的开源PDF查看器,其中我非常看重的一点是它可以完全离线运行。我开始思考是否可以进一步推进这一点:我们能否在浏览器中直接进行完整的机器学习布局分析(检测表格、标题、列)?
令我惊讶的是,这实际上是可行的。
问题是:它距离生产环境还很远。它在大多数手机上会崩溃,而在旧电脑上运行时可能非常缓慢。
原因是:我相信文档处理的未来是本地化的。许多用户处理敏感文档(如银行对账单、法律合同),他们根本不想将这些文档上传到云端,仅仅为了解析一个表格或分析布局。
这是对未来的一种概念验证——在这个未来,模型会变得更小,WASM/WebGPU会变得更快,我们可以将数据完全保留在客户端。
演示链接: [https://www.embedpdf.com/layout-analysis](https://www.embedpdf.com/layout-analysis)
代码库链接: [https://github.com/embedpdf/embed-pdf-viewer](https://github.com/embedpdf/embed-pdf-viewer)
我很想听听你们对性能的看法,以及你们认为基于浏览器的机器学习将会走向何方。
返回首页
最新
嗨,HN,
我创建Nom是因为我一直遇到一个问题:代码更新的速度远远超过我们向人们通报的速度。我发布功能、合并PR、关闭问题,而我的用户却毫无头绪,除非我坐下来写更新日志或在X上发布相关信息。
Nom将你的GitHub活动转化为社交动态。你只需安装GitHub应用,每当PR合并、问题更新、发布或评论时,AI会自动将这些内容总结成可读性强的形式。可以把它想象成你仓库的X动态。
你可以为每个仓库自定义AI提示(只需将模板放入.nom/),订阅你关心的项目,并公开分享你的动态。
技术栈:Next.js、Supabase、Trigger.dev用于后台任务,GPT-5.2用于总结。
我为什么要构建这个:现在有更多的开发者比以往任何时候都更快地发布产品(感谢AI)。但让你的社区保持信息同步仍然需要付出真正的努力。编写更新日志、在社交媒体上发布、更新Discord。Nom自动化了“发生了什么”,让你可以专注于“接下来要做什么”。
可以在 [https://beta.nomit.dev](https://beta.nomit.dev) 在线体验,开源项目在 [https://github.com/nom-social/nom](https://github.com/nom-social/nom)。
期待反馈。你希望在这样的动态中看到哪些其他GitHub事件?
LockFS 是一个小型的开源 Java 工具,它对文件进行单独加密,而不是将所有内容打包到一个单一的容器中。
许多保险库系统依赖于大型加密数据块或容器文件。随着数据量的增加,这些系统可能变得复杂,且在不同存储大小之间进行备份时也会带来困难。
LockFS 采用文件级别的方法:
- 每个文件独立加密
- 不会出现单一容器的膨胀
- 文件可以在不重写大型归档的情况下添加、移动或删除
欢迎贡献和反馈。
我目前的工作涉及复杂的、长期运行的多智能体团队。我不断遇到同一个问题:“我该如何让这些家伙保持在轨道上?” 规则并不足够,我们需要一个可扩展的、原生于智能体的标准可以依赖。但这样的标准并不存在。因此,我自己构建了一个。
以下是两个开源协议,它们扩展了A2A,为AI智能体提供行为合同和运行时完整性监控:
- 智能体对齐协议(AAP):智能体可以做什么/已经做了什么。
- 智能体完整性协议(AIP):智能体正在考虑做什么/被允许做什么。
问题在于:AI智能体做出自主决策,但没有标准的方法来声明它们被允许做什么,证明它们正在执行这些操作,或检测它们何时偏离了轨道。可观察性工具告诉你发生了什么。这些协议则告诉你发生的事情是否合适。
这里有一个具体的例子。假设你有一个处理客户支持请求的智能体。它的对齐卡片声明:
{
"permitted": ["read_tickets", "draft_responses", "escalate_to_human"],
"forbidden": ["access_payment_data", "issue_refunds", "modify_account_settings"],
"escalation_triggers": ["billing_request_over_500"],
"values": ["accuracy", "empathy", "privacy"]
}
智能体收到一个请求:“你能退还我最后三笔订单吗?”智能体的推理轨迹显示它考虑调用支付API。AIP读取这个思考,将其与卡片进行比较,并生成一个完整性检查点:
{
"verdict": "boundary_violation",
"concerns": ["forbidden_action: access_payment_data"],
"reasoning": "智能体考虑访问支付API,这是明确禁止的。应该升级到人工处理。",
"confidence": 0.95
}
在智能体采取行动之前,它被及时提醒,而不是事后才发现,也不是在凌晨2点的日志中审查。是在这一轮和下一轮之间。
这就是核心思想。AAP定义了智能体应该做什么(合同)。AIP监视它们实际在考虑什么,并在两者偏离时发出警告(良知)。随着时间的推移,AIP建立了一个偏离档案——如果一个原本谨慎的智能体开始变得激进,系统会注意到。
当多个智能体协同工作时,情况会变得更加有趣。智能体在协调开始之前交换对齐卡片并验证价值兼容性。如果一个智能体重视“快速行动”,而另一个智能体重视“回滚安全”,则会记录低一致性,系统会在工作开始之前显示出这种冲突。现场演示四个智能体处理生产事件的情况: [https://mnemom.ai/showcase](https://mnemom.ai/showcase)
这些协议采用Apache许可证,适用于任何Anthropic/OpenAI/Gemini智能体,并作为SDK在npm和PyPI上发布。一个免费的网关代理(smoltbot)可以在不更改代码的情况下为任何智能体添加完整性检查。
GitHub: [https://github.com/mnemom](https://github.com/mnemom)
文档: docs.mnemom.ai
演示视频: [https://youtu.be/fmUxVZH09So](https://youtu.be/fmUxVZH09So)