英文原文: https://argusic.com/subject/vmprint

vmprint

该布局引擎可以解决可想象的最困难的布局问题。其输出达到桌面出版级且具有确定性。它比用 C++ 编写的引擎更快,因为它不是传统的。基于游戏引擎技术,它采用微内核,运行时空模拟,而不是庞大的复杂分页循环。

可运行来源:GitHub项目主页TypeScriptApache-2.0commit a69394f06aa0

TypeScript,Apache-2.0 许可证. 项目的自我描述:bidirectional text、canvas、document、headless browser、layout engine、markdown to pdf、multilingual 和 pdf.

vmprint 可以运行。一个 Argusic agent 在一台没有 GPU 的干净机器上用 3 分钟完成了安装,遇到 4 个错误,整个会话都被记录了下来。

vmprint CLI and engine ran in this container on Node 18 despite EBADENGINE install warnings: npm test exited 0 (engine 77+77 fixtures, packaged-integration 1 page/1107 bytes), the CLI rendered valid text-bearing PDFs with bundled local fonts and version 0.1.0, and engine.layout() produced 1 page x 1 box containing 'Hello, world.';

agent 在干净的机器上最终得到的结果,用它自己的话说。 测量方式

每一次都由 Argusic 在全新机器上实测。每个数字都链接到对应的证据。 Argusic 评分 80,满分 100(该项目各次运行得分的平均值)。

概览

结论
可运行
Argusic 评分
80 / 100
验证运行的成本
0.04 USD(实测)
已记录的运行次数
1
最近测试
星标
679
fork 数
30
未关闭的 issue
1
关注者
10
大小
107 MB
创建于
最近推送

项目数据来自 GitHub,链接见本页顶部,更新于 。测试数据由 Argusic 提供 (CC BY 4.0);每个数字都链接到一个运行页面,附完整的 log、录屏及其 sha256 哈希。

测量了什么

来自决定该结论的那次运行。 每一行都是记录下来的数值,而非估算。

测试 vmprint 时每个故障耗费的时间,取自已记录的运行
每一根柱子都是 agent 记录的一次失败,以及它耗费的时间。数据仅取自本次运行。

哪里出了问题,用 agent 自己的话说

agent 的原话,最严重的排在最前,从不改写成建议。

  • QUICKSTART code path broken: PdfContext has no waitForFinish(); renderLayout ignores the passed fontManager and crashes on getFontRegistrySnapshot40 分钟
  • README/QUICKSTART example (story with inline content, no styles) fails loadDocument and lays out 0 pages; story text only flows via children30 分钟
  • npm install warned EBADENGINE for commander@14, lru-cache@11, rimraf@6 (require Node >=20; container has Node 18.19.1)
  • vmprint --render-from-layout does not write the PDF (only end() is called)
安装时间
3 分钟
从冷启动机器到完成
18 分钟
遇到并修复的错误
遇到 4 个,在无人协助的情况下修复了 0 个
结果是如何证明的
npm test exited 0 with engine OK (77 fixtures) x2 and '[packaged-integration] OK: 1 page(s), 1107 bytes'; node cli/dist/index.js -V printed 0.1.0; CLI rendered 3 fixture PDFs exit 0 with cold layoutMs and 1-page streams; PDFs are structurally valid (%PDF-1.3, 1 /Page, %%EOF, embedded ToUnicode fonts) and the rendered glyph stream decodes to 'Hello, world.'; engine.layout() returned 1 page/1 box (72,72,451,18.09) whose line text is 'Hello, world.' with 13 glyphs
使用的模型 token
1,412,346
测试的确切 commit
a69394f06aa0
容器镜像
sha256:cdd920bce783

没有测量什么

另一半内容,让你清楚看到这些证据能说明到什么程度。缺失的数据就标为缺失,从不填补。

GPU 显存峰值
本次运行在 CPU 机器上进行,没有可采样的 GPU
长时间运行的表现
每次尝试都使用文档中最小的设置和固定的时间预算,因此这里测量的是它能否运行,而不是它在负载下的表现

