Saltar al contingut

Retrieval (RETRIEVE)

El retrieval és una font de relació dins d’OSL-SQL: la funció de taula RETRIEVE(...). Ja no hi ha un endpoint /osl/retrieve separat — fas SELECT des de RETRIEVE(...) en un body de POST /osl/query.

SELECT text, score, customer_id
FROM RETRIEVE(facet => 'meeting_transcripts',
query => 'european equity exposure',
top_k => 5)
  • facet — una UnstructuredFacet declarada.
  • query — text natural; el motor l’embeggeix amb el model declarat a la faceta.
  • top_k — ha de complir ≤ facet.retrieval.max_top_k.
  • Els filtres de metadata els aplica el store governat (predicats de fila per subjecte) abans del retall d’overfetch de l’ACL.

Cada passatge retornat porta un bloc cite (source · doc · chunk) i la seva clau d’entitat desnormalitzada, així els resultats es poden atribuir i correlacionar.

{
"text": "Anna wants to increase EU equity exposure […]",
"score": 0.91,
"customer_id": "9c1e…f04a",
"cite": { "source": "gong://…", "doc_id": "meet-2026-05-08-7a3c", "chunk_id": "chk-…" },
"redacted_fields": []
}
  • Versió de redacció. La faceta se serveix a la versió de redacció requerida pel subjecte — exact-or-deny. Els camps de metadata redactats es llisten a redacted_fields.
  • ACL row-level. Deny-by-default: un actor sense grant obté zero passatges.
  • Aïllament. La query obre només la taula Lance de la versió seleccionada — cap canal lateral cap a vectors menys redactats.