1 分•作者: ingve•5 个月前
返回首页
最新
1 分•作者: ludovicianul•5 个月前
1 分•作者: tomasz-tomczyk•5 个月前
1 分•作者: snthpy•5 个月前
您好,
我想听听大家对 AI Agent 生态系统中不同组件的看法。我发现目前的术语非常令人困惑,因为在研究可用选项时,我并不总是清楚我实际会得到什么。
很多东西都被称为 Agent,但这个术语似乎很难定义,因为它通常指代重叠的功能。对我来说,Agents 目前似乎由以下组件构成:
## Harnesses (控制框架)
* 在 LLM 周围添加 UI 和系统指令,并且可能通过记忆、工具调用等方式对其进行增强。
* 例如:Claude Code, Code, Gemini CLI, pi.dev, ...
## Gateways (网关)
* 这些将 Agents 连接到您选择的通信工具,例如 Whatsapp、Telegram、Slack、Discord 等。
* 例如:OpenClaw 和 Nanoclaw
## Sandboxes (沙盒)
* 隔离的环境,Agents 可以在其中以有限或可审计的功能运行。
* 例如,可以是物理沙盒,如独立的 Mac Mini,也可以是 docker-agent、agent-sandbox、localsandbox 等。
然后,我们进入 *Agents*:
## Agents (智能体)
* 能够行使一定自主权的 AI 系统,即在没有人工干预的情况下具有一定程度的自主行为。
* 这些通常结合了以下组件:
```
- **LLM**: 提供智能/推理/决策能力
- **Harness**: 引导行为并实现超越当前上下文窗口限制的长期行为一致性
- **Gateway**: 与人类和/或其他 Agents 交互
- **Sandbox**: 旨在将 Agent 的能力限制在一组经过批准的安全操作中,以便 Agent 自主执行。
```
我的问题是,当我查看可用选项时,通常不清楚我得到了哪些组件:
```
- https://github.com/openclaw/openclaw: Typescript,OG,一站式解决方案,最容易安装,但显然有点像“科学怪人”,而且很复杂
- https://github.com/qwibitai/nanoclaw: Typescript,越来越受欢迎,极简主义,实现似乎依赖于 Claude Code 来处理安装和配置
- https://github.com/sipeed/picoclaw: Golang
- https://github.com/zeroclaw-labs/zeroclaw: Rust
- https://github.com/nullclaw/nullclaw: Zig
- https://nemoclaw.bot/: 由 Nvidia 推出,声称是“基于”开源,但我找不到代码库
```
我真正希望的是能够组装自己的 Sandbox + Gateway + Harness + LLM 堆栈。有什么想法/建议吗?
67 分•作者: PaulHoule•5 个月前
143 分•作者: enz•5 个月前
1 分•作者: Brajeshwar•5 个月前
1 分•作者: dither8•5 个月前
1 分•作者: javatuts•5 个月前
1 分•作者: gemcoin•5 个月前
1 分•作者: surprisetalk•5 个月前
1 分•作者: surprisetalk•5 个月前
1 分•作者: surprisetalk•5 个月前
2 分•作者: surprisetalk•5 个月前
1 分•作者: codon•5 个月前
18 分•作者: peterlavigne•5 个月前
1 分•作者: aleda145•5 个月前
26 分•作者: tathagatadg•5 个月前
课程发生了哪些变化?教授们会告诉学生们什么,来解释他们所选的课程为什么值得如此严谨地学习?学生们买账吗?课程结束时,实际情况是否与预期相符?从“它已经过时了”到“它比以往任何时候都好”的持续摇摆中,很难真正了解情况。我既为自己的职业生涯感到担忧,也为我的侄子们感到担忧。我该给他们什么建议呢?我这一辈子都在倡导计算机科学作为一种有前途的职业选择。
附:我已经转型到成为一名最佳时机的自由职业者。“那大学怎么办呢?”
1 分•作者: bastianplsfix•5 个月前
我用 Tailwind 和 React,并且一直在不同项目中复制相同的微小模式:一个 cn 辅助函数(clsx + tailwind-merge)和一个用于变体类的类型化 Record 查找。
最终,我把它放进了一个包里,这样我就不用重复劳动了。它导出了 cn 和 variants,一个接受变体名称到类映射并返回类型化查找的函数。复合变体只是 cn() 内部的条件语句。
它并不试图取代 cva 或 tailwind-variants。如果你需要 defaultVariants、slots 或响应式变体,它们非常棒。这只是我在实践中实际用到的子集。
很乐意听取其他人的想法,或者我是否遗漏了显而易见的东西。
7 分•作者: yusufaytas•5 个月前