可信代码库-AI大模型思考过程接口改造及对接

This commit is contained in:
付民康
2025-06-25 14:59:13 +08:00
parent dbcf9db3d4
commit f862015171

View File

@@ -20,7 +20,15 @@
<i v-if="step.status === 1" style="font-size: 16px;margin-right: 8px" class="icon icon-right"></i> <i v-if="step.status === 1" style="font-size: 16px;margin-right: 8px" class="icon icon-right"></i>
<i v-else style="font-size: 16px;margin-right: 8px" class="icon icon-right"></i> <i v-else style="font-size: 16px;margin-right: 8px" class="icon icon-right"></i>
<span class="step-name span1">{{ step.name }}</span> <span class="step-name span1">{{ step.name }}</span>
<span style="margin-left: 8px" :class="['step-status', step.status === 1 ? 'green' : 'red']">{{ step.status === 1 ? '成功' : '失败' }}</span> <span v-if="step.status === 1 || step.status === '成功'" style="margin-left: 8px" class="step-status green">成功</span>
<span v-else-if="step.status === 0 || step.status === '失败'" style="margin-left: 8px" class="step-status red">失败</span>
<span v-else style="margin-left: 8px" class="step-status">{{ step.status }}</span>
</div>
<div v-for="(item, index) in msg.steps" :key="index" class="think-step flex align-center" style="margin-left: 24px">
<span class="step-name span1">{{ item.name }}</span>
<span v-if="item.status === 1 || item.status === '成功'" style="margin-left: 8px" class="step-status green">成功</span>
<span v-else-if="item.status === 0 || item.status === '失败'" style="margin-left: 8px" class="step-status red">失败</span>
<span v-else style="margin-left: 8px" class="step-status">{{ item.status }}</span>
</div> </div>
</div> </div>
</div> </div>
@@ -355,8 +363,9 @@ const getAIAnswer = async (content) => {
const {text,type,id,table_name=[], states={}} = row; const {text,type,id,table_name=[], states={}} = row;
messages.value[messages.value.length - 1].id = id; messages.value[messages.value.length - 1].id = id;
// 处理思考过程 // 处理思考过程
const thinkProcess = processThinkStates(states); const { thinkProcess,steps } = processThinkStates(states);
messages.value[messages.value.length - 1].thinkProcess = thinkProcess; messages.value[messages.value.length - 1].thinkProcess = thinkProcess;
messages.value[messages.value.length - 1].steps = steps;
messages.value[messages.value.length - 1].thinkExpanded = true; messages.value[messages.value.length - 1].thinkExpanded = true;
if(type==='text') { if(type==='text') {
@@ -417,12 +426,34 @@ const thinkStepsOrder = ['意图分析', 'sql有效性判断', 'sql执行'];
// 处理思考状态 // 处理思考状态
const processThinkStates = (states) => { const processThinkStates = (states) => {
debugger debugger
return thinkStepsOrder.map(stepName => { let arr = [];
return { let steps = []
name: stepName, let arStates = {...states}
status: states[stepName] || 0 // 默认为0(失败) // if(arStates.steps) {
}; // Object.keys(arStates.steps).map(i=>{
}); // arr.push({
// name: i,
// status: arStates.steps[i]
// })
// })
// delete arStates.steps
// }
Object.keys(arStates).map(i=>{
if(i==='steps') {
Object.keys(arStates[i]).map(j=>{
steps.push({
name: j,
status: arStates[i][j]
})
})
} else {
arr.push({
name: i,
status: arStates[i]
})
}
})
return {thinkProcess:arr,steps}
}; };