// Simulate streaming response with tool calls function simulateAgentResponse(container) { const messages = [ "Let me check that for you...", "I'll need to use some tools to find the answer.", { tool: "search_api", params: { query: "latest AI models" } }, "Found some information!", { tool: "data_analysis", params: { dataset: "ai_research" } }, "Here's what I discovered...", "The latest models include GPT-4, Claude 3, and Gemini." ]; let index = 0; function addNextMessage() { if (index >= messages.length) return; const message = messages[index]; const messageElement = document.createElement('div'); if (typeof message === 'string') { messageElement.className = 'p-4 mb-2 bg-white rounded-lg shadow-sm'; messageElement.textContent = message; } else { // Tool call messageElement.className = 'p-4 mb-2 bg-gradient-to-r from-blue-50 to-indigo-50 rounded-lg border border-blue-200 tool-call'; messageElement.innerHTML = `
工具调用 执行中...
工具名称
${message.tool}
参数配置
${JSON.stringify(message.params, null, 2)}
`; } container.appendChild(messageElement); container.scrollTop = container.scrollHeight; index++; if (index < messages.length) { setTimeout(addNextMessage, Math.random() * 1000 + 500); } } addNextMessage(); }