Skip to main content
Velixar can automatically extract key facts, preferences, and decisions from conversations — no manual tagging required.

How it works

1

Conversation flows normally

Your user chats with your AI. No changes to your chat flow needed.
2

Extraction triggers

Extraction runs on two triggers:
  • Session endPOST /api/session/end fires extraction on the full conversation
  • Periodic — Every 10 messages as a fallback
3

LLM extracts memories

An LLM analyzes the conversation and pulls out discrete facts, preferences, and decisions with a salience score.
4

Entity extraction

Entities (people, tools, projects, concepts) and their relationships are extracted from each memory and added to the knowledge graph. This enables graph traversal and structural queries alongside vector search.
5

Dedup & conflict resolution

  • Semantic dedup: If a new memory has cosine similarity > 0.85 with an existing one, it’s skipped
  • Conflict resolution: If the new memory contradicts an old one, the old memory is deleted and the new one is stored
6

Tier routing

Memories are auto-routed based on salience:
  • Salience ≥ 0.8 → Tier 0 (pinned)
  • Salience < 0.8 → Tier 2 (semantic)

Example

A user says during a chat:
“Actually, I switched from VS Code to Cursor last week. And I prefer TypeScript over JavaScript now.”
Velixar extracts:
MemoryTypeSalienceTier
”User’s primary editor is Cursor (switched from VS Code)“preference0.850
”User prefers TypeScript over JavaScript”preference0.820
If a previous memory said “User’s primary editor is VS Code”, it gets deleted and replaced.

Triggering extraction

End a session to trigger extraction:
curl -X POST https://api.velixarai.com/api/session/end \
  -H "Authorization: Bearer vlx_your_key" \
  -H "Content-Type: application/json" \
  -d '{"session_id": "sess_abc123"}'
The extraction runs asynchronously. Extracted memories appear in your memory store within seconds.