|
@@ -5,6 +5,7 @@ from collections.abc import Mapping
|
|
|
from typing import Any, Optional
|
|
|
|
|
|
from pydantic import BaseModel, Field, model_validator
|
|
|
+from werkzeug.exceptions import NotFound
|
|
|
|
|
|
from core.agent.plugin_entities import AgentStrategyProviderEntity
|
|
|
from core.model_runtime.entities.provider_entities import ProviderEntity
|
|
@@ -153,6 +154,8 @@ class GenericProviderID:
|
|
|
return f"{self.organization}/{self.plugin_name}/{self.provider_name}"
|
|
|
|
|
|
def __init__(self, value: str, is_hardcoded: bool = False) -> None:
|
|
|
+ if not value:
|
|
|
+ raise NotFound("plugin not found, please add plugin")
|
|
|
# check if the value is a valid plugin id with format: $organization/$plugin_name/$provider_name
|
|
|
if not re.match(r"^[a-z0-9_-]+\/[a-z0-9_-]+\/[a-z0-9_-]+$", value):
|
|
|
# check if matches [a-z0-9_-]+, if yes, append with langgenius/$value/$value
|