2作者: prabhavsanga2 天前原帖
嗨,HN!我开发了 LayerClaw(https://github.com/layerclaw/layerclaw),这是一个以本地为中心的 PyTorch 训练可观察性工具。 问题:在训练神经网络时,很多问题都是悄无声息地发生的。你的损失在第 47,392 步时爆炸;你的梯度在第 12 层消失;你的 GPU 内存随机飙升。等你注意到这些问题时,可能已经浪费了数小时或数天的计算资源。 我厌倦了添加打印语句、手动检查 TensorBoard 文件以及事后追踪训练问题。现有的工具要么需要云账户(如 W&B、Neptune),要么对于快速实验来说太过笨重(如 MLflow、用于梯度分析的 TensorBoard)。 LayerClaw 的功能: - 在训练过程中自动跟踪梯度、指标和系统资源 - 所有数据都存储在本地(使用 SQLite + Parquet,无需云服务) - 检测异常:梯度爆炸、NaN/Inf 值、损失峰值 - 提供命令行界面(CLI)以比较运行结果:`tracer compare run1 run2 --metric loss` - 异步写入的开销极小(约 2-3%) 快速示例: ```python import tracer import torch # 初始化(只需一行) tracer.init(project="my-project", track_gradients=True) # 你的正常训练循环 model = YourModel() tracer._state.tracer.attach_hooks(model) for batch in dataloader: loss = train_step(model, batch) tracer.log({"loss": loss.item()}) tracer.step() tracer.finish() ``` 然后分析:`tracer anomalies my-run --auto` 与其他工具的不同之处: 1. 本地优先:无需注册,无数据离开你的机器,无供应商锁定 2. 专为调试设计:内置深度梯度跟踪和异常检测(不是事后添加的功能) 3. 轻量级:在你的训练循环中只需添加两行代码,开销极小 4. 兼容所有框架:原生 PyTorch、HuggingFace Transformers、PyTorch Lightning 当前限制(v0.1.0): - 仅支持 CLI(计划在 v0.2 中推出 Web UI) - 单机训练(分布式支持即将推出) - 处于早期阶段,欢迎对最有用的功能提供反馈 现在可用: - GitHub: https://github.com/layerclaw/layerclaw *我在寻找贡献者!* 我已经创建了几个“适合新手的问题”,欢迎任何有兴趣贡献的人。需要帮助的领域: - 可视化的 Web UI - 分布式训练支持 - 更多框架集成 - 实时监控仪表板 如果你之前在机器学习训练中遇到过问题,我非常希望听到你认为最有价值的意见。欢迎提交 PR,或者如果你觉得这个项目有趣,请给仓库加星! 什么功能会让这个工具成为你工作流程中不可或缺的一部分?
1作者: hleszek2 天前原帖
我提交了一个 llama.cpp Notebook 的 PR,以在官方的 llama.cpp webui 中添加一个 Notebook 页面。现在我不再需要 text-generation-webui 来实现 Notebook 功能,并且可以随时使用最新的 llama.cpp 特性,而无需等待 llama.cpp Python 绑定的更新。
1作者: haqaliz2 天前原帖
嗨,HN!我是Rereflect的创始人。 我在看到团队(包括我自己的团队)在电子邮件、Slack、支持票和调查中分散的客户反馈中苦苦挣扎后,决定开发这个工具。宝贵的见解总是被遗忘。 它的功能包括: • 自动分析情感 • 分类痛点(如bug、用户体验问题、定价顾虑等) • 提取功能请求 • 标记流失风险 • 所有功能都可以通过一个仪表板访问 技术栈:FastAPI + PostgreSQL后端,Next.js前端,自定义AI分析引擎。 免费计划:每月250条反馈项。只需上传CSV文件即可开始使用。 我非常希望得到HN社区的反馈: - 什么能让这个工具更有价值? - 哪些集成最重要?(Slack、邮件转发、Webhooks?) - 你们目前是如何处理反馈的? 欢迎随时提问! 试用链接: [https://app.rereflect.ca](https://app.rereflect.ca)
9作者: bhaktatejas9222 天前原帖
我整天在审查PR(拉取请求),基本上已经停止仔细阅读它们了。有人提交一个2000行的PR,我只是滚动查看,发现大部分是AI生成的React组件,留个评论,然后合并。我对此感到不安,直到我意识到我团队中的每个人都在做同样的事情。 问题在于差异(diff)的格式不对。一个PR可能会改变三个按钮的行为。盯着绿色和红色的行来理解这一点简直疯狂。 我们构建这个工具的核心原因是,我们觉得今天的产品是基于过去的假设构建的。100倍的代码和相同的审查系统意味着需要100倍的人类关注。人类的注意力无法扩展到满足这种需求,因此我们构建了不同的东西。人们与视频内容的互动明显比与文本内容更为投入。 因此,我们通过强化学习训练并构建了一个代理,它在你打开PR时观察你的预览部署,点击更改的内容,并在PR中发布一个视频。 最困难的部分是找出更改的代码在运行的应用程序中的实际位置。一个差异可能会说Button.tsx第47行已更改,但这并不能告诉你如何找到那个按钮。我们遍历React的Fiber树,每个节点都映射回源文件,因此我们可以追踪到DOM元素的边界框的更改。然后我们对模型在其中展示和互动给予奖励。 显然,这只适用于React,因此在推广到所有语言时我们需要更加聪明。 我们训练了一个强化学习代理与这些组件互动。简单的奖励机制:将修改的内容进入视口得分,点击或输入得双倍分。它大约30%的行为是奇怪的,比如部分表单提交、中途按下Esc键,因为真实用户会这样做,而礼貌的AI模型不会自己测试这些情况。 这可以捕捉到单元测试完全遗漏的内容:z-index错误,即某些东西渲染了但你无法点击,滚动容器将你困住,处理程序静默失败等。 目前存在的问题包括:功能标志、存储不同用户状态,以及任何需要未提供上下文的内容。 欢迎免费试用: [https://morphllm.com/dashboard/integrations/github](https://morphllm.com/dashboard/integrations/github) 演示视频: [https://www.youtube.com/watch?v=Tc66RMA0nCY](https://www.youtube.com/watch?v=Tc66RMA0nCY)
4作者: fliellerjulian2 天前原帖
我们是一家YC W23的公司,专注于为工程实验室构建人工智能代理。我们的客户需要重复进行类似的分析,而代理在每次会话中都像一张白纸一样处理。 我们考察了Mem0、Letta/MemGPT以及其他类似的记忆解决方案。它们解决的是不同的问题:存储对话中的事实——“用户偏好Python”,“用户是素食者”。这是一种带有语义搜索的键值记忆,虽然有用,但并不是我们所需要的。 我们需要的是一种能够从用户行为中隐式学习模式的系统。当客户连续三次将阈值从85%修正为80%时,代理应该能够在下次会话中自动识别这一点。当一个团队总是使用更严格的过滤条件重新运行时,系统也应该能够捕捉到这一模式。 因此,我们围绕一个简单的想法构建了一个内部API:用户的修正是最有价值的数据。我们不是简单地摄取聊天信息并希望大型语言模型(LLM)能提取出有用的信息,而是捕捉结构化事件——代理生成了什么,用户更改了什么,他们接受了什么。后台作业定期运行LLM,以提取模式并为每个用户/团队/组织构建一个带有置信度加权的偏好档案。 在每次会话之前,代理会获取该档案,并随着时间的推移变得更加智能。 我看到的差距是: Mem0 = 记忆存储 + 检索。无法学习模式。 Letta = 自我编辑代理记忆。更接近,但没有从行为中隐式学习。 缺失的是一个偏好学习层,它观察用户如何与代理互动,并构建一个不断演变的模型。就像一个用于代理个性化的推荐引擎。 我为我们的领域构建了这个系统,但这种方法是领域无关的。我很好奇其他人在他们的代理中是否也遇到了同样的瓶颈。乐意详细分享架构、提示和置信度评分的方法。