| from duckduckgo_search import DDGS | from duckduckgo_search import DDGS | ||||
| from core.file.models import FileTransferMethod | |||||
| from core.tools.entities.tool_entities import ToolInvokeMessage | from core.tools.entities.tool_entities import ToolInvokeMessage | ||||
| from core.tools.tool.builtin_tool import BuiltinTool | from core.tools.tool.builtin_tool import BuiltinTool | ||||
| "max_results": tool_parameters.get("max_results"), | "max_results": tool_parameters.get("max_results"), | ||||
| } | } | ||||
| response = DDGS().images(**query_dict) | response = DDGS().images(**query_dict) | ||||
| result = [] | |||||
| markdown_result = "\n\n" | |||||
| json_result = [] | |||||
| for res in response: | for res in response: | ||||
| res["transfer_method"] = FileTransferMethod.REMOTE_URL | |||||
| msg = ToolInvokeMessage( | |||||
| type=ToolInvokeMessage.MessageType.IMAGE_LINK, message=res.get("image"), save_as="", meta=res | |||||
| ) | |||||
| result.append(msg) | |||||
| return result | |||||
| markdown_result += f" or ''})" | |||||
| json_result.append(self.create_json_message(res)) | |||||
| return [self.create_text_message(markdown_result)] + json_result |