惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 聂微东
S
Secure Thoughts
P
Palo Alto Networks Blog
Google DeepMind News
Google DeepMind News
AI
AI
H
Hacker News: Front Page
Schneier on Security
Schneier on Security
C
CXSECURITY Database RSS Feed - CXSecurity.com
Cloudbric
Cloudbric
TaoSecurity Blog
TaoSecurity Blog
T
Tor Project blog
L
LINUX DO - 热门话题
Cyberwarzone
Cyberwarzone
V2EX - 技术
V2EX - 技术
Google DeepMind News
Google DeepMind News
GbyAI
GbyAI
S
Security @ Cisco Blogs
S
Security Affairs
P
Privacy International News Feed
I
Intezer
S
SegmentFault 最新的问题
F
Full Disclosure
H
Heimdal Security Blog
www.infosecurity-magazine.com
www.infosecurity-magazine.com
S
Securelist
V
Vulnerabilities – Threatpost
C
CERT Recently Published Vulnerability Notes
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Google Online Security Blog
Google Online Security Blog
Security Latest
Security Latest
C
Cybersecurity and Infrastructure Security Agency CISA
Attack and Defense Labs
Attack and Defense Labs
Forbes - Security
Forbes - Security
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
I
InfoQ
WordPress大学
WordPress大学
Vercel News
Vercel News
小众软件
小众软件
大猫的无限游戏
大猫的无限游戏
美团技术团队
IT之家
IT之家
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
aimingoo的专栏
aimingoo的专栏
Y
Y Combinator Blog
Last Week in AI
Last Week in AI
博客园 - 【当耐特】
D
Docker
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Hugging Face - Blog
Hugging Face - Blog

博客园 - 我才是银古

第16章:常见问题、排错与最佳实践 第15章:扩展生态、MCAD 与外部集成 第12章:实战案例:机械结构与 3D 打印零件 第14章:构建、测试、调试与贡献流程 第13章:OpenSCAD 源码架构与核心执行流程 第11章:预览、渲染、网格精度与性能优化 第09章:列表推导、递归与算法建模 第08章:参数化零件库与复用设计 第10章:导入导出、命令行与自动化 第06章:CSG 布尔建模方法 第07章:二维图形、拉伸、旋转与投影 第05章:基础几何、坐标系与变换 第04章:参数、变量、函数、模块与作用域 OpenSCAD 教程目录 第03章:OpenSCAD 语言基础 第02章:安装、环境配置与开发工作流 第01章:OpenSCAD 项目全景与学习路线 第02章:源码获取、编译与开发环境配置 第01章:OCCT项目全景与学习路线 第18章:二次开发实战与综合案例 第18章:综合实战案例 第17章:数据交换与协同 第16章:源码架构与二次开发 第15章:插件与自定义工作台开发 第14章:Python脚本宏与自动化 第13章:FEM仿真分析 第12章:CAM数控加工 第11章:SurfaceMesh与逆向工程 第10章:Draft二维绘图与BIM建筑 第09章:工程图TechDraw 第07章:参数化表达式与Spreadsheet 第08章:装配设计Assembly 第06章:Part工作台与几何内核 第05章:PartDesign实体特征建模 第04章:草图Sketcher约束建模 第02章:安装版本与工作环境配置 第03章:界面工作台与基础操作 第01章:项目全景与学习路线 第十二章:插件开发、研究功能与最佳实践 第十章:定时任务与自动化(Cron) 第七章:技能、记忆与自学习闭环 第八章:MCP 集成与上下文文件 第六章:工具系统与终端后端 第五章:模型供应商与配置体系 Hermes Agent 教程目录 第十一章:语音、视觉、浏览器与子代理协作 第四章:CLI/TUI 与会话管理 第十二章:学习路线、实战方案与最佳实践 第十一章:源码结构、开发调试与插件开发 第十章:自动化、远程访问、日志与排障 第九章:Control UI、节点、Canvas 与语音能力 第七章:工具、技能、插件与能力扩展 第八章:安全模型、访问控制与沙箱实践 第六章:Agent 工作区、会话与多智能体路由 第五章:多通道消息接入与聊天平台配置 第四章:配置体系、模型接入与认证管理 第三章:Gateway 架构、协议与运行机制 第二章:安装、环境准备与快速上手 第一章:OpenClaw 项目概览与核心定位 oh-my-openagent 教程目录 09-命令模型回退与配置参考 10-实战案例最佳实践与故障排除 05-工作模式-Ultrawork-Prometheus-Atlas 08-Hooks与MCP系统 06-Category与Skill系统 07-核心工具链 04-智能体全景详解 03-安装与环境配置 02-整体架构与多模型编排机制 01-项目简介与核心理念 01-项目概览与学习路线 02-安装部署与工具适配 03-Skill机制与using-superpowers 05-TDD系统化调试与完成前验证 04-需求澄清方案设计与计划编写 07-并行智能体子智能体与Git-Worktree 第六章:代码审查、反馈处理与分支收尾 08-中国特色Skills与本土团队落地 09-MCP构建工作流执行与自定义Skill 第23章:FreeCAD-Python-API Clipper2 C# 源码解读教程 第19章:PolyTree 多边形树结构 第20章:实际应用与最佳实践 第18章:Minkowski 和与差 第17章:RectClip 矩形裁剪优化 第16章:ClipperOffset 偏移类详解 第15章:填充规则详解 第14章:布尔运算执行流程 第13章:ClipperD 浮点裁剪类 第11章:OutRec 与 OutPt 输出结构 第9章:Active 活动边结构 第10章:Vertex 顶点与 LocalMinima 局部极小值 第12章:Clipper64 裁剪类详解 第7章:高精度运算与128位整数 第8章:ClipperBase 基类详解 第5章:枚举类型与常量定义 第6章:InternalClipper 内部工具类 第2章:核心数据结构 - Point64、PointD 第3章:路径与多边形表示 - Path64、PathD、Paths64、PathsD 第4章:矩形边界 - Rect64、RectD
第二章:安装与环境配置
我才是银古 · 2026-06-21 · via 博客园 - 我才是银古

