ragsolver / docs /interfaces.md
CamiloS1111's picture
Upload folder using huggingface_hub
ee54756 verified
|
Raw History Blame Contribute Delete
2.83 kB

Contratos de interfaz (RNF-4)

Todos los contratos son modelos Pydantic v2; los JSON Schema en docs/interfaces/*.schema.json se regeneran con python scripts/export_schemas.py y son derivados del código, no al revés.

Módulo RAG (src/ragsolver/rag/schema.py, PLAN_RAG.md §7-§8)

Esquema Uso
Document metadatos por fuente (doc_id, licencia, redistributable, parser)
ChunkBase / MathlibChunk / InformalChunk filas de las tablas LanceDB mathlib / informal
Figure tabla figures (recorte, bbox, descripción VLM, detected_by)
RetrievalRequest entrada del retriever: queries[1-4], mode, corpora, k, n_candidates, filters, rerank, include_figures, context
RetrievalResult hits[] (con figures[] y citation), citations[], trace
Citation citation_id (M1../I1..), locator, scores, used_in_proof, used_in_sketch, snippet
TraceEvent evento JSONL por búsqueda/llamada (RNF-5) con VersionsPin; en llamadas LLM request lleva model, tokens_in, tokens_out, cost_usd (exacto, OpenRouter) y decision (salida validada)

Agentes (src/ragsolver/agents/schemas.py, propuesta §6.3)

Esquema Agente Campos clave
Problem entrada informal_statement, formal_statement (... := by sorry), header (open ...), imports
PlannerOutput Planificador strategy, subgoals[1-6] con statement_nl, formal_hint, search_queries[≤3], math_area
GeneratorOutput Generador sketch, used_citations[]
FormalizerOutput Autoformalizador proof_tactics (sólo el bloque tras := by), notes
CriticOutput Crítico error_type, action (retry/replan/abandon), missing_identifiers[], feedback
BaselineAOutput / BaselineBOutput líneas base A / B A: proof_tactics (obligatorio); B: natural_language_proof + self_assessed_correct (obligatorios)
Verdict Verificador ok, errors[{line,col,message}], uses_sorry, axioms[] (auditoría VER-1: ok=true exige subconjunto de propext/Classical.choice/Quot.sound), seconds
SolutionReport orquestador estado, intentos, llamadas, tokens, lean_code, citations[] clasificadas, taxonomía de errores, re-recuperaciones

Configuración

  • configs/versions.yaml: pins (Lean/Mathlib, modelos, proveedor LLM y cadena de modelos, índice).
  • configs/retrieval.yaml: plantillas de consulta por modo, rrf_k, max_per_module, flags de ablación del retriever.
  • configs/agents.yaml: k_max, llm_budget, recuperación de los agentes, backend Lean, configuraciones de ablación, prompts versionados.
  • configs/ingest.yaml: filtros de Mathlib, parámetros del PDF, prompts de enriquecimiento (versionados).