aef8791151
- Added Appshell component with responsive navbar and main content area - Integrated ColorSchemeToggle for light/dark mode switching - Created Welcome component with styled title and introductory text - Developed ChatPage for LLM interaction with WebSocket support - Implemented Biblioteca for managing notes with rich text editor - Added LoginPage for user authentication with error handling - Introduced MessageList and MessageBubble components for chat messages - Styled components with CSS modules for consistent design
31 lines
940 B
Python
31 lines
940 B
Python
from abc import ABC, abstractmethod
|
|
|
|
class ModeloABC(ABC):
|
|
"""
|
|
Clase base para definir la interfaz de un modelo conversacional.
|
|
"""
|
|
|
|
def __init__(
|
|
self,
|
|
model: str,
|
|
temperature: float = 0.7,
|
|
top_p: float = 1.0,
|
|
top_k: int = None,
|
|
frecuencia_penalizacion: float = 0.0,
|
|
num_tokens_maximos: int = 512
|
|
):
|
|
self.model = model
|
|
self.temperature = temperature
|
|
self.top_p = top_p
|
|
self.top_k = top_k
|
|
self.frecuencia_penalizacion = frecuencia_penalizacion
|
|
self.num_tokens_maximos = num_tokens_maximos
|
|
|
|
@abstractmethod
|
|
async def responder(self, prompt: str, system_prompt: str = "", stream: bool = False, **kwargs) -> str:
|
|
"""
|
|
Devuelve una respuesta a partir de un prompt y configuración del modelo.
|
|
Este método debe implementarse de forma asíncrona en las subclases.
|
|
"""
|
|
pass
|