Purdy0228 commited on
Commit
13d2518
·
verified ·
1 Parent(s): aa3e748

Add ConvMemory CCGE-LA alpha checkpoint

Browse files
Files changed (4) hide show
  1. LICENSE +21 -0
  2. README.md +84 -0
  3. ccge_la.pt +3 -0
  4. manifest.json +244 -0
LICENSE ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ MIT License
2
+
3
+ Copyright (c) 2026 ConvMemory contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
README.md ADDED
@@ -0,0 +1,84 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: mit
3
+ library_name: convmemory
4
+ tags:
5
+ - retrieval
6
+ - memory
7
+ - reranking
8
+ - agents
9
+ - convmemory
10
+ - ccge-la
11
+ pipeline_tag: feature-extraction
12
+ ---
13
+
14
+ # ConvMemory CCGE-LA LoCoMo MPNet Seed-23 Alpha
15
+
16
+ This repository contains an alpha CCGE-LA conflict editor checkpoint for the public ConvMemory API.
17
+
18
+ CCGE-LA stands for **Low-Amplitude Counterfactual Conflict Graph Editor**. It is a lightweight post-ConvMemory editor for stale/current memory conflicts:
19
+
20
+ ```text
21
+ vector search -> ConvMemory -> CCGE-LA conflict-aware score edit -> memory context
22
+ ```
23
+
24
+ ## Files
25
+
26
+ - `ccge_la.pt`: CCGE-LA editor checkpoint.
27
+ - `manifest.json`: training configuration and seed-23 test metrics.
28
+ - `LICENSE`: MIT license.
29
+
30
+ ## Usage
31
+
32
+ Install ConvMemory from GitHub or PyPI once a compatible package release is available:
33
+
34
+ ```bash
35
+ pip install git+https://github.com/pth2002/ConvMemory.git
36
+ ```
37
+
38
+ Load the base ConvMemory checkpoint and then attach this editor:
39
+
40
+ ```python
41
+ from convmemory import ConvMemory
42
+
43
+ model = ConvMemory.from_pretrained("checkpoints/convmemory-locomo-mpnet")
44
+ model.load_ccge_editor("path/to/this/repo")
45
+
46
+ results = model.retrieve(
47
+ query=query,
48
+ memories=memories,
49
+ editor="ccge_la",
50
+ top_k=10,
51
+ )
52
+ ```
53
+
54
+ You can also download from the Hub with `huggingface_hub.snapshot_download` and pass the local folder to `load_ccge_editor`.
55
+
56
+ ## Metrics
57
+
58
+ These are seed-23 test metrics from the release manifest. This is an alpha checkpoint, not a final benchmark release.
59
+
60
+ | subset | CCGE-LA alpha MRR | CCGE-LA R@10 | gate |
61
+ |---|---:|---:|---:|
62
+ | FULL | 0.5638 | 0.7725 | 0.0995 |
63
+ | T_SUP_auto | 0.5508 | 0.7138 | 0.0995 |
64
+ | CONV_TOP1_WRONG_GOLD_IN_POOL | 0.2994 | 0.6822 | 0.0995 |
65
+ | RESCUABLE_STALE_TOP1 | 0.3093 | 0.6877 | 0.0995 |
66
+
67
+ ## Training Notes
68
+
69
+ - Base checkpoint: `convmemory-locomo-mpnet`.
70
+ - Training split seed: `23`.
71
+ - Candidate top-n: `192`.
72
+ - Objective: retrieval cross-entropy plus a low-amplitude gate budget penalty.
73
+ - No current/stale labels, no gold-defined feature, and no distillation objective are used by the editor.
74
+
75
+ ## Limitations
76
+
77
+ - This is a public alpha checkpoint trained on a single LoCoMo-style seed-23 split.
78
+ - It is intended for API trials and early integration, not as a final benchmark claim.
79
+ - It should be used with the matching MPNet-family ConvMemory checkpoint.
80
+
81
+ ## Links
82
+
83
+ - GitHub: https://github.com/pth2002/ConvMemory
84
+ - CCGE-LA docs: https://github.com/pth2002/ConvMemory/blob/main/docs/CCGE_LA.md
ccge_la.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7ea6c838c299d3e8eeee16f6e798be06dbbbb6822f8505e35d95324ed2e05af3
3
+ size 832372
manifest.json ADDED
@@ -0,0 +1,244 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "base_checkpoint": "convmemory-locomo-mpnet",
3
+ "candidate_cache": "v144_full_seed23_train_top192.pkl",
4
+ "candidate_top_n": 192,
5
+ "epochs_per_arm": 4,
6
+ "format": "convmemory-ccge-la",
7
+ "gate_penalty": 0.2,
8
+ "layers": 2,
9
+ "lr": 0.0008,
10
+ "metrics_seed23_test": {
11
+ "CONV_TOP1_WRONG_GOLD_IN_POOL": {
12
+ "gate": 0.09949657789547928,
13
+ "hit_at_1": 0.05859375,
14
+ "mrr": 0.29939404653314217,
15
+ "questions": 512,
16
+ "recall_at_1": 0.0537109375,
17
+ "recall_at_10": 0.6822312127976189
18
+ },
19
+ "FULL": {
20
+ "gate": 0.09949650585237918,
21
+ "hit_at_1": 0.4183564567769477,
22
+ "mrr": 0.5637697126584379,
23
+ "questions": 937,
24
+ "recall_at_1": 0.381803628601921,
25
+ "recall_at_10": 0.7724500686080195
26
+ },
27
+ "GOLD_IN_POOL": {
28
+ "gate": 0.09949650092838078,
29
+ "hit_at_1": 0.43507214206437295,
30
+ "mrr": 0.5861521477894585,
31
+ "questions": 901,
32
+ "recall_at_1": 0.39705882352941174,
33
+ "recall_at_10": 0.8033137783415252
34
+ },
35
+ "RESCUABLE_STALE_TOP1": {
36
+ "gate": 0.0994965493957573,
37
+ "hit_at_1": 0.06853582554517133,
38
+ "mrr": 0.30925646562133835,
39
+ "questions": 321,
40
+ "recall_at_1": 0.06386292834890965,
41
+ "recall_at_10": 0.6876502002670226
42
+ },
43
+ "T_SUP_auto": {
44
+ "gate": 0.09949656403151111,
45
+ "hit_at_1": 0.427536231884058,
46
+ "mrr": 0.5508461321923791,
47
+ "questions": 138,
48
+ "recall_at_1": 0.39734299516908217,
49
+ "recall_at_10": 0.7137681159420289
50
+ }
51
+ },
52
+ "model_dim": 96,
53
+ "name": "convmemory-ccge-la-locomo-mpnet-seed23-alpha",
54
+ "notes": [
55
+ "Retrieval cross-entropy only plus gate budget penalty.",
56
+ "No current/stale labels, no gold-defined feature, no distillation objective.",
57
+ "Weights were trained with the V151-compatible sweep order and converted into the public CCGELowAmplitudeEditor format.",
58
+ "Alpha checkpoint: trained on LoCoMo-style seed23 split; use for API trials, not as a final benchmark claim."
59
+ ],
60
+ "selected_arm": "state7_gp0p20",
61
+ "status": "public alpha checkpoint",
62
+ "test_questions": 937,
63
+ "train_wall_clock_s": 182.095270216465,
64
+ "trainable_questions": 981,
65
+ "training_history": {
66
+ "state5_gp0p10": [
67
+ {
68
+ "epoch": 1,
69
+ "gate": 0.2399524566351942,
70
+ "loss": 2.2548362000510247
71
+ },
72
+ {
73
+ "epoch": 2,
74
+ "gate": 0.11324312030570344,
75
+ "loss": 2.174000255331572
76
+ },
77
+ {
78
+ "epoch": 3,
79
+ "gate": 0.11223375650690479,
80
+ "loss": 2.1902397656480987
81
+ },
82
+ {
83
+ "epoch": 4,
84
+ "gate": 0.10931176690728414,
85
+ "loss": 2.0970082479793954
86
+ }
87
+ ],
88
+ "state5_gp0p15": [
89
+ {
90
+ "epoch": 1,
91
+ "gate": 0.15463919646726593,
92
+ "loss": 2.282538963055521
93
+ },
94
+ {
95
+ "epoch": 2,
96
+ "gate": 0.06402538461415107,
97
+ "loss": 2.3397113054280645
98
+ },
99
+ {
100
+ "epoch": 3,
101
+ "gate": 0.03899438852571505,
102
+ "loss": 2.350554473658741
103
+ },
104
+ {
105
+ "epoch": 4,
106
+ "gate": 0.02847297657869764,
107
+ "loss": 2.509581346329915
108
+ }
109
+ ],
110
+ "state5_gp0p20": [
111
+ {
112
+ "epoch": 1,
113
+ "gate": 0.136853313439969,
114
+ "loss": 2.254695448121597
115
+ },
116
+ {
117
+ "epoch": 2,
118
+ "gate": 0.04733424077131363,
119
+ "loss": 2.237200206988676
120
+ },
121
+ {
122
+ "epoch": 3,
123
+ "gate": 0.03198895434717003,
124
+ "loss": 2.3658829922040225
125
+ },
126
+ {
127
+ "epoch": 4,
128
+ "gate": 0.023831418282509034,
129
+ "loss": 2.539576406593726
130
+ }
131
+ ],
132
+ "state5_gp0p25": [
133
+ {
134
+ "epoch": 1,
135
+ "gate": 0.13151619928935496,
136
+ "loss": 2.2270623026653045
137
+ },
138
+ {
139
+ "epoch": 2,
140
+ "gate": 0.04244499447281785,
141
+ "loss": 2.37495636844924
142
+ },
143
+ {
144
+ "epoch": 3,
145
+ "gate": 0.026141336961449043,
146
+ "loss": 2.3756655300711067
147
+ },
148
+ {
149
+ "epoch": 4,
150
+ "gate": 0.017790341398049293,
151
+ "loss": 2.3847317789623346
152
+ }
153
+ ],
154
+ "state7_gp0p10": [
155
+ {
156
+ "epoch": 1,
157
+ "gate": 0.19828437211772354,
158
+ "loss": 2.3462205386400665
159
+ },
160
+ {
161
+ "epoch": 2,
162
+ "gate": 0.11635339423391311,
163
+ "loss": 2.1040097372122224
164
+ },
165
+ {
166
+ "epoch": 3,
167
+ "gate": 0.11308276833288532,
168
+ "loss": 2.15457621426013
169
+ },
170
+ {
171
+ "epoch": 4,
172
+ "gate": 0.10830596343411947,
173
+ "loss": 2.1375504431602423
174
+ }
175
+ ],
176
+ "state7_gp0p15": [
177
+ {
178
+ "epoch": 1,
179
+ "gate": 0.17169027484642013,
180
+ "loss": 2.2812409217248195
181
+ },
182
+ {
183
+ "epoch": 2,
184
+ "gate": 0.08825934893488656,
185
+ "loss": 2.2335765566771792
186
+ },
187
+ {
188
+ "epoch": 3,
189
+ "gate": 0.058508181972970294,
190
+ "loss": 2.2947117126775596
191
+ },
192
+ {
193
+ "epoch": 4,
194
+ "gate": 0.04042847446098574,
195
+ "loss": 2.3681090738729713
196
+ }
197
+ ],
198
+ "state7_gp0p20": [
199
+ {
200
+ "epoch": 1,
201
+ "gate": 0.17988600798053753,
202
+ "loss": 2.20868354366103
203
+ },
204
+ {
205
+ "epoch": 2,
206
+ "gate": 0.11630539378107627,
207
+ "loss": 2.18952473182759
208
+ },
209
+ {
210
+ "epoch": 3,
211
+ "gate": 0.10668768573487813,
212
+ "loss": 2.115367022140766
213
+ },
214
+ {
215
+ "epoch": 4,
216
+ "gate": 0.09883941742273523,
217
+ "loss": 2.1085117126479895
218
+ }
219
+ ],
220
+ "state7_gp0p25": [
221
+ {
222
+ "epoch": 1,
223
+ "gate": 0.13368244941567548,
224
+ "loss": 2.2540013599480053
225
+ },
226
+ {
227
+ "epoch": 2,
228
+ "gate": 0.10886466054665447,
229
+ "loss": 2.1919093473485
230
+ },
231
+ {
232
+ "epoch": 3,
233
+ "gate": 0.10376444168077453,
234
+ "loss": 2.1321198041365688
235
+ },
236
+ {
237
+ "epoch": 4,
238
+ "gate": 0.09607681747294286,
239
+ "loss": 2.134787376227653
240
+ }
241
+ ]
242
+ },
243
+ "training_split_seed": 23
244
+ }