High-Performance Rete Engine with Hash Joins for Python.
Project description
Ikin-Expert 🧠 v2.0.3
A High-Performance Rete Engine with Hash Joins for Python
"A ciência é feita de dados, mas a sabedoria é feita de inferências."
🚀 O que há de novo na v2.0.3?
Esta versão eleva o motor com foco em estabilidade, integração e previsibilidade operacional:
- ✅ Ponte Alfa-Beta (Hash-Join Layer): correção crítica na propagação de fatos entre nós Alfa (filtros) e Beta (junções). Agora, a interseção entre múltiplos fatos é realizada por meio de indexação por hash.
- ✅ Resiliência de Memória: validada em testes de estresse com mais de 20 horas de execução, ocupação de 100% de CPU e consumo estável de RAM (~4.5%), sem indícios de memory leaks.
- ✅ Dicionário de Operadores Estável: padronização da sintaxe de comparação (
__gte,__contains,__eq, entre outros), favorecendo legibilidade, manutenção e consistência interna.
📋 Sobre o Projeto
O Ikin-Expert é uma biblioteca de sistemas especialistas desenvolvida pela Kalluan Cartoon para substituir motores legados, unindo IA simbólica à robustez do Pydantic v2.
Diferentemente de abordagens anteriores baseadas em estruturas menos eficientes, o Ikin-Expert implementa indexação automática, tipagem forte e uma arquitetura orientada à previsibilidade de execução.
Principais Diferenciais
- ⚡ Junções otimizadas com Hash Indexing: reduz o custo de cruzamento entre fatos em cenários comuns, evitando o produto cartesiano ingênuo.
- 🛡️ Engenharia de Dados: integração nativa com Pydantic, promovendo validação forte e maior confiabilidade na modelagem dos fatos.
- 🏗️ Arquitetura Rete otimizada: separação clara entre Working Memory e Knowledge Base, favorecendo organização, escalabilidade e previsibilidade temporal.
- 🔎 Regras mais expressivas: suporte a operadores declarativos para construção de condições mais legíveis e fáceis de manter.
🛠 Instalação
Disponível oficialmente no PyPI:
pip install ikin-expert
Requisitos: Python 3.10 ou superior.
💻 Exemplo de Uso: Automação Residencial (IoT)
Veja como criar um "cérebro" para uma casa inteligente que toma decisões com base em sensores:
from ikin_expert import KnowledgeEngine, Rule, Fact, MATCH
from pydantic import Field
# 1. Definição dos modelos de dados (fatos)
class Termostato(Fact):
local: str
temperatura: float = Field(gt=-50, lt=100)
class Presenca(Fact):
local: str
detectada: bool
# 2. Motor de inferência (gestão de climatização)
class ClimaManager(KnowledgeEngine):
# REGRA:
# Se houver presença no local (MATCH.loc)
# e a temperatura for maior que 25 °C,
# então o sistema ativa a refrigeração.
@Rule(
Presenca(local=MATCH.loc, detectada=True),
Termostato(local=MATCH.loc, temperatura__gt=25.0)
)
def ligar_refrigeracao(self, loc):
print(f"❄️ AÇÃO: Climatizando {loc}. Conforto térmico ativado.")
# 3. Execução
sistema = ClimaManager()
sistema.reset() # Limpeza da Working Memory
# Simulação de dados de sensores
sistema.declare(Presenca(local="sala", detectada=True))
sistema.declare(Termostato(local="sala", temperatura=28.5))
sistema.run()
🆚 Comparativo de Performance
| Métrica | Métodos legados (naive) | Ikin-Expert v2.0.3 |
|---|---|---|
| Estratégia de junção | Produto cartesiano / varredura ingênua | Indexação por hash |
| Escalabilidade | Limitada em cenários com alto volume de fatos | Otimizada para cenários mais complexos |
| Uso de memória em estresse | Inconsistente / sujeito a vazamentos | Estável (~4.5% de RAM) |
| Variabilidade temporal | Alta / imprevisível | Baixa / mais previsível |
Nota: o ganho de desempenho depende do volume de fatos, do número de regras e do padrão de junção empregado no problema.
⚖️ Propriedade Intelectual
- Registro de Software (INPI): BR 51 2026 000822-0
- Licença: Dual License (MIT + Apache 2.0)
👨🏿🔬 Autor e Pesquisador
Desenvolvido por Kalluan Cley Fiuza.
- 🔬 Foco de pesquisa: HealthTech, IA simbólica e sistemas especialistas
- 🏢 Mantenedor: projeto incubado no ecossistema Kalluan Cartoon™
- 📧 Email: contato@kalluancartoon.com.br
- 🔗 LinkedIn: Kalluan C. Fiuza
- 🆔 ORCID: 0009-0005-2693-6477
- 📚 Currículo Lattes: Acessar Lattes
📌 Observações
O Ikin-Expert foi projetado para aplicações que exigem inferência simbólica, rastreabilidade lógica e controle explícito sobre regras de decisão, sendo especialmente promissor em domínios como:
- sistemas especialistas médicos;
- automação inteligente;
- motores de decisão baseados em regras;
- validação e classificação simbólica de conhecimento.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ikin_expert-2.0.3.tar.gz.
File metadata
- Download URL: ikin_expert-2.0.3.tar.gz
- Upload date:
- Size: 16.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
54441da6ec9d4091cbc4bdaee446fc8330eaf5ebf7a15c9d44bfb755e0adb55e
|
|
| MD5 |
25ae3d0f233dbcd98011a2b681177841
|
|
| BLAKE2b-256 |
8adae27c76a83d9602d0d2553e2c2784fbdb0f257889bc78be24e465074c99d6
|
File details
Details for the file ikin_expert-2.0.3-py3-none-any.whl.
File metadata
- Download URL: ikin_expert-2.0.3-py3-none-any.whl
- Upload date:
- Size: 13.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dfedc454da930942554db4830069fdb0fd9960cdb1ef446d6f184835cc7cd2c3
|
|
| MD5 |
0982215b9652a14bf7c76ebc24ee965a
|
|
| BLAKE2b-256 |
441b718e0db77f6459e028b4910fa980abd7fe2d89245a05c70732303afb8032
|