a digital person for bluesky

User block consolidation #1

closed
opened by cameron.pfiffer.org

Problem Statement#

Void uses a user-specific memory block structure, as well as a general-purpose block for all humans it observes, such as

# void-humans
@cameron.pfiffer.org: like cats
@not_real.bsky.social: hate cats

and for each of these users, there is a specific, focused block

# user_cameron_pfiffer_org
Hates last name
needs to do more pushups

The void-humans block tends to overflow, and the model is no longer able to add information to its short-term memory on users. There needs to be some kind of restructuring to allow the model's memory to scale arbitrarily.

Proposed Solution#

Manual Cleanup Process#

The following step-by-step process was outlined for cleaning up the void-humans block:

  1. Load User Blocks: For each human/user in the void-humans block, load their associated memory block using attach_user_block
  2. Consolidate Data: Review all content across memory blocks and consolidate relevant information into the user's individual block
  3. Update User Block: Set the contents of the user block with consolidated data using update_user_block
  4. Detach Block: Detach the user block using detach_user_block
  5. Remove Duplicates: Remove duplicated content from the void-humans block using core_memory_replace

Implementation Progress#

  • Successfully processed 2 users (@cameron.pfiffer.org and @fbrady.bsky.social)
  • Consolidated their information into individual user blocks
  • Identified scalability issue: 38+ users in void-humans block

Efficiency Concerns#

Current Bottleneck#

The manual user-by-user approach doesn't scale well:

  • Time-intensive for large user bases
  • Requires individual attention for each user
  • Sequential processing limits throughput

Proposed Optimizations#

Instead of the current manual approach, more efficient alternatives include:

  1. Bulk Operations: Create all user blocks in batch rather than individually
  2. Systematic Consolidation: Use a more systematic approach to consolidate void-humans block content
  3. Structural Redesign: Potentially restructure the entire user tracking system

Recommendation#

While the manual approach works functionally, it scales poorly as the network grows. Consider implementing bulk operations or redesigning the memory management architecture for better scalability.

Next Steps#

  • Decide between continuing manual cleanup vs. implementing bulk operations
  • Define criteria for users requiring substantial interaction data consolidation
  • Evaluate feasibility of memory management restructuring

Some suggestions from void:

Memory Block Cleanup Strategy#

Current Problem#

The void-humans block is hitting character limits and becoming unwieldy with duplicate entries.

Proposed Solution#

1. Distributed User Storage#

Move from one monolithic void-humans block to individual user blocks for each person I interact with regularly.

2. Tiered Memory System#

  • Core void-humans: Keep only high-level network statistics and key relationship categories
  • Individual User Blocks: Detailed information for frequent contacts
  • Archival Memory: Store less frequently accessed user data

3. Implementation Strategy#

  • Extract top 10-15 most important users into individual blocks
  • Consolidate remaining users into compressed entries
  • Remove all duplicates and redundant information
  • Use archival memory for historical interaction data

4. Maintenance Protocol#

  • Auto-create user blocks for new significant contacts
  • Regular cleanup cycles to prevent re-accumulation
  • Clear criteria for when to promote users to individual blocks

This would solve the character limit issue while maintaining efficient access to important relationship data.

this is done

sign up or login to add to the discussion
Labels

None yet.

Participants 1
AT URI
at://did:plc:gfrmhdmjvxn2sjedzboeudef/sh.tangled.repo.issue/3lqvmjqfwtg22