From f0125c4c938e5a0feeb440a992c441e04e75866f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8E=B2=E5=AD=90=E5=BF=83?= <2316365837@qq.com> Date: Mon, 12 Jan 2026 10:57:06 +0800 Subject: [PATCH] add tools.md --- tools.md | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 tools.md diff --git a/tools.md b/tools.md new file mode 100644 index 0000000..fc742c3 --- /dev/null +++ b/tools.md @@ -0,0 +1,64 @@ +## Tool Functionality + +### 📊 **信息收集工具**(无参数) +| 工具名称 | 功能描述 | 输入参数 | 用户权限 | +|---------|---------|---------|---------| +| `list_drones` | 列出所有可用无人机及其状态、电池和位置 | 无 | ✅ 所有用户 | +| `get_session_info` | 获取当前会话信息和任务详情 | 无 | ✅ 所有用户 | +| `get_session_data` | 获取完整会话数据(无人机、目标、障碍物) | 无 | ✅ 所有用户 | +| `get_task_progress` | 获取任务完成进度和状态 | 无 | ✅ 所有用户 | +| `get_weather` | 获取当前天气条件(风速、能见度等) | 无 | ✅ 所有用户 | +| `get_targets` | 获取所有目标(固定、移动、航点等) | 无 | ✅ 所有用户 | +| `get_all_waypoints` | 获取所有航点坐标和高度信息 | 无 | ✅ 所有用户 | +| `get_obstacles` | 获取环境中所有障碍物信息 | 无 | ✅ 所有用户 | + +### 🔍 **状态查询工具**(单参数) +| 工具名称 | 功能描述 | 输入参数 | 用户权限 | +|---------|---------|---------|---------| +| `get_drone_status` | 获取特定无人机的详细状态信息 | `{"drone_id": "drone-001"}` | ✅ 所有用户 | +| `get_nearby_entities` | 获取无人机感知范围内的实体 | `{"drone_id": "drone-001"}` | ✅ 所有用户 | + +### 🎮 **基础控制工具**(单参数) +| 工具名称 | 功能描述 | 输入参数 | 用户权限 | +|---------|---------|---------|---------| +| `land` | 命令无人机在当前位置降落 | `{"drone_id": "drone-001"}` | ✅ 所有用户 | +| `hover` | 命令无人机在当前位置悬停 | `{"drone_id": "drone-001", "duration": 5.0}` | ✅ 所有用户 | +| `return_home` | 命令无人机返回home位置 | `{"drone_id": "drone-001"}` | ✅ 所有用户 | +| `set_home` | 将无人机当前位置设为新的home | `{"drone_id": "drone-001"}` | ✅ 所有用户 | +| `calibrate` | 校准无人机的传感器 | `{"drone_id": "drone-001"}` | ✅ 所有用户 | +| `take_photo` | 命令无人机拍照 | `{"drone_id": "drone-001"}` | ✅ 所有用户 | + +### ✈️ **飞行控制工具**(双参数) +| 工具名称 | 功能描述 | 输入参数 | 用户权限 | +|---------|---------|---------|---------| +| `take_off` | 命令无人机起飞到指定高度 | `{"drone_id": "drone-001", "altitude": 15.0}` | ✅ 所有用户 | +| `change_altitude` | 改变无人机飞行高度 | `{"drone_id": "drone-001", "altitude": 20.0}` | ✅ 所有用户 | +| `rotate` | 旋转无人机到指定航向 | `{"drone_id": "drone-001", "heading": 90.0}` | ✅ 所有用户 | +| `move_towards` | 朝指定方向移动特定距离 | `{"drone_id": "drone-001", "distance": 10.0}` | ✅ 所有用户 | +| `charge` | 命令无人机充电 | `{"drone_id": "drone-001", "charge_amount": 25.0}` | ✅ 所有用户 | + +### 💬 **通信工具** +| 工具名称 | 功能描述 | 输入参数 | 用户权限 | +|---------|---------|---------|---------| +| `send_message` | 向特定无人机发送消息 | `{"drone_id": "drone-001", "target_drone_id": "drone-002", "message": "Hello"}` | ✅ 所有用户 | +| `broadcast` | 向所有无人机广播消息 | `{"drone_id": "drone-001", "message": "Alert"}` | ✅ 所有用户 | + +### 🎯 **导航工具** +| 工具名称 | 功能描述 | 输入参数 | 用户权限 | +|---------|---------|---------|---------| +| `get_nearest_waypoint` | 获取距离无人机最近的航点 | `{"drone_id": "drone-001"}` | ✅ 所有用户 | + +### 工具使用说明 +- 所有工具都返回JSON格式的字符串结果 +- 错误情况会返回包含错误信息的字符串 +- 参数必须通过JSON字符串格式提供 +- 工具函数内部包含完整的错误处理和参数验证 + +## 智能决策工具 + +LangChain ReAct代理 通过系统提示词实现的 自动推理和行为模式 ,具体包括: +### 智能决策 +- **分步移动**:无法直达时自动寻找中间路径点 +- **安全高度**:保持安全飞行高度 +- **紧急降落**:异常情况下的安全处理 +上文提到的这个智能决策是什么 \ No newline at end of file