如何快速搭建第一个基于的流水线?

摘要:layout: default title: "第三章:快速上手第一个流水线" 第三章:快速上手第一个流水线 本章通过一个完整的实战示例,带你从零到运行第一个 GeoPipeAgent 流
第三章:快速上手第一个流水线 本章通过一个完整的实战示例,带你从零到运行第一个 GeoPipeAgent 流水线,体验 AI 生成 → 框架执行的完整闭环。 3.1 准备测试数据 首先创建工作目录和测试数据: mkdir -p my-gis-project/data mkdir -p my-gis-project/output cd my-gis-project 创建一个简单的测试 GeoJSON 文件 data/roads.geojson: { "type": "FeatureCollection", "features": [ { "type": "Feature", "properties": {"name": "主干道", "type": "primary"}, "geometry": { "type": "LineString", "coordinates": [[116.3, 39.9], [116.4, 39.9], [116.5, 39.95]] } }, { "type": "Feature", "properties": {"name": "次干道", "type": "secondary"}, "geometry": { "type": "LineString", "coordinates": [[116.35, 39.85], [116.35, 39.95], [116.45, 39.95]] } } ] } 3.2 编写第一个 YAML 流水线 在 my-gis-project/ 目录下创建流水线文件 buffer-pipeline.yaml: pipeline: name: "道路缓冲区分析" description: "对道路数据做投影转换后进行缓冲区分析,将结果保存为 GeoJSON" variables: input_path: "data/roads.geojson" buffer_dist: 0.01 output_path: "output/road_buffer.geojson" steps: - id: load-roads use: io.read_vector params: path: "${input_path}" - id: buffer-roads use: vector.buffer params: input: "$load-roads" distance: "${buffer_dist}" cap_style: "round" - id: save-result use: io.write_vector params: input: "$buffer-roads" path: "${output_path}" format: "GeoJSON" outputs: result: "$save-result" feature_count: "$buffer-roads.feature_count" 流水线解读 字段 说明 pipeline.name 流水线名称,出现在报告中 pipeline.variables 可复用的变量,通过 ${变量名} 引用 pipeline.steps 步骤列表,按顺序执行 id: load-roads 步骤唯一 ID,后续步骤通过 $load-roads 引用其输出 use: io.read_vector 步骤类型,格式为 类别.动作 params 步骤参数,可使用变量替换和步骤引用 $load-roads 引用 load-roads 步骤的输出(output 字段) $buffer-roads.feature_count 引用 buffer-roads 步骤 stats 中的 feature_count 值 outputs 声明流水线的最终输出,出现在 JSON 报告的 outputs 节 关于坐标系:roads.geojson 使用 WGS84(EPSG:4326,单位为度),缓冲区距离 0.01 表示约 1 公里(纬度方向)。
阅读全文