% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/acep_gpt.R
\name{acep_gpt_schema}
\alias{acep_gpt_schema}
\title{Esquemas JSON predefinidos para analisis de texto con GPT}
\usage{
acep_gpt_schema(tipo = "extraccion_entidades")
}
\arguments{
\item{tipo}{Tipo de esquema a devolver. Opciones:
\itemize{
  \item \code{"extraccion_entidades"}: Extrae personas, organizaciones, lugares, fechas y eventos
  \item \code{"clasificacion"}: Clasifica el texto en categorias con nivel de confianza
  \item \code{"sentimiento"}: Analiza sentimiento general y por aspectos especificos
  \item \code{"resumen"}: Genera resumenes cortos y detallados con puntos clave
  \item \code{"qa"}: Responde preguntas con citas textuales y nivel de confianza
  \item \code{"tripletes"}: Extrae relaciones sujeto-predicado-objeto
  \item \code{"protesta_breve"}: Extrae informacion basica de acciones de protesta (fecha, sujeto, accion, objeto, lugar)
  \item \code{"protesta_detallada"}: Extrae informacion detallada de multiples acciones de protesta con 9 campos por accion
  \item \code{"verdadero_falso"}: Devuelve una respuesta booleana simple (TRUE o FALSE) con nivel de confianza (0 a 1) y justificacion opcional
}}
}
\value{
Lista con esquema JSON compatible con OpenAI Structured Outputs.
  Puede usarse directamente en el parametro `schema` de `acep_gpt()` o `acep_ollama()`.
}
\description{
Proporciona esquemas JSON predefinidos y validados para casos de uso comunes
en analisis de texto con GPT. Estos esquemas garantizan respuestas estructuradas
y consistentes para tareas como extraccion de entidades, clasificacion, analisis
de sentimiento, resumen, pregunta-respuesta, extraccion de tripletes y analisis
de acciones de protesta.
}
\examples{
# Obtener esquema para extraccion de entidades
schema_entidades <- acep_gpt_schema("extraccion_entidades")
names(schema_entidades$properties)  # personas, organizaciones, lugares, fechas, eventos

# Obtener esquema para clasificacion
schema_clasif <- acep_gpt_schema("clasificacion")
names(schema_clasif$properties)  # categoria, confianza, justificacion

# Obtener esquema para analisis de sentimiento
schema_sent <- acep_gpt_schema("sentimiento")
names(schema_sent$properties)  # sentimiento_general, puntuacion, aspectos

# Obtener esquema para analisis breve de protestas
schema_protesta <- acep_gpt_schema("protesta_breve")
names(schema_protesta$properties)  # fecha, sujeto, accion, objeto, lugar

# Obtener esquema para analisis detallado de protestas
schema_protesta_det <- acep_gpt_schema("protesta_detallada")
names(schema_protesta_det$properties)  # acciones (array con 9 campos cada una)

# Obtener esquema para respuesta verdadero/falso
schema_bool <- acep_gpt_schema("verdadero_falso")
names(schema_bool$properties)  # respuesta, nivel_confianza, justificacion
}
