Merge pull request #154 from Yoahoug/fix/kiro-long-context-and-custom-proxy
再次修复kiro 400问题:用占位符替换历史信息中的image,缩小包体大小
This commit is contained in:
commit
0b047396f1
1 changed files with 12 additions and 10 deletions
|
|
@ -668,7 +668,7 @@ async initializeAuth(forceRefresh = false) {
|
||||||
modelId: codewhispererModel,
|
modelId: codewhispererModel,
|
||||||
origin: KIRO_CONSTANTS.ORIGIN_AI_EDITOR
|
origin: KIRO_CONSTANTS.ORIGIN_AI_EDITOR
|
||||||
};
|
};
|
||||||
let images = [];
|
let imageCount = 0;
|
||||||
let toolResults = [];
|
let toolResults = [];
|
||||||
|
|
||||||
if (Array.isArray(message.content)) {
|
if (Array.isArray(message.content)) {
|
||||||
|
|
@ -682,22 +682,24 @@ async initializeAuth(forceRefresh = false) {
|
||||||
toolUseId: part.tool_use_id
|
toolUseId: part.tool_use_id
|
||||||
});
|
});
|
||||||
} else if (part.type === 'image') {
|
} else if (part.type === 'image') {
|
||||||
images.push({
|
// 历史消息中的图片不保留 base64 数据,只记录数量
|
||||||
format: part.source.media_type.split('/')[1],
|
// 避免请求体过大导致 400 错误
|
||||||
source: {
|
imageCount++;
|
||||||
bytes: part.source.data
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
userInputMessage.content = this.getContentText(message);
|
userInputMessage.content = this.getContentText(message);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 只添加非空字段,API 不接受空数组或空对象
|
// 如果历史消息中有图片,添加占位符说明
|
||||||
if (images.length > 0) {
|
if (imageCount > 0) {
|
||||||
userInputMessage.images = images;
|
const imagePlaceholder = `[此消息包含 ${imageCount} 张图片,已在历史记录中省略]`;
|
||||||
|
userInputMessage.content = userInputMessage.content
|
||||||
|
? `${userInputMessage.content}\n${imagePlaceholder}`
|
||||||
|
: imagePlaceholder;
|
||||||
|
console.log(`[Kiro] Replaced ${imageCount} image(s) with placeholder in history message`);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (toolResults.length > 0) {
|
if (toolResults.length > 0) {
|
||||||
// 去重 toolResults - Kiro API 不接受重复的 toolUseId
|
// 去重 toolResults - Kiro API 不接受重复的 toolUseId
|
||||||
const uniqueToolResults = [];
|
const uniqueToolResults = [];
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue