123456789101112131415161718192021 |
- import requests
- from core.tools.errors import ToolProviderCredentialValidationError
- from core.tools.provider.builtin_tool_provider import BuiltinToolProviderController
- class FalProvider(BuiltinToolProviderController):
- def _validate_credentials(self, credentials: dict) -> None:
- url = "https://fal.run/fal-ai/flux/dev"
- headers = {
- "Authorization": f"Key {credentials.get('fal_api_key')}",
- "Content-Type": "application/json",
- }
- data = {"prompt": "Cat"}
- response = requests.post(url, json=data, headers=headers)
- if response.status_code == 401:
- raise ToolProviderCredentialValidationError("FAL API key is invalid")
- elif response.status_code != 200:
- raise ToolProviderCredentialValidationError(f"FAL API key validation failed: {response.text}")
|