diff --git a/web/src/components/AgentMessageComponent.vue b/web/src/components/AgentMessageComponent.vue
index e2853639..1d580f86 100644
--- a/web/src/components/AgentMessageComponent.vue
+++ b/web/src/components/AgentMessageComponent.vue
@@ -43,18 +43,17 @@
-
-
@@ -84,6 +83,7 @@
import { computed, ref } from 'vue';
import { CaretRightOutlined, ThunderboltOutlined, LoadingOutlined } from '@ant-design/icons-vue';
import RefsComponent from '@/components/RefsComponent.vue'
+import { ToolResultRenderer } from '@/components/ToolCallingResult'
import { MdPreview } from 'md-editor-v3'
@@ -309,6 +309,25 @@ const toggleToolCall = (toolCallId) => {
}
}
}
+
+ .tool-result {
+ padding: 0;
+ background-color: transparent;
+
+ .tool-result-header {
+ padding: 10px 12px;
+ background-color: var(--gray-100);
+ font-size: 12px;
+ color: var(--gray-700);
+ font-weight: 500;
+ border-bottom: 1px solid var(--gray-200);
+ }
+
+ .tool-result-content {
+ padding: 0;
+ background-color: transparent;
+ }
+ }
}
&.is-collapsed {
diff --git a/web/src/components/ToolCallingResult/CalculatorResult.vue b/web/src/components/ToolCallingResult/CalculatorResult.vue
new file mode 100644
index 00000000..81a346ce
--- /dev/null
+++ b/web/src/components/ToolCallingResult/CalculatorResult.vue
@@ -0,0 +1,212 @@
+
+
+
+
+
+
+
结果:
+
{{ formatNumber(data) }}
+
+
+
+
+
+
+
+ 科学记数法:
+ {{ data.toExponential(6) }}
+
+
+
+
+
{{ getNumberType() }}
+
整数
+
{{ getDecimalPlaces() }} 位小数
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/web/src/components/ToolCallingResult/KnowledgeBaseResult.vue b/web/src/components/ToolCallingResult/KnowledgeBaseResult.vue
new file mode 100644
index 00000000..f8a986cd
--- /dev/null
+++ b/web/src/components/ToolCallingResult/KnowledgeBaseResult.vue
@@ -0,0 +1,232 @@
+
+
+
+
+
+
+
+
+
+
+
相似度:
+
+
{{ result.distance.toFixed(4) }}
+
+
+
+
重排序:
+
+
{{ result.rerank_score.toFixed(4) }}
+
+
+
+
+
{{ result.entity.text }}
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/web/src/components/ToolCallingResult/KnowledgeGraphResult.vue b/web/src/components/ToolCallingResult/KnowledgeGraphResult.vue
new file mode 100644
index 00000000..8389fad2
--- /dev/null
+++ b/web/src/components/ToolCallingResult/KnowledgeGraphResult.vue
@@ -0,0 +1,272 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ entity.name }}
+
+
+
+
+
+
+
+
+ {{ relation.source }}
+ {{ relation.type }}
+ {{ relation.target }}
+
+
+
+
+
+
+ {{ JSON.stringify(data, null, 2) }}
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/web/src/components/ToolCallingResult/ToolResultRenderer.vue b/web/src/components/ToolCallingResult/ToolResultRenderer.vue
new file mode 100644
index 00000000..d30e257e
--- /dev/null
+++ b/web/src/components/ToolCallingResult/ToolResultRenderer.vue
@@ -0,0 +1,198 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/web/src/components/ToolCallingResult/WebSearchResult.vue b/web/src/components/ToolCallingResult/WebSearchResult.vue
new file mode 100644
index 00000000..03f86b81
--- /dev/null
+++ b/web/src/components/ToolCallingResult/WebSearchResult.vue
@@ -0,0 +1,188 @@
+
+
+
+
+
+
+
+
+
+
+
+ {{ formatDate(result.published_date) }}
+
+
+
+
+ {{ result.content }}
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/web/src/components/ToolCallingResult/index.js b/web/src/components/ToolCallingResult/index.js
new file mode 100644
index 00000000..471d4bdf
--- /dev/null
+++ b/web/src/components/ToolCallingResult/index.js
@@ -0,0 +1,6 @@
+// 工具调用结果组件导出
+export { default as WebSearchResult } from './WebSearchResult.vue'
+export { default as KnowledgeBaseResult } from './KnowledgeBaseResult.vue'
+export { default as KnowledgeGraphResult } from './KnowledgeGraphResult.vue'
+export { default as CalculatorResult } from './CalculatorResult.vue'
+export { default as ToolResultRenderer } from './ToolResultRenderer.vue'
\ No newline at end of file