stackexchange.py 1021 B

12345678910111213141516171819202122232425
  1. from core.tools.errors import ToolProviderCredentialValidationError
  2. from core.tools.provider.builtin.stackexchange.tools.searchStackExQuestions import SearchStackExQuestionsTool
  3. from core.tools.provider.builtin_tool_provider import BuiltinToolProviderController
  4. class StackExchangeProvider(BuiltinToolProviderController):
  5. def _validate_credentials(self, credentials: dict) -> None:
  6. try:
  7. SearchStackExQuestionsTool().fork_tool_runtime(
  8. meta={
  9. "credentials": credentials,
  10. }
  11. ).invoke(
  12. user_id='',
  13. tool_parameters={
  14. "intitle": "Test",
  15. "sort": "relevance",
  16. "order": "desc",
  17. "site": "stackoverflow",
  18. "accepted": True,
  19. "pagesize": 1
  20. },
  21. )
  22. except Exception as e:
  23. raise ToolProviderCredentialValidationError(str(e))