refactor(api): use standalone graphon package (#34209)

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
This commit is contained in:
99
2026-03-28 05:05:32 +08:00
committed by GitHub
parent 32d394d65b
commit 40591a7c50
883 changed files with 1779 additions and 47377 deletions

View File

@ -2,6 +2,20 @@ import tempfile
from binascii import hexlify, unhexlify
from collections.abc import Generator
from graphon.model_runtime.entities.llm_entities import (
LLMResult,
LLMResultChunk,
LLMResultChunkDelta,
LLMResultChunkWithStructuredOutput,
LLMResultWithStructuredOutput,
)
from graphon.model_runtime.entities.message_entities import (
PromptMessage,
SystemPromptMessage,
UserPromptMessage,
)
from graphon.model_runtime.entities.model_entities import ModelType
from core.app.llm import deduct_llm_quota
from core.llm_generator.output_parser.structured_output import invoke_llm_with_structured_output
from core.model_manager import ModelManager
@ -18,19 +32,6 @@ from core.plugin.entities.request import (
)
from core.tools.entities.tool_entities import ToolProviderType
from core.tools.utils.model_invocation_utils import ModelInvocationUtils
from graphon.model_runtime.entities.llm_entities import (
LLMResult,
LLMResultChunk,
LLMResultChunkDelta,
LLMResultChunkWithStructuredOutput,
LLMResultWithStructuredOutput,
)
from graphon.model_runtime.entities.message_entities import (
PromptMessage,
SystemPromptMessage,
UserPromptMessage,
)
from graphon.model_runtime.entities.model_entities import ModelType
from models.account import Tenant

View File

@ -1,8 +1,5 @@
from core.plugin.backwards_invocation.base import BaseBackwardsInvocation
from graphon.enums import BuiltinNodeTypes
from graphon.nodes.parameter_extractor.entities import (
ModelConfig as ParameterExtractorModelConfig,
)
from graphon.nodes.llm.entities import ModelConfig as LLMModelConfig
from graphon.nodes.parameter_extractor.entities import (
ParameterConfig,
ParameterExtractorNodeData,
@ -11,9 +8,8 @@ from graphon.nodes.question_classifier.entities import (
ClassConfig,
QuestionClassifierNodeData,
)
from graphon.nodes.question_classifier.entities import (
ModelConfig as QuestionClassifierModelConfig,
)
from core.plugin.backwards_invocation.base import BaseBackwardsInvocation
from services.workflow_service import WorkflowService
@ -24,7 +20,7 @@ class PluginNodeBackwardsInvocation(BaseBackwardsInvocation):
tenant_id: str,
user_id: str,
parameters: list[ParameterConfig],
model_config: ParameterExtractorModelConfig,
model_config: LLMModelConfig,
instruction: str,
query: str,
):
@ -74,7 +70,7 @@ class PluginNodeBackwardsInvocation(BaseBackwardsInvocation):
cls,
tenant_id: str,
user_id: str,
model_config: QuestionClassifierModelConfig,
model_config: LLMModelConfig,
classes: list[ClassConfig],
instruction: str,
query: str,

View File

@ -1,10 +1,10 @@
from graphon.model_runtime.entities.provider_entities import ProviderEntity
from pydantic import BaseModel, Field, computed_field, model_validator
from core.plugin.entities.endpoint import EndpointProviderDeclaration
from core.plugin.entities.plugin import PluginResourceRequirements
from core.tools.entities.common_entities import I18nObject
from core.tools.entities.tool_entities import ToolProviderEntity
from graphon.model_runtime.entities.provider_entities import ProviderEntity
class MarketplacePluginDeclaration(BaseModel):

View File

@ -3,6 +3,7 @@ from collections.abc import Mapping
from enum import StrEnum, auto
from typing import Any
from graphon.model_runtime.entities.provider_entities import ProviderEntity
from packaging.version import InvalidVersion, Version
from pydantic import BaseModel, Field, field_validator, model_validator
@ -13,7 +14,6 @@ from core.plugin.entities.endpoint import EndpointProviderDeclaration
from core.tools.entities.common_entities import I18nObject
from core.tools.entities.tool_entities import ToolProviderEntity
from core.trigger.entities.entities import TriggerProviderEntity
from graphon.model_runtime.entities.provider_entities import ProviderEntity
class PluginInstallationSource(StrEnum):

View File

@ -6,6 +6,8 @@ from datetime import datetime
from enum import StrEnum
from typing import Any, Generic, TypeVar
from graphon.model_runtime.entities.model_entities import AIModelEntity
from graphon.model_runtime.entities.provider_entities import ProviderEntity
from pydantic import BaseModel, ConfigDict, Field
from core.agent.plugin_entities import AgentProviderEntityWithPlugin
@ -16,8 +18,6 @@ from core.plugin.entities.plugin import PluginDeclaration, PluginEntity
from core.tools.entities.common_entities import I18nObject
from core.tools.entities.tool_entities import ToolProviderEntityWithPlugin
from core.trigger.entities.entities import TriggerProviderEntity
from graphon.model_runtime.entities.model_entities import AIModelEntity
from graphon.model_runtime.entities.provider_entities import ProviderEntity
T = TypeVar("T", bound=(BaseModel | dict | list | bool | str))

View File

@ -4,10 +4,6 @@ from collections.abc import Mapping
from typing import Any, Literal
from flask import Response
from pydantic import BaseModel, ConfigDict, Field, field_validator
from core.entities.provider_entities import BasicProviderConfig
from core.plugin.utils.http_parser import deserialize_response
from graphon.model_runtime.entities.message_entities import (
AssistantPromptMessage,
PromptMessage,
@ -18,18 +14,17 @@ from graphon.model_runtime.entities.message_entities import (
UserPromptMessage,
)
from graphon.model_runtime.entities.model_entities import ModelType
from graphon.nodes.parameter_extractor.entities import (
ModelConfig as ParameterExtractorModelConfig,
)
from graphon.nodes.llm.entities import ModelConfig as LLMModelConfig
from graphon.nodes.parameter_extractor.entities import (
ParameterConfig,
)
from graphon.nodes.question_classifier.entities import (
ClassConfig,
)
from graphon.nodes.question_classifier.entities import (
ModelConfig as QuestionClassifierModelConfig,
)
from pydantic import BaseModel, ConfigDict, Field, field_validator
from core.entities.provider_entities import BasicProviderConfig
from core.plugin.utils.http_parser import deserialize_response
class InvokeCredentials(BaseModel):
@ -176,7 +171,7 @@ class RequestInvokeParameterExtractorNode(BaseModel):
"""
parameters: list[ParameterConfig]
model: ParameterExtractorModelConfig
model: LLMModelConfig
instruction: str
query: str
@ -187,7 +182,7 @@ class RequestInvokeQuestionClassifierNode(BaseModel):
"""
query: str
model: QuestionClassifierModelConfig
model: LLMModelConfig
classes: list[ClassConfig]
instruction: str

View File

@ -5,6 +5,14 @@ from collections.abc import Callable, Generator
from typing import Any, TypeVar, cast
import httpx
from graphon.model_runtime.errors.invoke import (
InvokeAuthorizationError,
InvokeBadRequestError,
InvokeConnectionError,
InvokeRateLimitError,
InvokeServerUnavailableError,
)
from graphon.model_runtime.errors.validate import CredentialsValidateFailedError
from pydantic import BaseModel
from yarl import URL
@ -28,14 +36,6 @@ from core.trigger.errors import (
TriggerPluginInvokeError,
TriggerProviderCredentialValidationError,
)
from graphon.model_runtime.errors.invoke import (
InvokeAuthorizationError,
InvokeBadRequestError,
InvokeConnectionError,
InvokeRateLimitError,
InvokeServerUnavailableError,
)
from graphon.model_runtime.errors.validate import CredentialsValidateFailedError
plugin_daemon_inner_api_baseurl = URL(str(dify_config.PLUGIN_DAEMON_URL))
_plugin_daemon_timeout_config = cast(

View File

@ -2,6 +2,13 @@ import binascii
from collections.abc import Generator, Sequence
from typing import IO, Any
from graphon.model_runtime.entities.llm_entities import LLMResultChunk
from graphon.model_runtime.entities.message_entities import PromptMessage, PromptMessageTool
from graphon.model_runtime.entities.model_entities import AIModelEntity
from graphon.model_runtime.entities.rerank_entities import MultimodalRerankInput, RerankResult
from graphon.model_runtime.entities.text_embedding_entities import EmbeddingResult
from graphon.model_runtime.utils.encoders import jsonable_encoder
from core.plugin.entities.plugin_daemon import (
PluginBasicBooleanResponse,
PluginDaemonInnerError,
@ -13,12 +20,6 @@ from core.plugin.entities.plugin_daemon import (
PluginVoicesResponse,
)
from core.plugin.impl.base import BasePluginClient
from graphon.model_runtime.entities.llm_entities import LLMResultChunk
from graphon.model_runtime.entities.message_entities import PromptMessage, PromptMessageTool
from graphon.model_runtime.entities.model_entities import AIModelEntity
from graphon.model_runtime.entities.rerank_entities import MultimodalRerankInput, RerankResult
from graphon.model_runtime.entities.text_embedding_entities import EmbeddingResult
from graphon.model_runtime.utils.encoders import jsonable_encoder
class PluginModelClient(BasePluginClient):

View File

@ -6,6 +6,13 @@ from collections.abc import Generator, Iterable, Sequence
from threading import Lock
from typing import IO, Any, Union
from graphon.model_runtime.entities.llm_entities import LLMResult, LLMResultChunk
from graphon.model_runtime.entities.message_entities import PromptMessage, PromptMessageTool
from graphon.model_runtime.entities.model_entities import AIModelEntity, ModelType
from graphon.model_runtime.entities.provider_entities import ProviderEntity
from graphon.model_runtime.entities.rerank_entities import MultimodalRerankInput, RerankResult
from graphon.model_runtime.entities.text_embedding_entities import EmbeddingInputType, EmbeddingResult
from graphon.model_runtime.runtime import ModelRuntime
from pydantic import ValidationError
from redis import RedisError
@ -14,13 +21,6 @@ from core.plugin.entities.plugin_daemon import PluginModelProviderEntity
from core.plugin.impl.asset import PluginAssetManager
from core.plugin.impl.model import PluginModelClient
from extensions.ext_redis import redis_client
from graphon.model_runtime.entities.llm_entities import LLMResult, LLMResultChunk
from graphon.model_runtime.entities.message_entities import PromptMessage, PromptMessageTool
from graphon.model_runtime.entities.model_entities import AIModelEntity, ModelType
from graphon.model_runtime.entities.provider_entities import ProviderEntity
from graphon.model_runtime.entities.rerank_entities import MultimodalRerankInput, RerankResult
from graphon.model_runtime.entities.text_embedding_entities import EmbeddingInputType, EmbeddingResult
from graphon.model_runtime.runtime import ModelRuntime
from models.provider_ids import ModelProviderID
logger = logging.getLogger(__name__)

View File

@ -2,9 +2,10 @@ from __future__ import annotations
from typing import TYPE_CHECKING
from core.plugin.impl.model import PluginModelClient
from graphon.model_runtime.model_providers.model_provider_factory import ModelProviderFactory
from core.plugin.impl.model import PluginModelClient
if TYPE_CHECKING:
from core.model_manager import ModelManager
from core.plugin.impl.model_runtime import PluginModelRuntime

View File

@ -1,7 +1,8 @@
from typing import Any
from graphon.file import File
from core.tools.entities.tool_entities import ToolSelector
from graphon.file.models import File
def convert_parameters_to_plugin_format(parameters: dict[str, Any]) -> dict[str, Any]: