| @@ -1,3 +1,4 @@ | |||
| from abc import ABC, abstractmethod | |||
| from typing import Optional | |||
| from core.model_runtime.entities.llm_entities import LLMResult, LLMResultChunk | |||
| @@ -13,7 +14,7 @@ _TEXT_COLOR_MAPPING = { | |||
| } | |||
| class Callback: | |||
| class Callback(ABC): | |||
| """ | |||
| Base class for callbacks. | |||
| Only for LLM. | |||
| @@ -21,6 +22,7 @@ class Callback: | |||
| raise_error: bool = False | |||
| @abstractmethod | |||
| def on_before_invoke( | |||
| self, | |||
| llm_instance: AIModel, | |||
| @@ -48,6 +50,7 @@ class Callback: | |||
| """ | |||
| raise NotImplementedError() | |||
| @abstractmethod | |||
| def on_new_chunk( | |||
| self, | |||
| llm_instance: AIModel, | |||
| @@ -77,6 +80,7 @@ class Callback: | |||
| """ | |||
| raise NotImplementedError() | |||
| @abstractmethod | |||
| def on_after_invoke( | |||
| self, | |||
| llm_instance: AIModel, | |||
| @@ -106,6 +110,7 @@ class Callback: | |||
| """ | |||
| raise NotImplementedError() | |||
| @abstractmethod | |||
| def on_invoke_error( | |||
| self, | |||
| llm_instance: AIModel, | |||