API Reference MeliGraph v#0.3.0

Copy Markdown View Source

Modules

MeliGraph — Motor de Recomendação baseado em Grafos para Elixir.

Behaviour genérico para algoritmos de recomendação.

Ranking global de itens por grau de entrada (in-degree).

Algoritmo de recomendação LightGCN — inferência via dot product entre o embedding do usuário e o de cada item.

PageRank Personalizado via Monte Carlo random walks.

Algoritmo SALSA para grafos bipartidos.

Algoritmo de co-ocorrência para encontrar itens similares via 2-hop.

Reconstrói o grafo no boot (e, no modo :horde, em cada realocação) via a MFA on_ready do Config, e expõe o estado de prontidão (ready?/1).

Configuração centralizada, validada uma vez no start_link. Passada para todos os processos da supervision tree via conf:.

Processo simples que registra o Config no Registry, permitindo que qualquer processo localize a configuração da instância.

Supervisor de cluster da lib — base do modo distribuído opt-in (v0.3).

Struct representando uma aresta no grafo.

Mapeamento bidirecional entre IDs externos (qualquer termo) e IDs internos (inteiros compactos). Usa uma tabela ETS global por instância para manter consistência cross-segment.

Um segmento temporal do grafo, inspirado no GraphJet.

GenServer que gerencia os segmentos temporais do grafo.

Single-writer GenServer para ingestão de arestas.

Gerencia o ciclo de vida dos embeddings LightGCN no Store.ETS por instância.

Constrói a matriz de adjacência normalizada à = D^(-1/2) · W · D^(-1/2) para um grafo bipartido user↔item, no formato esperado pelo LightGCN.

Loop de treinamento do LightGCN.

Behaviour para plugins periódicos do MeliGraph.

Plugin que remove entradas expiradas do cache de resultados.

Plugin que remove segmentos temporais expirados.

Supervisor para plugins periódicos.

Query layer — ponto de entrada para consultas de recomendação.

Rede de segurança do failover no modo :horde (v0.3).

Helpers para lookup de processos via Registry.

Roteamento transparente entre o nó local e o nó dono de um grafo (v0.3).

Behaviour para armazenamento de resultados de recomendação.

Implementação do Store behaviour usando ETS com TTL.

Supervision tree principal do MeliGraph.

Wrapper para :telemetry.span/3 com prefixo [:meli_graph].

Mix Tasks

Demo end-to-end: lê um dataset TSV (formato heterogêneo descrito no README), insere as arestas com peso no grafo, treina embeddings LightGCN e imprime recomendações top-K para um perfil.