Primera fase: se construyen las funciones para las primeras 12 preguntas

This commit is contained in:
Mongar28
2025-10-30 11:05:14 -05:00
parent e2b027026d
commit 878ff1e9f3
16 changed files with 1953 additions and 0 deletions

View File

@@ -0,0 +1,101 @@
from pydantic import BaseModel, Field
from typing import Optional
class Accion(BaseModel):
accion: str = Field(..., description="Texto de la accion extraida de la respuesta.")
class Acciones(BaseModel):
acciones: list[Accion] = Field(
..., description="Lista de acciones extraidas de la respuesta."
)
class Tema(BaseModel):
tema: str = Field(..., description="Texto del tema extraido de la respuesta.")
class Temas(BaseModel):
temas: list[Tema] = Field(
..., description="Lista de temas extraidos de la respuesta."
)
class Estrategia(BaseModel):
estrategia: str = Field(
..., description="Texto de la estrategia extraida de la respuesta."
)
class Estrategias(BaseModel):
estrategias: list[Estrategia] = Field(
..., description="Lista de estrategias extraidas de la respuesta."
)
class Factor(BaseModel):
factor: str = Field(..., description="Texto del factor extraido de la respuesta.")
class Factores(BaseModel):
factores: list[Factor] = Field(
..., description="Lista de factores extraidos de la respuesta."
)
class Entidad(BaseModel):
entidad: str = Field(
...,
description="Texto del programa, alianza o convenio extraido de la respuesta.",
)
class Entidades(BaseModel):
entidades: list[Entidad] = Field(
...,
description="Lista de entidades ( programa, alianza o convenio) extraidas de la respuesta.",
)
class Competencias(BaseModel):
basicas: Optional[list[str]] = Field(
default_factory=list, description="Lista de competencias básicas"
)
socioemocionales: Optional[list[str]] = Field(
default_factory=list, description="Lista de competencias socioemocionales"
)
ciudadanas: Optional[list[str]] = Field(
default_factory=list, description="Lista de competencias ciudadanas"
)
siglo_xxi: Optional[list[str]] = Field(
default_factory=list, description="Lista de competencias siglo_xxi"
)
class Herramienta(BaseModel):
herramienta: str = Field(
...,
description="Texto de la herramienta extraida de la respuesta.",
)
class Herramientas(BaseModel):
herramientas: list[Herramienta] = Field(
...,
description="Lista de herramientas extraidas de la respuesta.",
)
class Mecanismo(BaseModel):
mecanismo: str = Field(
...,
description="Texto del mecanismo extraido de la respuesta.",
)
class Mecanismos(BaseModel):
mecanismos: list[Mecanismo] = Field(
...,
description="Lista de mecanismos extraidas de la respuesta.",
)