12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- from typing import Any, Literal, Optional, Union
- from pydantic import BaseModel
- from core.prompt.entities.advanced_prompt_entities import ChatModelMessage, CompletionModelPromptTemplate, MemoryConfig
- from core.workflow.entities.base_node_data_entities import BaseNodeData
- class ModelConfig(BaseModel):
- """
- Model Config.
- """
- provider: str
- name: str
- mode: str
- completion_params: dict[str, Any] = {}
- class ContextConfig(BaseModel):
- """
- Context Config.
- """
- enabled: bool
- variable_selector: Optional[list[str]] = None
- class VisionConfig(BaseModel):
- """
- Vision Config.
- """
- class Configs(BaseModel):
- """
- Configs.
- """
- detail: Literal['low', 'high']
- enabled: bool
- configs: Optional[Configs] = None
- class LLMNodeData(BaseNodeData):
- """
- LLM Node Data.
- """
- model: ModelConfig
- prompt_template: Union[list[ChatModelMessage], CompletionModelPromptTemplate]
- memory: Optional[MemoryConfig] = None
- context: ContextConfig
- vision: VisionConfig
|