did.py 881 B

123456789101112131415161718
  1. from core.tools.errors import ToolProviderCredentialValidationError
  2. from core.tools.provider.builtin.did.tools.talks import TalksTool
  3. from core.tools.provider.builtin_tool_provider import BuiltinToolProviderController
  4. class DIDProvider(BuiltinToolProviderController):
  5. def _validate_credentials(self, credentials: dict) -> None:
  6. try:
  7. # Example validation using the D-ID talks tool
  8. TalksTool().fork_tool_runtime(runtime={"credentials": credentials}).invoke(
  9. user_id="",
  10. tool_parameters={
  11. "source_url": "https://www.d-id.com/wp-content/uploads/2023/11/Hero-image-1.png",
  12. "text_input": "Hello, welcome to use D-ID tool in Dify",
  13. },
  14. )
  15. except Exception as e:
  16. raise ToolProviderCredentialValidationError(str(e))