1作者: thefastpath4 个月前原帖
简要概述:构建了一个RPC框架,采用多种方法解决现有的RPC问题。现提供文档预览,寻求反馈以便最终定稿。 <p>在看到关于RPC的相同抱怨反复出现多年后,我花了一年时间构建了一个新的RPC框架,AtomicLinkRPC(ALR)。 <p>同一篇文章每隔几年就会引发热烈讨论: https://reasonablypolymorphic.com/blog/protos-are-wrong/ <p>以及基于该文章的讨论: https://news.ycombinator.com/item?id=21871514 https://news.ycombinator.com/item?id=35281561 https://news.ycombinator.com/item?id=45139656 <p>我已实现了一个具体的端到端解决方案,并发布了文档预览(C++优先): https://atomiclinkrpc.github.io/alr-preview/ <p>简要示例: <p>// service.h class Greeter : public alr::EndpointClass { public: static std::string sayHello(const std::string& name); }; <p>// service.cpp std::string Greeter::sayHello(const std::string& name) { return "Hello " + name; } <p>int main() { return alr::ConnectionInfo() .setListenAddress("0.0.0.0:55100") .listen(); } <p>// client.cpp #include "alr/endpoint.h" #include "client_gen.h" <p>int main() { alr::Endpoint ep = alr::ConnectionInfo() .setConnectAddress("service-host:55100") .connect(); auto result = Greeter::sayHello("World"); // 实际上是RPC printf("%s\n", result.c_str()); return 0; } <p>以下是上述讨论中提出的一些问题的简要列表,以及ALR如何解决每个问题的简要描述。我非常希望听到您对这些方法的批评意见,您认为它们可能出现的问题,以及缺失的部分(但请查看文档链接以获取更深入的细节)。 <p>1) 阻抗不匹配:应用代码为了适应传输而扭曲 - 在ALR中,“消息”和其他RPC特定概念成为低级实现细节,永远不会出现在您的业务逻辑中。可远程调用的类、方法和结构保持干净,不受RPC噪音影响,并与您的业务逻辑1:1映射。无需再编写用户自定义的事件循环/反应器来使RPC工作。也不再需要生成以RPC为中心的数据传输对象(DTO)及其getter和setter。 - ALR使用环境变量系统(请参见文档),这是一组线程局部变量,提供执行RPC所需的所有上下文,而无需在业务逻辑中拖拽上下文变量。只有您自己的干净类、干净函数、干净结构和原生类型。没有噪音。 <p>2) API演变在现实中是破碎的、脆弱的、不一致的或难以使用和维护 - ALR直接使用您的类、方法和结构作为模式,没有脆弱的标签。 - ALR在握手时协商模式和访问者布局映射,并创建交集映射以允许不同版本之间的互操作。 <p>3) 理解和实现RPC框架的学习曲线陡峭 - 除了从ALR基类派生您的可远程调用类外,没有太多新的API需要学习。 - 请查看文档预览链接中的示例,以感受与其他框架相比使用的简便性。 <p>4) 性能 - 基准测试结果显示,ALR的性能显著优于gRPC,具体结果请见文档。我很乐意讨论这些结果为何可能。 <p>针对HN的问题 1. 您认为ALR解决这些问题的方法有哪些缺陷? 2. 如果您有动态远程能力检查失败的反例,我想听听。 3. 我遗漏了哪些RPC痛点,ALR没有解决? 4. 这里或文档中是否有需要更多细节的特定领域? <p>状态与范围 - 这是一个仅限文档的预览。我在冻结接口之前寻求对立的反馈。 - 源代码尚未公开,正在最终确定开源许可证。 - C++是首个支持的语言,计划支持Python、Rust等其他语言。 <p>感谢您抽出时间查看 - 欢迎直接反馈!
1作者: tinatina_AI4 个月前原帖
嗨,HN,我是Tina。 和你们中的许多人一样,我对大型语言模型(LLM)的幻觉感到沮丧——这些输出听起来非常自信,但实际上是虚构的。因此,我创建了CompareGPT.io,这是一个工具,可以: - 在多个LLM(如ChatGPT、Gemini、Claude、Grok等)上运行相同的查询 - 并排显示结果,以便更容易发现差异(和幻觉) - 提供统一的API,便于集成 我们刚刚开放了候补名单(并提供半价的早鸟优惠和终身计划赠送)。 我很想听听这个社区的反馈:你们认为多模型一致性是否可以成为减少法律、金融或研究领域幻觉的标准方法? 谢谢!
2作者: huevosabio4 个月前原帖
如果宝可梦实际上是聪明的呢? 大家好,我是拉蒙——这正是我的工作室正在研发的内容!我们正在制作《阿利昂:战斗之声》,这是一款怪物训练师游戏,游戏中的生物栩栩如生,能够独立思考和行动,就像直接从动漫中走出来的一样! 与众不同之处: • 准备:通过语音和示范训练你的怪物,创造出在战斗中使用的致命技能。 • 即兴发挥:物理驱动的竞技场会随着战斗而变化——将火焰化为蒸汽,制造坑洞,重塑掩体。 • 亲密关系:阿利昂能够理解自然语言,拥有个性和记忆,你们的关系会随着时间的推移而加深。在战斗间隙,你可以和它们一起放松、聊天和玩耍。 如果这听起来符合你的兴趣: Steam愿望单(非常有帮助):[https://store.steampowered.com/app/3987700/Allyon_Battlecry/](https://store.steampowered.com/app/3987700/Allyon_Battlecry/) 加入Discord以参与游戏测试和反馈:[https://tinyurl.com/allyonbattlecry](https://tinyurl.com/allyonbattlecry) 谢谢,我期待听到你的想法!