buildReasoningPrompt 构建推理提示词
(query string, systemPrompt string)
| 115 | |
| 116 | // buildReasoningPrompt 构建推理提示词 |
| 117 | func (e *Engine) buildReasoningPrompt(query string, systemPrompt string) string { |
| 118 | var prompt strings.Builder |
| 119 | |
| 120 | if systemPrompt != "" { |
| 121 | prompt.WriteString(systemPrompt) |
| 122 | prompt.WriteString("\n\n") |
| 123 | } |
| 124 | |
| 125 | prompt.WriteString("# Reasoning Mode\n\n") |
| 126 | prompt.WriteString("You are in reasoning mode. Think step by step to solve the problem.\n\n") |
| 127 | prompt.WriteString("For each reasoning step, provide:\n") |
| 128 | prompt.WriteString("1. **Title**: A brief title for this step\n") |
| 129 | prompt.WriteString("2. **Action**: What you plan to do in this step\n") |
| 130 | prompt.WriteString("3. **Reasoning**: Your thought process\n") |
| 131 | prompt.WriteString("4. **Result**: The outcome of this step\n") |
| 132 | prompt.WriteString("5. **Confidence**: Your confidence level (0.0-1.0)\n") |
| 133 | prompt.WriteString("6. **Next Action**: continue/complete/retry\n\n") |
| 134 | |
| 135 | if e.config.UseJSON { |
| 136 | prompt.WriteString("Please respond in JSON format:\n") |
| 137 | prompt.WriteString("```json\n") |
| 138 | prompt.WriteString("{\n") |
| 139 | prompt.WriteString(" \"title\": \"Step title\",\n") |
| 140 | prompt.WriteString(" \"action\": \"What to do\",\n") |
| 141 | prompt.WriteString(" \"reasoning\": \"Thought process\",\n") |
| 142 | prompt.WriteString(" \"result\": \"Outcome\",\n") |
| 143 | prompt.WriteString(" \"confidence\": 0.85,\n") |
| 144 | prompt.WriteString(" \"next_action\": \"continue\"\n") |
| 145 | prompt.WriteString("}\n") |
| 146 | prompt.WriteString("```\n\n") |
| 147 | } |
| 148 | |
| 149 | prompt.WriteString("## Query\n\n") |
| 150 | prompt.WriteString(query) |
| 151 | |
| 152 | return prompt.String() |
| 153 | } |
| 154 | |
| 155 | // buildStepPrompt 构建步骤提示词 |
| 156 | func (e *Engine) buildStepPrompt(chain *Chain, basePrompt string) string { |