wolframalpha.py 933 B

123456789101112131415161718192021222324
  1. from core.tools.entities.tool_entities import ToolInvokeMessage, ToolProviderType
  2. from core.tools.tool.tool import Tool
  3. from core.tools.provider.builtin_tool_provider import BuiltinToolProviderController
  4. from core.tools.errors import ToolProviderCredentialValidationError
  5. from core.tools.provider.builtin.wolframalpha.tools.wolframalpha import WolframAlphaTool
  6. from typing import Any, Dict, List
  7. class GoogleProvider(BuiltinToolProviderController):
  8. def _validate_credentials(self, credentials: Dict[str, Any]) -> None:
  9. try:
  10. WolframAlphaTool().fork_tool_runtime(
  11. meta={
  12. "credentials": credentials,
  13. }
  14. ).invoke(
  15. user_id='',
  16. tool_paramters={
  17. "query": "1+2+....+111",
  18. },
  19. )
  20. except Exception as e:
  21. raise ToolProviderCredentialValidationError(str(e))