Files
Genarrative/src/components/image-editor/EditorAgentConversation/toolCallPresentation.ts
T
k88936 f5368c825f Editor agent refactored (#76)
重构了editor agent.
使得它能进行多轮工具调用, 把工具调用的结果嵌入到上下文里。
对于上下文的图片, 使用哈希后的id用来引用,不暴露细节信息to llm。
当前实现, 状态直接维护在json doc里, 需要对整个doc加锁,任务目前只能串行。
把SSE改成一个简单请求( 因为生图工具耗时需要二次确认, 不需要再实时展示给用户进度)。
增加确认/取消生图操作。
把tool的参数和错误情况做了反馈。

TODO:  工具调用的规范/prompt还可以改进。

改用external job来做素材生成, 针对来自editor agent 的生成会把生成资产的引用加入到结果json里,
客户端轮询 external job 确定生成状态, 发现结束了或者失败了就 重新get 会话,后端重新提供会话的时候把 结果插入回会话历史里,用来让 ai 引用 以及显示

---------

Co-authored-by: 段舒康 <kdletters@qq.com>
Reviewed-on: https://git.genarrative.world/git/GenarrativeAI/Genarrative/pulls/76
Reviewed-by: 段舒康 <kdletters@qq.com>
Co-authored-by: 王德宇 <kvtodev@outlook.com>
Co-committed-by: 王德宇 <kvtodev@outlook.com>
2026-07-17 21:03:15 +08:00

25 lines
610 B
TypeScript

export function editorAgentToolLabel(toolName: string) {
if (toolName === 'edit-image') {
return '修改图片';
}
if (toolName === 'generate-character') {
return '生成角色';
}
if (toolName === 'generate-icon-spritesheet') {
return '生成图标';
}
if (toolName === 'generate-ui-design') {
return '生成 UI';
}
if (toolName === 'generate-video') {
return '生成视频';
}
if (toolName === 'generate-sound-effect') {
return '生成音效';
}
if (toolName === 'generate-background-music') {
return '生成背景音乐';
}
return '生成图片';
}