Skip to main content

Kore Engine

El motor de conocimiento que responde antes que tu LLM.

Python Zero deps <1ms MIT


El problema

Cada empresa que usa un LLM gasta miles de euros al mes respondiendo las mismas preguntas una y otra vez. El 70-80% de las consultas de tus usuarios ya las has respondido antes.

La solución

pip install kore-engine

Kore se pone delante de tu LLM. Si sabe la respuesta, la da en menos de 1 milisegundo. Si no sabe, te dice que no sabe y tú decides si pasarla al LLM. Cada respuesta buena que pasa por Kore se queda para la próxima vez.

from kore import Kore

k = Kore("mi_dominio")
k.ingest("mi_conocimiento.jsonl")

r = k.ask("¿cómo se calcula el IVA?")
if r and r.confident:
    return r.answer          # <1ms, 0 tokens, 0 coste
else:
    return llamar_al_llm()   # Solo cuando Kore no sabe

Por qué Kore

Kore RAG + VectorDB LLM directo
Instalación pip install kore-engine Redis + Pinecone + embeddings + orquestador API key
Dependencias 0 4-6 servicios 1 API
Latencia <1ms 50-200ms 500-3000ms
Coste por query 0 ~$0.001 (embeddings) $0.01-0.10
Aprende solo Si No No
Memoria conversacional Si No Limitada

Qué puede hacer

Responder sin LLM — Kore tiene múltiples niveles de comprensión. No es un simple cache de texto exacto. Entiende variaciones, sinónimos y contexto.

Recordar conversaciones — Si un usuario pregunta "tipos de IVA" y luego dice "y el repercutido?", Kore sabe que habla de IVA repercutido.

k.ask("tipos de IVA en España", session_id="user_1")
# → "General 21%, reducido 10%, superreducido 4%"

k.ask("y el repercutido?", session_id="user_1")
# → "El IVA repercutido es el que cobra la empresa al vender..."

Aprender de las interacciones — Cuando tu LLM da una buena respuesta y el usuario la valida, Kore la incorpora. La próxima vez no necesita LLM.

k.feedback("¿cómo se cierra el ejercicio?", respuesta_del_llm, positive=True)
# A partir de ahora, Kore responde esa pregunta solo

Cualquier dominio — Fiscal, legal, médico, soporte técnico, e-commerce, educación. Tú defines las categorías de tu dominio y Kore se adapta.

k = Kore("soporte_tecnico", config=DomainConfig(
    name="soporte",
    categories={
        "hardware": ["pc", "monitor", "teclado", "ratón", "impresora"],
        "software": ["windows", "office", "email", "vpn", "antivirus"],
        "red": ["wifi", "ethernet", "dns", "proxy", "firewall"],
    },
))

Ingestar de todo — JSONL, CSV, JSON, ChatML, conversations. Le metes tu conocimiento en el formato que tengas.

k.ingest("faq.jsonl")
k.ingest("soporte.csv")
k.ingest([{"query": "...", "answer": "..."}])

Estadísticas en tiempo real — Sabes exactamente cuánto te ahorras.

s = k.stats()
# → hit_rate: 78%, queries: 15420, hits: 12028, misses: 3392

Comprensión semántica (opcional)

El paquete base ya es potente. Pero si quieres comprensión por significado (no solo por palabras), activa el nivel semántico:

pip install kore-engine[semantic]
k = Kore("mi_dominio", semantic=True)

Añade ~35MB. Sin PyTorch (2GB+). Sin GPU. Corre en cualquier CPU.

Rendimiento real

Probado con un dataset de 7,888 pares pregunta-respuesta de contabilidad española:

Métrica Resultado
Ingesta 7,888 entries en 1.1s
Hit rate en queries del dominio 100%
Falsos positivos (queries fuera de dominio) 0%
Latencia media 0.9ms/query
Memoria conversacional 16/16 queries contextuales resueltas
Sesiones paralelas Aislamiento perfecto

Persistencia

# En memoria (rápido, volátil)
k = Kore("dominio", db_path=":memory:")

# En disco (persiste entre reinicios)
k = Kore("dominio", db_path="mi_conocimiento.db")

API completa

from kore import Kore, DomainConfig

k = Kore("dominio", config=config)

# ── Conocimiento
k.ingest(source)                          # Carga masiva
k.add(query, answer)                      # Entrada individual
k.clear()                                 # Limpiar todo

# ── Consulta
r = k.ask(query)                          # Sin sesión
r = k.ask(query, session_id="user_1")     # Con memoria

# ── Resultado
r.answer                                  # Respuesta
r.score                                   # Confianza (0.0 - 1.0)
r.confident                               # True si score >= 0.7
r.level                                   # Nivel de matching
r.category                                # Categoría detectada

# ── Memoria
k.context(session_id)                     # Estado de la sesión
k.history(session_id)                     # Últimos turnos
k.forget(session_id)                      # Olvidar sesión

# ── Aprendizaje
k.feedback(query, answer, positive=True)  # Registrar feedback
k.learn()                                 # Incorporar feedback acumulado

# ── Estadísticas
k.stats()                                 # Hit rate, contadores, etc.

Requisitos

  • Python 3.10+
  • Nada más

Licencia

MIT — IAFiscal © 2026

Metadata

Release files for kore-engine 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for kore-engine 0.2.1
File Size Uploaded
kore_engine-0.2.1.tar.gz 31.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for kore-engine 0.2.1
File Interpreter ABI Platform
kore_engine-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 57.4 kB

Release files / kore_engine-0.2.1.tar.gz

Download URL kore_engine-0.2.1.tar.gz
Size 31.0 kB
Tags Source
SHA-256 checksum
How to use checksums
1e31d61fdb32de440edf9d069cc75ed43beefc2e9310553dbf9643f37e5c0e7f
BLAKE2b-256 checksum
How to use checksums
4e84de54c52851c943f1e465231179c73ae68c76eeea60de3c62a4386eaff844
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / kore_engine-0.2.1-py3-none-any.whl

Download URL kore_engine-0.2.1-py3-none-any.whl
Size 26.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b047e5a9dcd97741353a699b6a4234f9eef904c19afcd01eea3617609c07474a
BLAKE2b-256 checksum
How to use checksums
997ac2c45b0ae7157e87c20bb5b63aef36c51097787f5cbce9ea759d610c3de2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page