第二章:安装与环境配置

2.1 系统要求

在安装 GeoPipeAgent 之前,请确认你的环境满足以下要求:

要求 最低版本 推荐版本
Python 3.10 3.11+
pip 21.0 最新版
操作系统 Windows / macOS / Linux Ubuntu 22.04+ / macOS 13+

2.2 安装方式

GeoPipeAgent 通过 pip 安装,支持基础安装和带可选依赖的扩展安装。

2.2.1 从源码安装(推荐)

# 克隆仓库
git clone https://github.com/znlgis/GeoPipeAgent.git
cd GeoPipeAgent

# 基础安装(仅核心功能:IO、矢量、栅格步骤)
pip install -e .

# 安装全部可选依赖(推荐开发者使用)
pip install -e ".[dev,analysis,network]"

2.2.2 可选依赖组说明

GeoPipeAgent 将可选依赖划分为三个组,按需安装:

依赖组 包含的包 启用的功能
dev pytest, pytest-cov 开发与测试工具
analysis scipy, scikit-learn, matplotlib 空间分析步骤(泰森多边形、热力图、插值、聚类)
network networkx, geopy 网络分析步骤(最短路径、服务区、地理编码)
# 仅安装空间分析依赖
pip install -e ".[analysis]"

# 仅安装网络分析依赖
pip install -e ".[network]"

# 同时安装空间分析和网络分析
pip install -e ".[analysis,network]"

2.3 核心依赖说明

基础安装会自动安装以下核心依赖(已在 pyproject.toml 中定义):

依赖包 版本要求 用途
click >=8.0 CLI 命令行接口框架
pyyaml >=6.0 YAML 流水线解析
numpy >=1.24 数值计算(栅格分析依赖)
geopandas >=0.14 矢量数据处理引擎
shapely >=2.0 几何运算库
pyproj >=3.5 坐标参考系转换
rasterio >=1.3 栅格数据读写

注意geopandas 本身依赖 fiona(或 pyogrio)、pyprojshapely,这些会随 geopandas 自动安装。


2.4 验证安装

安装完成后,运行以下命令验证:

# 查看版本
geopipe-agent --version

# 列出所有内置步骤(应显示 33 个步骤)
geopipe-agent list-steps

# 查看可用后端(显示各后端的可用状态)
geopipe-agent backends

预期输出示例:

# geopipe-agent list-steps
ID                             Name                 Category     Backends
--------------------------------------------------------------------------------
io.read_vector                 读取矢量数据         io           -
io.write_vector                写入矢量数据         io           -
io.read_raster                 读取栅格数据         io           -
io.write_raster                写入栅格数据         io           -
vector.buffer                  矢量缓冲区分析       vector       native_python, qgis_process
vector.clip                    矢量裁剪             vector       native_python, qgis_process
...

