Skip to content

Cartex

Cartex 是面向建筑工程文件工程量清单的子项目富化管道。

它接收来自 Cato-v2 的结构化提取结果——从建筑 PDF 页面提取的表格、文字备注及图像上下文——并利用辅助表、通用备注、图例图示、尺寸卡片和多标签解析,为每个清单行填充目标列数据。

工作原理

  1. 提取 — Cato-v2 将 PDF 页面渲染为图像并发送至 Gemini 视觉 AI,生成包含表格和上下文信息的 ExtractionResult
  2. 富化 — Cartex 将提取结果路由至并发执行的专业策略,再将各策略输出合并为一个 list[EnrichedRow]

富化后的行直接映射到用户定义的工程量清单模板(窗、门、幕墙等)的各列。

快速入门

1. 配置本地环境

创建虚拟环境、安装依赖,并将 cartex 命令加入当前 shell 的可执行路径。

python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
chmod +x ./cartex
export PATH="$PWD:$PATH"

2. 运行 Cartex 命令

可用于启动 UI、执行多文档批处理,或直接打开文档站点。

cartex ui
cartex batch --jobs misc/jobs.sample.json --workers 4
cartex docs

3. 以 Python API 集成

当你需要在 Python 工作流中集成 Cartex 时,可直接调用 run(...)

from main import run
from src.models import UserTableSchema
from src.templates import TemplateType

schema = UserTableSchema(
    template=TemplateType.STANDARD_TAKEOFF,
    columns=["Product", "Operability", "Width", "Height",
             "Quantity", "Location", "Material",
             "Rough Opening Measurements", "Special Notes"],
)
result = run("path/to/document.pdf", page_numbers=[0], schema=schema)

如需多文档回归批跑,请参考 使用 Cartex 中的批处理说明。

文档导航