Skip to main content

attractor

A Hopfield Network-based memory engine that stores and retrieves contextual memory the way a brain does — but fast.

Attractor is a standalone memory service purpose-built for storing and retrieving contextual memory. It is designed to work like a brain — not like a key-value store or a vector database.

Named after the concept of attractors in dynamical systems: stored memories are energy minima, retrieval is gradient descent to the nearest basin. Give it a partial or noisy cue and it converges to the full memory.

Install

pip install attractor-engine

Usage

Start the service

attractor start                                      # default port 7747
attractor start --port 8000                          # custom port
attractor start --db postgresql://localhost/attractor  # custom db url
attractor connect                                    # verify service is running

Write a memory

curl -X POST http://localhost:7747/memories \
  -H "Content-Type: application/json" \
  -d '{
    "content": "auth tokens should never be stored in localStorage",
    "context": {
      "topic": "security review",
      "entities": ["auth", "frontend team"],
      "task": "reviewing PR #42",
      "session_id": "abc123"
    },
    "tags": ["security", "auth"]
  }'

Retrieve by ID

curl http://localhost:7747/memories/<id>

Search

curl -X POST http://localhost:7747/memories/search \
  -H "Content-Type: application/json" \
  -d '{
    "query": "where did we land on auth token storage",
    "context_filter": { "topic": "security review" },
    "limit": 5
  }'

Requirements

  • Python 3.10+
  • PostgreSQL with pgvector extension

Status

Phase 1 complete — storage, retrieval, and semantic search are working. Phases 2–4 (association graph, decay, Hopfield retrieval) are in development.

Source

github.com/aag1091-alt/attractor

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

attractor_engine-0.1.0.tar.gz (7.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

attractor_engine-0.1.0-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file attractor_engine-0.1.0.tar.gz.

File metadata

  • Download URL: attractor_engine-0.1.0.tar.gz
  • Upload date:
  • Size: 7.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.6

File hashes

Hashes for attractor_engine-0.1.0.tar.gz
Algorithm Hash digest
SHA256 8f2c7c8fd106745830e79543c981e08e17462c915d8719ef3829ca6e80160b98
MD5 04226880a87cc5ce0ae2ff31f3d657b2
BLAKE2b-256 be4507ccc6bb6ef5c770191b035e6a18abb909b9b01dc837fb232ebec3a6ed86

See more details on using hashes here.

File details

Details for the file attractor_engine-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for attractor_engine-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1819d326764a5411e13dfb4d032d2fdee69ebe3265f610d44c9d66d9a3ac72d3
MD5 2cd264c4e5bf0c82e630d8ea68c6470a
BLAKE2b-256 f29fa7256e73d37af6368c00d599eb62c97e3a07f285601585e7b15b615aeeb7

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 files

0.0.1

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page