录屏的结尾

决定该结论的终端会话的最后几行,与录制时完全一致。

- Inline decoding: page 1's rendered literal glyphs decode to exactly the sentence "Hello, world." …
- Engine API: `loadDocument` → `new VMPrintEngine(...)` → `engine.layout()` produced 1 page, 1 box …
**Errors hit and fixed**
- README/QUICKSTART: Example document's element `{"type":"story","content":"Hello, world."}` produc…
- README Quickstart code: `context.waitForFinish()` doesn't exist on `PdfContext` (no `waitForFinis…
- `engine.layout()` on a story without children returns 0 pages, and `vmprint --render-from-layout`…
No third-party credentials or mocks were needed; everything ran with the repo's bundled fonts. `fin…
exec
/bin/sh -lc true in /work/repo
 succeeded in 0ms:
tokens used
1,412,346

回放完整会话,从干净的机器到此刻的每一条命令。

测试方式

一个 agent,一个容器,没有人工协助。它按照项目自身文档所写的方式安装项目,运行它,并修复出错的地方。下面的一切都按实际发生的过程记录:终端会话、log 和确切的 commit。 完整方法论.

优势与局限

均为实测事实,而非观点。内容是如何撰写的.

顺利的部分

  • 在干净的机器上达到了运行状态,会话有完整记录。
  • 用 3 分钟完成安装。
  • 无需 GPU 即可运行,因此启动它并不需要 GPU。
  • 采用 Apache-2.0 许可证,以其托管平台报告的信息为准。

不顺利或尚不清楚的部分

  • 搭建过程中遇到 4 个错误,其中 4 个没有解决。
  • 目前只测量过一次。单次尝试只能说明它可以运行,不能说明它能稳定运行。

适合用于

  • 在笔记本电脑或小型服务器上试用:它无需 GPU 即达到了运行状态。
  • 快速评估:克隆后 3 分钟它就已经运行起来。

同一领域中也测试过的项目

这里的每个项目都由 Argusic 在干净的机器上安装并运行过。未经测试的项目不会出现在这里。

运行历史

测试者尝试结果评分成本 USD时间
Argusic Runner1/3可运行80.000.04

主题 (来自 GitHub)

bidirectional-textcanvasdocumentheadless-browserlayout-enginemarkdown-to-pdfmultilingualpdfpdf-exportpdf-generationpdf-viewerpdfjspublishingpuppeteerreact-pdftext-renderingtypescripttypesettingtypst

嵌入徽章

用于项目 README 的 Markdown。徽章链接回本页;使用条款见 条款页面.

[![Tested by Argusic](https://argusic.com/badge/vmprint.svg)](https://argusic.com/subject/vmprint)

常见问题

vmprint 能运行吗?
是的。vmprint 可以运行. Argusic 在一台干净的机器上安装并启动了它,用时 3 分钟,过程中遇到 4 个错误,并记录了整个会话。
Argusic 是如何测试 vmprint 的?
在一台全新的一次性机器上进行,每条命令都被记录,仓库固定在 commit a69394f06aa0。共记录了 1 次尝试,完整方法见方法论页面。
测试 vmprint 花了多少钱?
得出该结论的那次运行花费 0.04 USD:这是真实的算力和模型成本,而不是按每百万 token 计的标价。该数字记录在那次运行的页面上。
vmprint 安装需要多长时间?
在决定该结论的那次运行中,从干净的机器到运行状态用了 3 分钟。这是一次实测的尝试,不是平均值。
vmprint 需要 GPU 吗?
启动它不需要。Argusic 在一台没有 GPU 的机器上让它达到了运行状态。
安装 vmprint 时会出现什么问题?
已记录的运行中出现了 4 个问题。每个问题及其耗费的时间都列在本页上。
vmprint 的证据在哪里?
这次已记录的运行都在本页上,每次都链接到完整的 log 和终端录屏,并连同 sha256 指纹一起保存,因此无法被悄悄篡改。

Discussion