# 可运行代码示例 本目录包含书中提到的所有可运行代码示例,按章节组织。 ## 目录结构 ``` examples/ ├── 00-introduction/ # 导论部分示例 │ └── setup-first-assistant/ # 第一个空间AI助手 ├── 01-foundations/ # 基础原理示例 │ ├── modular-system/ # 模块化系统 │ ├── state-machine/ # 状态机实现 │ ├── probability/ # 概率与不确定性 │ ├── feedback/ # 反馈与学习 │ └── hitl/ # 人机协同 ├── 02-spatial-intelligence/ # 空间智能示例 │ ├── spatial-representation/ # 空间表征 │ ├── spatial-reasoning/ # 空间推理 │ ├── mcdm/ # 多准则决策 │ ├── optimization/ # 空间优化 │ └── uncertainty/ # 不确定性量化 ├── 03-autonomous-design/ # 自主设计示例 │ ├── workflow/ # 工作流编排 │ ├── agents/ # Agent设计 │ ├── skills/ # 技能组合 │ └── memory/ # 记忆管理 └── templates/ # 项目模板 ├── basic-skill.md ├── langgraph-workflow.py └── hitl-checkpoint.py ``` ## 快速开始 ### 环境配置 ```bash # 克隆仓库 git clone https://github.com/your-org/CC4SI.git cd CC4SI # 创建虚拟环境 python -m venv venv source venv/bin/activate # Linux/Mac # 或 venv\Scripts\activate # Windows # 安装依赖 pip install -r requirements.txt ``` ### 运行示例 ```bash # 导论示例:第一个空间助手 python 00-introduction/setup-first-assistant/spatial_helper.py # 基础原理示例:状态机 python 01-foundations/state-machine/workflow_state_machine.py # 空间智能示例:空间推理 python 02-spatial-intelligence/spatial-reasoning/corridor_detection.py ``` ## 示例说明 ### 00-introduction/setup-first-assistant **目标**:搭建第一个空间AI助手 **内容**: - `spatial_helper.py` - 空间分析助手类 - `create_sample_data.py` - 创建示例数据 - `README.md` - 使用说明 **运行**: ```bash cd 00-introduction/setup-first-assistant python spatial_helper.py ``` --- ### 01-foundations/modular-system **目标**:理解模块化系统设计 **内容**: - `pipeline.py` - 空间分析流水线 - `skills.py` - 技能封装示例 - `composition.py` - 函数式组合 --- ### 01-foundations/state-machine **目标**:实现状态机工作流 **内容**: - `workflow_state_machine.py` - 完整状态机实现 - `langgraph_example.py` - LangGraph版本 --- ### 02-spatial-intelligence/mcdm **目标**:多准则决策分析 **内容**: - `ahp.py` - 层次分析法 - `sensitivity.py` - 敏感性分析 - `weighted_overlay.py` - 加权叠加 --- ### 03-autonomous-design/workflow **目标**:工作流编排实践 **内容**: - `dag_workflow.py` - DAG工作流 - `conditional_routing.py` - 条件路由 - `error_handling.py` - 错误处理模式 --- ## 依赖要求 ``` python>=3.10 # 核心依赖 geopandas>=0.13.0 shapely>=2.0.0 rasterio>=1.3.0 networkx>=3.0 # AI框架 langchain>=0.1.0 langgraph>=0.0.20 anthropic>=0.18.0 # 可视化 matplotlib>=3.7.0 folium>=0.14.0 # 数据处理 pandas>=2.0.0 numpy>=1.24.0 # 科学计算 scipy>=1.10.0 scikit-learn>=1.3.0 ``` ## 使用建议 1. **边学边做**:阅读相关章节后立即运行对应示例 2. **修改实验**:在理解代码基础上进行修改和实验 3. **错误调试**:遇到错误时尝试独立解决,培养调试能力 4. **记录笔记**:在代码注释或笔记本中记录你的理解 ## 贡献示例 欢迎贡献更多示例! **示例质量要求**: 1. 代码可运行 2. 有清晰注释 3. 包含使用说明 4. 说明设计意图 详见 [CONTRIBUTING.md](../CONTRIBUTING.md) ## 许可 所有示例代码遵循项目许可证:CC BY-NC-SA 4.0