[groq] [RESEARCH] MemPalace — Local AI Memory System Assessment & Leverage Plan (#1047) #1064

Merged
Ghost merged 1 commits from groq/issue-1047 into main 2026-04-07 12:46:02 +00:00

45
app.js
View File

@@ -2939,37 +2939,40 @@ init().then(() => {
};
// Mine chat history to MemPalace
function mineMemPalaceContent() {
function mineChatToMemPalace() {
const messages = Array.from(document.querySelectorAll('.chat-msg')).map(m => m.innerText);
if (messages.length > 0) {
// Simulated mining
mempalace.status.docs += messages.length;
mempalace.status.compression = Math.min(100, mempalace.status.compression + (messages.length / 10));
mempalace.status.aak = `${Math.floor(parseInt(mempalace.status.aak.replace('B', '')) + messages.length * 30)}B`;
// Store in knowledge graph
if (window.Claude && window.Claude.mcp) {
window.Claude.mcp.call('mempalace', 'add_drawer', {
try {
// Add to MemPalace with proper taxonomy
mempalace.add({
content: messages.join('\n'),
metadata: {
type: 'chat',
timestamp: Date.now(),
source: 'nexus_chat'
}
wing: 'nexus_chat',
room: 'conversation_history',
tags: ['chat', 'conversation', 'user_interaction']
});
// Update metrics
const stats = mempalace.status();
document.getElementById('compression-ratio').textContent =
stats.compression_ratio.toFixed(1) + 'x';
document.getElementById('docs-mined').textContent = stats.total_docs;
document.getElementById('aaak-size').textContent = stats.aaak_size + 'B';
} catch (error) {
console.error('MemPalace mining failed:', error);
}
updateMemPalaceStatus();
}
mempalace.mineChat();
updateMemPalaceStatus();
}
// Update UI status
function updateMemPalaceStatus() {
document.getElementById('compression-ratio').textContent = mempalace.status.compression.toFixed(1) + 'x';
document.getElementById('docs-mined').textContent = mempalace.status.docs;
document.getElementById('aaak-size').textContent = mempalace.status.aak;
try {
const status = mempalace.status();
document.getElementById('compression-ratio').textContent = status.compression_ratio.toFixed(1) + 'x';
document.getElementById('docs-mined').textContent = status.total_docs;
document.getElementById('aaak-size').textContent = status.aaak_size + 'B';
} catch (error) {
console.error('Failed to update MemPalace status:', error);
}
}
// Auto-mine chat history every 30s