feat: Implement the initial IPSExtractor project structure, including application logic, GUI, core utilities, and documentation.

This commit is contained in:
erik
2026-02-23 09:24:06 -05:00
commit 69debb1c93
49 changed files with 7385 additions and 0 deletions
+26
View File
@@ -0,0 +1,26 @@
# `application/profiles.py`
## Propósito
Define perfiles por tipo de documento con:
- `wrap_root`: clave raíz para envolver salidas.
- `default_instruction`: instrucción por defecto para el LLM.
- `aggregate_list_paths`: rutas de listas a agregar en CSV cuando corresponda.
## API pública
### `get_profile(name: str) -> Profile`
Devuelve un perfil por nombre. Si no existe, usa `invoice`.
## Perfiles
- `invoice`: sin `wrap_root`, instrucción para tablas y etiquetas.
## Ejemplo
```python
from application.profiles import get_profile
prof = get_profile("invoice")
inst = prof["default_instruction"]
agg = prof.get("aggregate_list_paths")
```