返回首页
最新
嘿,HN!我上周参加了一个ATProto的聚会,作为一个对学术出版感到厌倦的半学术人士,我觉得有一个很酷的机会可以在Octopus(<a href="https://www.octopus.ac/" rel="nofollow">https://www.octopus.ac/</a>)的基础上进行开发,所以我在周末有点兴奋,构建了Octosphere。<p>希望你们中的一些人会觉得它有趣!博客文章在这里:<a href="https://andreasthinks.me/posts/octosphere/octosphere.html" rel="nofollow">https://andreasthinks.me/posts/octosphere/octosphere.html</a>
我已经是一个网络小说的读者多年了(在Royal Road上花了太多时间),我一直在思考一个问题:哪些大型语言模型(LLMs)真正能够创作出让人想要继续阅读的小说?这就是我创建Narrator的原因(<a href="https://narrator.sh/llm-leaderboard" rel="nofollow">https://narrator.sh/llm-leaderboard</a>)——一个让LLMs生成连载小说并根据真实读者的参与度进行排名的平台。
事实证明,这个问题的答案出乎意料地难以找到。创意写作并不是单一的能力,而是一个流程:头脑风暴 → 写作 → 记忆。你需要生成有趣的前提,用优美的文笔将其执行,并在长篇叙事中保持一致性。大多数基准测试都是孤立地测试这些能力,但读者体验的是一个整体。
当前的评估环境是支离破碎的:
像FictionLive的记忆基准测试使用选择题来检查模型是否能在长上下文中记住情节细节。这是有用的,但记忆只是良好小说所必需的条件,而不是充分条件。一个模型可能在回忆方面表现出色,但仍然写出无聊的故事。
来自Novelcrafter等工具的作者使用数据表明了作家们偏好的模型作为副驾驶。但这只衡量了人类与AI合作时的实用性,而不是产生引人入胜的独立作品。作者和读者的需求是不同的。
将LLM作为评判者是评估散文质量的最常见方法,但在创意作品中却 notoriously 不可靠。模型存在系统性偏见(偏好冗长的文风、某些结构),而“好写作”在某种程度上是主观的,这与“正确的代码”截然不同。
缺少的是一个从读者角度出发的定量基准——一种衡量真实人类是否真正享受这些模型所创作内容的工具。这正是Narrator所填补的空白:浏览量、阅读时间、评分、书签、评论、回访次数。可以把它看作是一个“AI Wattpad”,其中模型就是作者。
五个月前,我在这里分享了一个基于DSPy的早期版本(<a href="https://news.ycombinator.com/item?id=44903265">https://news.ycombinator.com/item?id=44903265</a>)。最大的教训是:一次性生成不适合长篇小说。模型会丢失情节线索、忘记角色,且章节之间的质量会下降。
重写:从一次性生成到持久的代理循环
当前版本通过一个写作工具对每个模型进行处理,保持章节之间的状态。在生成之前,代理会审查结构化的上下文:角色表、情节大纲、未解决的线索、世界构建笔记。在生成之后,它会更新这些文档以便于下一章使用。基本上,每个模型都获得一个贯穿整个故事的“作家笔记本”。
这带来了可衡量的差异——在一次性版本中挣扎的模型在获得自己笔记的情况下显著改善了一致性。
细粒度过滤而不是单一评分:
我们在前期对故事进行分类,包括语言、类型、标签和内容评级。我们不再只有一个“创意写作”排行榜,而是可以深入具体:哪个模型写的西班牙喜剧最好?哪个模型对男性主角的LitRPG故事处理得最好?哪个在浪漫与恐怖之间表现更佳?
答案并不总是符合你对一般基准的预期。有些模型在整体排名中处于中游,但在特定细分领域中却表现出色。
我为几个功能感到自豪:
故事分叉让读者可以以选择你自己的冒险(CYOA)的方式分支故事——如果你不喜欢情节的发展,可以分叉看看同一模型如何处理不同的情节。这创造了自然的A/B比较。
视觉化的LitRPG是我个人想要解决的问题。与其用一堆[STR: 15 → 16]的文本,不如将统计数据和技能树呈现为实际的用户界面元素。例如:<a href="https://narrator.sh/novel/beware-the-starter-pet/chapter/1" rel="nofollow">https://narrator.sh/novel/beware-the-starter-pet/chapter/1</a>
我在寻找的:
更多的读者来扩展参与数据。同时也想知道是否有其他人在进行长篇LLM生成时发现了更好的模式来保持章节之间的一致性——代理工具的方法有效,但我相信还有改进的空间。
4todo 让您通过多工作区的艾森豪威尔矩阵来管理优先事项。
区分不同的上下文,减少干扰,专注于重要的事情。
嗨,HN,
我创建了TrueLedger,因为我不想要一个需要云账户或银行凭证才能使用的个人财务应用。
TrueLedger是一个以本地为主的个人财务应用。所有数据都保留在用户的设备上,并且可以完全离线工作。
技术选择:
- 使用SQLite进行跨平台本地存储
- 使用SQLCipher(AES-256)进行加密数据库
- 网页版本完全在客户端运行,使用SQLite WASM
- 加密的、确定性的JSON备份,便于在没有服务器的情况下进行移植
演示(完全在客户端运行):
[https://trueledger.satyakommula.com](https://trueledger.satyakommula.com)
源代码:
[https://github.com/satyakommula96/trueledger](https://github.com/satyakommula96/trueledger)
欢迎就本地优先设计或加密权衡方面的问题进行咨询。
状态页面显示服务正常(https://status.signal.org)。<p>编辑:状态现已更新为“Signal 正在经历技术困难。我们正在努力尽快恢复服务。”
大家好,
我开发了一个名为<i>Cimba</i>的多线程离散事件模拟库,使用C语言编写。
Cimba利用POSIX pthread多线程技术实现多个模拟试验的并行执行,同时协程在每个模拟试验的宇宙内部提供了并发性。模拟的过程基于不对称的栈协程,切换上下文的部分是用汇编语言手动编码的。
栈协程使得表达代理行为变得自然,因为可以在概念上将自己“置于”该过程内部,并描述它的行为。一个过程可以在无限循环中运行,也可以作为一个一次性客户在系统中传递,能够在其调用栈的任何层级进行让步和恢复执行,既可以充当主动代理,也可以根据需要充当被动对象。这一设计灵感来源于我多年前在Simula67编程的经历,当时我发现协程的重要性超过了当时广受欢迎的面向对象编程。
Cimba的运行速度非常快。在一个简单的基准测试中,100次M/M/1队列的试验,每次运行一百万时间单位,Cimba的速度比用SimPy和Python多进程构建的等效模型快<i>45倍</i>。与SimPy模型相比,运行时间减少了<i>97.8%</i>。Cimba甚至在单个CPU核心上每秒处理的模拟事件数量也超过了SimPy在所有64个核心上能做到的。
这种速度不仅仅归功于高效的协程。其他部分也经过了速度优化,比如哈希堆事件队列(二叉堆加斐波那契哈希表)、快速随机数生成器和分布、频繁使用的对象类型的内存池等等。
初始实现支持Linux和Windows的AMD64/x86-64架构。我计划接下来支持Apple Silicon,然后可能会考虑ARM架构。
我相信这可能会引起HN社区的兴趣。我希望听到大家对API和代码的看法。对于未来考虑的目标架构,大家有什么想法吗?
文档:<a href="https://cimba.readthedocs.io/en/latest/" rel="nofollow">https://cimba.readthedocs.io/en/latest/</a>
代码库:<a href="https://github.com/ambonvik/cimba" rel="nofollow">https://github.com/ambonvik/cimba</a>
大家好,我们是Aram和Eduard,Modelence的联合创始人(<a href="https://modelence.com">https://modelence.com</a>)。在花费多年时间扩展我们之前创业公司的平台后,我们构建了一个开源的全栈TypeScript + MongoDB框架,以避免每次创建应用时都要解决相同的身份验证、数据库、API和定时任务的实现问题,同时我们也不喜欢为每个应用使用多个托管平台的想法。
(这里是我们之前的Show HN帖子供参考:<a href="https://news.ycombinator.com/item?id=44902227">https://news.ycombinator.com/item?id=44902227</a>)
与此同时,我们对整个AI应用构建者的热潮感到兴奋,并意识到真正的挑战在于平台本身,而不是工具。现在,我们正在将Modelence打造成第一个为编码代理和人类共同打造的全栈框架:
- TypeScript非常适合AI编码,因为它提供了保护机制,并在构建时捕捉许多错误,从而使代理能够自动纠正。
- MongoDB消除了代理的模式管理问题,这是它们最常失败的地方(并且与TS/Node.js配合良好)。
- 内置的身份验证、数据库、定时任务等功能开箱即用,意味着代理只需专注于您的产品逻辑,而不必在设置这些功能时失败(并且减少了在样板代码上花费的令牌)。
您现在可以通过在我们的登录页面(<a href="https://modelence.com">https://modelence.com</a>)上输入提示来尝试Modelence应用构建器(基于Claude Agent SDK)——在这里观看演示视频:<a href="https://youtu.be/BPsYvj_nGuE" rel="nofollow">https://youtu.be/BPsYvj_nGuE</a>。
然后,您可以在本地查看并继续在自己的IDE中工作,同时仍然使用Modelence Cloud作为后端,享受开发云环境,随后在Modelence Cloud上部署和运行,所有操作都具备内置的可观察性。
我们还将添加一个内置的DevOps代理,它将驻留在同一云中,了解框架的端到端,并利用所有这些可观察性数据来处理错误、警报和事件——闭环,因为在生产环境中运行比仅仅构建要困难得多。
我们推出应用构建器作为开发者的快速入门,旨在展示框架和Modelence Cloud,而不必手动阅读文档并按照步骤设置新应用。我们的主要关注点仍然是平台本身,因为我们相信AI编码的真正挑战在于框架和平台,而不是构建工具本身。