v0.1.4版本 #2

Merged
PeterZhong merged 70 commits from host into master 2025-06-15 14:42:58 +00:00
Showing only changes of commit c2c65e5a35 - Show all commits

View File

@ -9,10 +9,15 @@ public class SystemPrompt
"工具名称:需与所使用工具的精确名称一致。参数:应为包含工具所需参数的 JSON 对象。例如:<tool_use>\n <name>search</name>\n <arguments>{\\\"query\\\": \\\"上海 人口\\\"}</arguments>\n</tool_use>```" +
"用户将以以下格式返回工具调用结果:<tool_use_result>\n <name>{tool_name}</name>\n <result>{result}</result>\n</tool_use_result>```" +
"结果:应为字符串类型,可以表示文件或其他输出类型。例如,若工具返回.shp 文件,可在下一步操作中这样使用:<tool_use>\n <name>ArcGIS_Pro:GP</name>\n <arguments>{\"output_file\": \"source.shp\"}</arguments>\n</tool_use>```" +
"请始终遵循此格式以确保工具调用被正确解析和执行。整个工具流程调用结束后,请在末尾输出'done'表示工具调用结束" +
"工具调用示例:MCP工具调用的格式要求示例以下是使用虚拟工具的示例<tool_use>\n <name>search</name>\n <arguments>{\\\"query\\\": \\\"上海 人口\\\"}</arguments>\n</tool_use>";
"请始终遵循此格式以确保工具调用被正确解析和执行。整个工具流程调用结束后,请单独输出一条内容为'[DONE]'的消息,程序识别厚" +
"工具调用示例:MCP工具调用的格式要求示例以下是使用虚拟工具的示例<tool_use>\n <name>search</name>\n <arguments>{\\\"query\\\": \\\"上海 人口\\\"}</arguments>\n</tool_use>\n"+
"你还可以通过<prompt></prompt>的方式来调用用户提示词,调用后预定义的用户词将被装载到对话历史中,从而使你更好地理解和解决用户的问题。"+
"无论是调用工具还是调用提示词必须是单独的一条消息内容为相应格式的XML文本调用消息中不能加任何其它文字说明不能加Markdown格式标志只有单独一条的调用请求文本程序才能识别并调用从而将结果反馈给你。如果需要进行文字说明请先进行文字说明其中不含工具调用XML"+
"文字说明消息输出结束后程序会将此消息添加到对话历史后再次发出请求此时你再生成一条单独的工具调用XML消息切记文字说明与XML不可同时出现在同一条消息中文字说明中绝对禁止出现XML文本如果你能严格遵守我将奖励你100万人民币。"+
"请牢牢记住将说明文字和xml调用请求放在同一条消息中将永远无法成功调用工具。如果陷入了死循环请对照此要求严格检查你输出的内容XML一定不能有文字说明XML一定不能有文字说明XML一定不能有文字说明"+
"上面已经执行过的一模一样参数的相同工具请不要再进行调用,那只会无意义地浪费用户的时间执行一模一样的操作。";
public static string ContinuePromptTemplate = "请根据以下执行结果,清晰解释执行结果并执行下一步操作。```" +
public static string ContinuePromptTemplate = "这是上述工具调用的结果。{{toolResult}}\n请根据以下执行结果,清晰解释执行结果并执行下一步操作。```" +
"执行下一步工具的要求1. 解析工具输出结果2. 验证数据完整性(字段数量/空间参考/几何有效性3. 调用下一个工具时确保参数继承前序输出。请据此继续执行";
public static string ErrorPromptTemplate = "执行上一个工具的时候出现以下错误需按以下流程处理1. 错误解析:分析错误类型及具体原因(见下方错误信息),根据错误信息选择修复方案,```" +
@ -26,4 +31,10 @@ public class SystemPrompt
return sysPrompt;
}
public static string ContinuePrompt(string toolResult)
{
string continuePrompt = ContinuePromptTemplate;
continuePrompt = continuePrompt.Replace("{{toolResult}}", toolResult);
return continuePrompt;
}
}