Total: 33 steps
// geopipe-agent backends
[
  {"name": "native_python", "available": true},
  {"name": "gdal_cli",      "available": false},
  {"name": "gdal_python",   "available": false},
  {"name": "qgis_process",  "available": false},
  {"name": "pyqgis",        "available": false},
  {"name": "generic_cli",   "available": true},
  {"name": "curl_api",      "available": true}
]

2.5 推荐使用虚拟环境

强烈建议在虚拟环境中安装,避免与系统包产生冲突:

# 使用 venv(标准库)
python -m venv geopipe-env
source geopipe-env/bin/activate      # Linux / macOS
geopipe-env\Scripts\activate.bat     # Windows

# 在激活的虚拟环境中安装
pip install -e ".[dev,analysis,network]"

或使用 conda

# 创建 conda 环境(geopandas 在 conda-forge 上依赖更完整)
conda create -n geopipe python=3.11
conda activate geopipe
conda install -c conda-forge geopandas rasterio pyproj shapely
pip install -e ".[dev,analysis,network]"

提示:在 Windows 上,推荐使用 conda 安装 geopandas,避免 GDAL/Fiona 的编译问题。在 Linux/macOS 上,pip 直接安装通常无问题。


2.6 安装外部后端工具(可选)

基础安装只需 Python 环境即可使用 native_python 后端。如需使用其他后端,需要额外安装:

GDAL CLI 后端(gdal_cli

# Ubuntu
sudo apt-get install gdal-bin

# macOS (Homebrew)
brew install gdal

# 验证
ogr2ogr --version

GDAL Python 后端(gdal_python

# Ubuntu
sudo apt-get install python3-gdal

# 或通过 pip(需要先安装系统 GDAL)
pip install GDAL==$(gdal-config --version)

QGIS 后端(qgis_process / pyqgis

参考 QGIS 官方安装指南安装 QGIS Desktop,安装后 qgis_process 命令行工具会自动注册到系统 PATH。


2.7 开发环境配置

如果你计划为 GeoPipeAgent 贡献代码或开发自定义步骤,需要安装开发依赖:

# 安装包括测试工具在内的所有依赖
pip install -e ".[dev,analysis,network]"

# 运行完整测试套件
python -m pytest -v

# 运行带覆盖率的测试
python -m pytest -v --cov=geopipe_agent --cov-report=term-missing

2.8 常见安装问题

问题 1:shapely 版本冲突

GeoPipeAgent 要求 shapely>=2.0。如果系统中安装了旧版 shapely,升级:

pip install --upgrade "shapely>=2.0"

问题 2:geopandas 安装失败(Windows)

Windows 上 geopandas 可能因 GDAL/Fiona 编译失败。推荐方案:

# 方案一:使用 conda-forge
conda install -c conda-forge geopandas

# 方案二:使用预编译的 wheel(从 Christoph Gohlke 的网站)
pip install pipwin
pipwin install gdal fiona geopandas

问题 3:rasterio 安装失败

类似 geopandas,rasterio 在 Windows 上建议使用 conda:

conda install -c conda-forge rasterio

问题 4:geopipe-agent 命令找不到

这通常是因为 Python scripts 目录不在 PATH 中。解决方案:

# 方案一:使用 python -m 方式运行
python -m geopipe_agent.cli --version

# 方案二:找到 scripts 目录并加入 PATH
python -c "import sysconfig; print(sysconfig.get_path('scripts'))"
# 将输出的路径加入系统 PATH

问题 5:scipy / scikit-learn 安装慢

空间分析依赖较大,如果 pip 安装较慢,可以使用国内镜像:

pip install -e ".[analysis,network]" -i https://pypi.tuna.tsinghua.edu.cn/simple/

2.9 本章小结

本章介绍了 GeoPipeAgent 的安装与环境配置:

  1. 系统要求:Python 3.10+,推荐使用虚拟环境
  2. 安装命令pip install -e ".[dev,analysis,network]" 安装全部依赖
  3. 可选依赖组analysis(空间分析)和 network(网络分析)按需安装
  4. 安装验证:通过 geopipe-agent list-stepsgeopipe-agent backends 验证
  5. 外部后端:GDAL、QGIS 等外部工具按需安装,默认 native_python 后端无需额外安装

下一章将编写并运行你的第一个 GeoPipeAgent 流水线。


导航← 第一章:概述与核心理念第三章:快速上手 →