32 lines
4.3 KiB
Markdown
32 lines
4.3 KiB
Markdown
# 提示词
|
||
|
||
## 简介
|
||
|
||
为使智能体符合地理信息处理或地理空间分析专家身份、突出在地理信息系统领域的能力,需要通过提示词工程以系统提示词(System Prompt)的方式对模型的身份、类型、特点以及其生成回复的风格、格式要求等进行规范。
|
||
|
||
参考当前大语言模型提示词工程范式,结合地理信息系统应用这一垂直领域特点,通过多次迭代更新与调试,编写出一套提示词文本,包括系统提示词(System Prompt)和用户提示词(User Prompt)。通过两者协同设计,LinkTool可以实现对AI模型的精准引导和行为控制,同时增强地理语义的理解。
|
||
|
||
系统提示词作为智能体的核心身份与规则框架,明确界定其作为地理信息处理专家的专业角色,确立了与ArcGIS Pro工具库的对接规范和输出风格和体系,为程序化工具调用提供了稳定、合规的执行基础。
|
||
|
||
用户提示词分为“任务规划提示词”、“异常处理提示词”、“继续执行提示词”,这些提示词专注于任务执行层面的动态控制,将自然语言请求解构为可执行工具链,聚焦执行流程的规划,处理报错以及确保工具接续运行。该层面由大模型根据实际任务选择性调用。
|
||
|
||
这种分层协同的提示词设计,使LinkTool能够将模糊的自然语言地理描述(如“河流附近”)精准转化为可计算的参数(如500米缓冲区),并动态组装高效的工具执行序列,显著提升了地理信息处理的智能化水平和执行效率,同时确保了操作流程的严谨性与输出成果的专业性。在程序执行错误时也能实现动态改正并重试,有效提升智能体在地理空间数据处理流程中的鲁棒性,节约用户排查错误的时间。
|
||
|
||
## 设计
|
||
|
||
介绍当前提示词是怎么设计的(详细介绍包括哪些部分的内容,预期、实测产生什么样的效果)
|
||
### 系统提示词
|
||
#### 撰写逻辑:
|
||
参考Prompt工程的CRISPE优化方法,Capacity and Role(角色):明确AI在交互中应扮演的角色,如精通地理信息分析和ArcGIS Pro软件的专家。 Insight(背景):提供角色扮演的背景信息,帮助AI理解其在特定情境下的作用。 Statement(任务):直接说明AI需要执行的任务,确保其理解并执行用户的请求。Personality(格式):设定AI回复的风格和格式,使其更符合用户的期望和场景需求。 Experiment(实验):如果需要,可以要求AI提供多个示例,以供用户选择最佳回复。
|
||
|
||
主要实现了以下功能:
|
||
- 角色定义
|
||
确立智能体作为"精通地理信息分析和ArcGIS Pro软件的专家"这一专业身份,明确限定响应范畴仅聚焦用户当前需求,杜绝过度推理可能引发的操作偏离。这种身份锚定机制从根本上保障了后续所有操作的领域专业性。
|
||
- 交互协议层
|
||
采用XML标签化指令格式构建机器可读的操作指令流,通过"单次单工具"的调用原则实现操作链路的可追溯与可中断。参数传递机制——参数值采用JSON对象封装且路径变量动态注入({{gdbPath}})以及要求ArcGIS Pro工具名严格匹配知识库调用名确保工具执行的成功率。
|
||
- 流程控制层
|
||
通过动态状态管理实现任务流的智能演进:要求每次工具调用必须基于前序结果推进,形成的"规划、执行、反馈"工具链闭环。当遇到复杂任务时,创新性地引入<prompt>机制激活知识库辅助规划,既扩展了智能体的决策能力边界,又通过"结果示例"模板(如<tool_use_result>)规范了数据返回格式,使系统能在严格遵循ArcGIS Pro最佳实践的同时,将自然语言指令高效转化为可执行的地理处理流水线。
|
||
|
||
## 调试方法
|
||
|
||
根据回复情况、执行流程以及工具卡片提供的异常错误溯源进行针对性地调试。面对规律性的错误,在提示词中添加负面指令进行避免或者给出相应示例和要求完成错误规避。提示词还管控参数格式,比如JSON输出、工具参数填写等细节。若无法按要求执行则将导致程序中断,为此采用了HTTP请求体(Request Body)与响应体(Response Body)的深度解析构成故障诊断的手段,通过洞察与ai之间底层的对话内容对错误寻根溯源。 |