返回首页
最新
在面对无尽的选择时,如何决定自己的职业道路或人生目标,而其中许多选择可能并不会成功呢?
我们已经构建了数据管道,能够抓取网站并提取结构化数据有一段时间了。如果你也做过这项工作,你就知道流程是怎样的:你编写CSS选择器,网站更改布局,凌晨2点一切崩溃,早上你花时间重写解析器。
大型语言模型(LLMs)似乎是显而易见的解决方案——只需将HTML扔给GPT,请求JSON。然而,实际上,这比想象中要复杂得多:
- 原始HTML中充满了导航栏、页脚和跟踪垃圾,这些都消耗了你的令牌预算。一个典型的产品页面中有80%是噪音。
- LLM返回的JSON格式错误的情况比你预期的要多,尤其是在处理嵌套数组和复杂模式时。一个错误的括号就可能导致你的管道崩溃。
- 相对URL、Markdown转义链接、跟踪参数——当你处理数千个页面时,“小”URL问题迅速累积。
- 你最终会写出相同的模板代码:HTML清理 → Markdown转换 → LLM调用 → JSON解析 → 错误恢复 → 模式验证。一次又一次。
我们厌倦了为每个项目重建这个堆栈,因此我们将其提取到一个库中。
Lightfeed Extractor是一个TypeScript库,处理从原始HTML到经过验证的结构化数据的完整管道:
- 将HTML转换为适合LLM的Markdown,提取主要内容(去除导航、标题、页脚),可选的图像包含和URL清理。
- 兼容任何LangChain的LLM(OpenAI、Gemini、Claude、Ollama等)。
- 使用Zod模式进行类型安全的提取和真实验证。
- 从格式错误的LLM输出中恢复部分数据,而不是完全失败——如果20个产品中有19个解析正确,你将获得这19个。
- 通过Playwright实现内置浏览器自动化(本地、无服务器或远程),并附带反机器人补丁。
- 与我们的浏览器代理(@lightfeed/browser-agent)配对,在提取之前进行AI驱动的页面导航。
我们在Lightfeed的生产环境中自己使用这个工具,它的稳定性足够好,因此我们决定将其开源。
GitHub: [https://github.com/lightfeed/extractor](https://github.com/lightfeed/extractor) npm: npm install @lightfeed/extractor Apache 2.0许可证。
欢迎提问或反馈。
我开发了 kbot——一个终端人工智能代理,它能够从每次会话中学习,并在遇到无法解决的问题时创造新工具。
它的不同之处在于:自我提升(贝叶斯技能路由随着时间的推移变得更加智能);工具创造(遇到空白时,构建工具,工具永久存在);自我防护(HMAC 内存完整性,提示注入检测)。拥有 368 个工具、41 个代理和 19 个本地模型。完全离线,费用为 $0。梦境模式(在闲置时自我提升)。采用 MIT 许可证。
kbot 在 30 秒内创造工具的演示: [https://raw.githubusercontent.com/isaacsight/kernel/main/tools/video-assets/demo-forge-real.gif](https://raw.githubusercontent.com/isaacsight/kernel/main/tools/video-assets/demo-forge-real.gif)
使用命令安装:npm install -g @kernel.chat/kbot