File size: 1,906 Bytes
6e62ad1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3b3f979
 
 
 
 
 
 
 
 
6e62ad1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
export interface ChatResponse {
  response: string
  confidence: number
  source: 'direct' | 'chained' | 'corrected' | 'curiosity' | 'fallback'
  explanation: string
  chain: ChainResult | null
  corrected_answer: string | null
  elapsed_ms: number
}

export interface ChainResult {
  success: boolean
  answer: string
  original_question: string
  n_hops: number
  steps: ChainStep[]
}

export interface ChainStep {
  sub_question: string
  sub_answer: string
  resolved_question: string
}

export interface Metrics {
  model: {
    D: number
    n_traces: number
    n_meta: number
    vocab_size: number
    context_window: number
    theoretical_capacity_log2: number
  }
  memory: {
    mean_weight: number
    min_weight: number
    lsh_size: number
  }
  conversation: {
    turns: number
    n_corrections: number
    known_questions: number
  }
  long_context: {
    n_chunks: number
    n_tokens: number
    n_local_tokens: number
    chunk_size: number
    local_window: number
    max_context_tokens: number
    top_k_chunks: number
  } | null
  config: {
    kernel_radius: number
    kernel_min_weight: number
    temperature: number
    model_type: string
  }
}

export interface Stats {
  D: number
  n_traces: number
  n_meta: number
  vocab_size: number
  context_window: number
  theoretical_capacity_log2: number
  turns: number
  n_corrections: number
}

export interface TeachResponse {
  success: boolean
  message: string
  tokens_written: number
  explanation: string
}

export interface MemoryTrace {
  id: number
  weight: number
  meta: boolean
  tag: string
  age: number
}

export interface MemorySamples {
  traces: MemoryTrace[]
  total: number
}

export interface ChatMessage {
  id: string
  role: 'user' | 'palimpseste'
  text: string
  confidence?: number
  source?: string
  explanation?: string
  chain?: ChainResult | null
  elapsed_ms?: number
  timestamp: number
}