原贴链接

这是一个指向https://github.com/nobodywho - ooo/nobodywho的链接,未提供更多实质内容。

讨论总结

这个讨论围绕着NobodyWho插件在Godot游戏引擎展开。开始有人对插件功能产生误解,随后有人说明其实际用途,还提到已有相关编码助手。接着有人分享使用其他工具创建文件的经历,也谈及工具调用发布后的便利性、基于插件构建AI系统等。还有人质疑用rust制作绑定cpp插件的必要性,对此有人阐述rust相比cpp在安全性等方面的优势。

主要观点

  1. 👍 对插件功能存在初始误解
    • 支持理由:FullstackSensei表示一开始以为是集成到Godot编辑器的编码助手插件。
    • 反对声音:无
  2. 🔥 插件实际用途为玩家在运行时与之交互
    • 正方观点:ex - ex - pat明确指出。
    • 反方观点:无
  3. 💡 rust相比cpp与GDExtension结合有多种优势
    • 解释:No_Abbreviations_532认为rust有更好的安全性、工具性和人体工程学优势,ex - ex - pat详细解释rust的安全性相关特性等。
  4. 💡 已有针对Godot的LLM编码助手
    • 解释:ex - ex - pat提到这一情况。
  5. 💡 使用cursor创建文件有较好体验
    • 解释:No_Abbreviations_532分享相关经历。

金句与有趣评论

  1. “😂 For a second I got excited thinking it’s a coding assistant plug - in that Integrates into the Godot editor”
    • 亮点:反映出对插件功能的误解。
  2. “🤔 Nah, it’s meant for the player to interact with it at runtime.”
    • 亮点:明确插件实际用途。
  3. “👀 Rust gives better safety, tooling, and ergonomics compared to using raw cpp with GDExtension.”
    • 亮点:对比rust和cpp优势。

情感分析

总体情感倾向较为理性客观。主要分歧点在于rust制作绑定cpp插件是否有必要,原因是部分人从已有cpp编写的情况出发质疑,而另一方从rust自身特性出发阐述其优势。

趋势与预测

  • 新兴话题:rust在插件开发中的更多应用探讨。
  • 潜在影响:可能影响Godot游戏引擎插件开发方向选择。

详细内容:

标题:Godot 游戏引擎中本地 LLMs 插件 NobodyWho 的热门讨论

在 Reddit 上,有一个关于“NobodyWho: a plugin for local LLMs in the Godot game engine”的帖子引发了广泛关注。该帖子提供了相关的链接:https://github.com/nobodywho-ooo/nobodywho ,获得了众多的点赞和大量的评论。

帖子主要引发了关于这个插件的用途、优势以及与其他类似尝试的比较等方向的讨论。

文章将要探讨的核心问题是:这个插件在 Godot 游戏引擎中的实际价值和应用前景,以及它与其他相关技术的差异和优势。

讨论焦点与观点分析:

有人一开始兴奋地认为这是一个能集成到 Godot 编辑器的编码助手插件。但有人指出它是为玩家在运行时进行交互准备的。有人回忆起曾有类似的尝试,如 https://github.com/minosvasilias/godot-copilothttps://github.com/minosvasilias/godot-dodo

有用户分享道:“我使用 cursor 创建 godot.tscn 文件有很多不错的体验,特别是在生成 UI 布局时,因为我觉得自己做很繁琐。”但也有人提出:“能给些建议吗?我尝试过同样的事情但有很多不好的经历。您是在提示中向 cursor 提供多个 tscn 文件(以供其比较)?还是提供图像来告诉模型当前布局的样子(或您想要的样子)?”

有人认为可以基于环境让它决定角色的动作,自动编程 AI 系统。还有人认为在发布工具调用后,能创建 LLM 可用的代理动作,例如开门或出售库存物品。

有人提到它很擅长将自然语言转换为一系列 API 调用,但结构可能会很难。

对于插件使用 Rust 的问题,有人提出疑问:“这只是 llama-cpp 的 Rust 绑定。用 Rust 做一个绑定 cpp 的插件有什么意义,明明有直接通过 gdextension 可绑定的用 cpp 写的 llama-cpp?”而有用户回应道:“Rust 能提供更好的安全性、工具和人体工程学,与使用原始 cpp 和 GDExtension 相比。通过用 Rust 包装 llama.cpp,能获得 llama.cpp 的性能以及 Rust 安全性和生态系统的好处。而且我们不想整天写 cpp 。”还有人进一步询问安全方面的好处,有用户详细解释道:“Rust 有很多有助于安全的巧妙特性。像结果类型、适当的总和类型(Rust 枚举)和不可变类型等一些东西有助于使无效状态无法表示。Rust 的内存模型在保证线程安全和避免硬内存错误(否则会导致段错误)方面有很大帮助。当然,使用 Rust 并不能为 llama.cpp 或 Godot 中的 C++代码引入内存安全保证,但它确实有助于使插件代码更强大。与之前用 Nim 编写的插件版本(https://gitlab.com/nobodywho/nobody )相比,在那个版本中,我们在跨线程和跨多种内存模型(Godot、Nim 和 llama.cpp 处理内存的方式都不同)共享内存方面有很多问题。用 Rust 重建在检测和避免与共享内存相关的问题上有很大帮助。”

讨论中的共识在于大家都在探讨这个插件的特点和潜在应用。特别有见地的观点如关于 Rust 优势的详细解释,丰富了对这个插件技术层面的理解。