123456789101112131415161718192021222324252627282930313233343536 |
- import json
- from core.tools.errors import ToolProviderCredentialValidationError
- from core.tools.provider.builtin.spark.tools.spark_img_generation import spark_response
- from core.tools.provider.builtin_tool_provider import BuiltinToolProviderController
- class SparkProvider(BuiltinToolProviderController):
- def _validate_credentials(self, credentials: dict) -> None:
- try:
- if "APPID" not in credentials or not credentials.get("APPID"):
- raise ToolProviderCredentialValidationError("APPID is required.")
- if "APISecret" not in credentials or not credentials.get("APISecret"):
- raise ToolProviderCredentialValidationError("APISecret is required.")
- if "APIKey" not in credentials or not credentials.get("APIKey"):
- raise ToolProviderCredentialValidationError("APIKey is required.")
- appid = credentials.get("APPID")
- apisecret = credentials.get("APISecret")
- apikey = credentials.get("APIKey")
- prompt = "a cute black dog"
- try:
- response = spark_response(prompt, appid, apikey, apisecret)
- data = json.loads(response)
- code = data["header"]["code"]
- if code == 0:
- # 0 success,
- pass
- else:
- raise ToolProviderCredentialValidationError("image generate error, code:{}".format(code))
- except Exception as e:
- raise ToolProviderCredentialValidationError("APPID APISecret APIKey is invalid. {}".format(e))
- except Exception as e:
- raise ToolProviderCredentialValidationError(str(e))
|