forked from agentscope-ai/ReMe
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdefault.yaml
More file actions
373 lines (337 loc) · 15.6 KB
/
Copy pathdefault.yaml
File metadata and controls
373 lines (337 loc) · 15.6 KB
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
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
backend: http
thread_pool_max_workers: 64
mcp:
transport: sse
host: "0.0.0.0"
port: 8002
http:
host: "0.0.0.0"
port: 8002
timeout_keep_alive: 600
limit_concurrency: 64
flow:
retrieve_task_memory:
flow_content: BuildQueryOp() >> RecallVectorStoreOp() >> RerankMemoryOp(enable_llm_rerank=False, enable_score_filter=False, top_k=5) >> RewriteMemoryOp(enable_llm_rewrite=False)
description: "Retrieves the most relevant top-k memory experiences from historical data based on the current query to enhance task-solving capabilities"
input_schema:
query:
type: string
description: "user query"
required: true
summary_task_memory:
flow_content: TrajectoryPreprocessOp(success_threshold=1.0) >> (SuccessExtractionOp()|FailureExtractionOp()|ComparativeExtractionOp(enable_soft_comparison=True)) >> MemoryValidationOp(validation_threshold=0.5) >> MemoryDeduplicationOp() >> UpdateVectorStoreOp()
description: "Summarizes conversation trajectories or messages into structured memory representations for long-term storage"
input_schema:
trajectories:
type: array
description: "A list of conversation trajectory information, including message content and score. This field does not need to be filled in, the system will complete it automatically."
required: false
retrieve_task_memory_simple:
flow_content: BuildQueryOp() >> RecallVectorStoreOp() >> MergeMemoryOp()
description: "Retrieves the most relevant top-k memory experiences from historical data based on the current query to enhance task-solving capabilities"
input_schema:
query:
type: string
description: "user query"
required: true
summary_task_memory_simple:
flow_content: SimpleSummaryOp() >> UpdateVectorStoreOp()
description: "Summarizes conversation trajectories or messages into structured memory representations for long-term storage"
input_schema:
trajectories:
type: array
description: "A list of conversation trajectory information, including message content and score. This field does not need to be filled in, the system will complete it automatically."
required: false
retrieve_personal_memory:
flow_content: SetQueryOp() >> (ExtractTimeOp() | (RetrieveMemoryOp() >> SemanticRankOp())) >> FuseRerankOp()
description: "Retrieves the most relevant personal memories from historical data based on the query to enhance response quality"
input_schema:
query:
type: string
description: "user query"
required: true
summary_personal_memory:
flow_content: InfoFilterOp() >> (GetObservationOp() | GetObservationWithTimeOp() | LoadTodayMemoryOp()) >> ContraRepeatOp() >> UpdateVectorStoreOp()
description: "Consolidates user observations and memories by filtering information and removing redundancies for efficient storage"
input_schema:
trajectories:
type: array
description: "A list of conversation trajectory information, including message content and score. This field does not need to be filled in, the system will complete it automatically."
required: false
retrieve_tool_memory:
flow_content: RetrieveToolMemoryOp()
description: "Retrieves tool memories from the vector database based on tool names to provide tool usage patterns and best practices"
input_schema:
tool_names:
type: string
description: "Comma-separated tool names (e.g., 'tool_name1,tool_name2')"
required: true
add_tool_call_result:
flow_content: ParseToolCallResultOp(max_history_tool_call_cnt=100, evaluation_sleep_interval=1.0) >> UpdateVectorStoreOp()
description: "Evaluates and adds tool call results to the tool memory database, creating new memory or updating existing memory for the specified tool"
input_schema:
tool_call_results:
type: array
description: "List of tool call result objects, each containing: tool_name, input, output, success, time_cost, token_cost, create_time"
required: true
summary_tool_memory:
flow_content: SummaryToolMemoryOp(recent_call_count=20, summary_sleep_interval=1.0) >> UpdateVectorStoreOp()
description: "Analyzes tool call history and generates comprehensive usage patterns, best practices, and recommendations for the specified tools"
input_schema:
tool_names:
type: string
description: "Comma-separated tool names to summarize (e.g., 'tool_name1,tool_name2')"
required: true
use_mock_search:
flow_content: UseMockSearchOp()
description: "Simulates intelligent search tool selection and execution based on query complexity, with automatic tool memory recording"
input_schema:
query:
type: string
description: "User search query to process"
required: true
vector_store:
flow_content: VectorStoreActionOp()
description: "Directly operates on the vector store with various management actions"
input_schema:
action:
type: string
description: "vector store operations"
required: true
enum: [ copy, delete, delete_ids, dump, load, list]
record_task_memory:
flow_content: UpdateMemoryFreqOp() >> UpdateMemoryUtilityOp() >> UpdateVectorStoreOp()
description: "Update the freq & utility attributes of retrieved task memories"
input_schema:
workspace_id:
type: string
description: "workspace id"
required: true
memory_dicts:
type: array
description: "A list of retrieved task memory corresponding to the current task."
required: true
update_utility:
type: boolean
description: "Whether to update the utility attribute of the retrieved task memory."
required: true
delete_task_memory:
flow_content: DeleteMemoryOp() >> UpdateVectorStoreOp()
description: "Delete task memories when utility/freq < utility_threshold and freq >= freq_threshold"
input_schema:
workspace_id:
type: string
description: "workspace id"
required: true
freq_threshold:
type: integer
description: "The retrieved frequency threshold for deleting task memory."
required: true
utility_threshold:
type: number
description: "The utility/freq threshold for deleting task memory."
required: true
react:
flow_content: SimpleReactOp()
description: "React to the current task with an agent"
input_schema:
query:
type: string
description: "user query"
required: true
agentic_retrieve:
flow_content: AgenticRetrieveOp()
summary_working_memory:
flow_content: MessageOffloadOp() >> BatchWriteFileOp()
description: "Summarizes working memory by compacting tool messages and compressing conversation history. First compacts large tool messages by storing full content in external files, then applies LLM-based compression if compaction ratio exceeds threshold. This helps reduce token usage while preserving important information."
input_schema:
messages:
type: array
description: "List of conversation messages to process for working memory summarization"
required: true
working_summary_mode:
type: string
description: "Working summary strategy: 'compact' only compacts large tool messages, 'compress' only applies LLM-based compression, 'auto' first compacts then optionally compresses when reduction is insufficient. Defaults to 'auto'."
required: false
enum: ["compact", "compress", "auto"]
compact_ratio_threshold:
type: number
description: "Only used in 'auto' mode. Threshold for compaction ratio (tokens after compaction divided by original tokens). When the ratio is greater than this value, an additional LLM-based compression pass is triggered. Defaults to 0.75."
required: false
max_total_tokens:
type: integer
description: "Maximum token count threshold for triggering compression/compaction. For compaction, this is the total token count threshold. For compression, this excludes keep_recent_count messages and system messages. Defaults to 20000."
required: false
max_tool_message_tokens:
type: integer
description: "Maximum token count per tool message before compaction is applied. Tool messages exceeding this threshold will have their full content stored in external files with only a preview kept in context. Defaults to 2000."
required: false
group_token_threshold:
type: integer
description: "Maximum token count per compression group when using LLM-based compression. If None or 0, all messages are compressed in a single group. Messages exceeding this threshold individually will form their own group. Only used in 'compress' or 'auto' mode."
required: false
keep_recent_count:
type: integer
description: "Number of recent messages to preserve without compression or compaction. These messages remain unchanged to maintain conversation context. Defaults to 1 for compaction and 2 for compression."
required: false
store_dir:
type: string
description: "Directory path for storing summarized message content. Full tool message content and compressed message groups are saved as files in this directory. Required for compaction and compression operations."
required: false
chat_id:
type: string
description: "Unique identifier for the chat session, used for file naming when storing compressed message groups. If not provided, a UUID will be generated automatically."
required: false
grep_working_memory:
flow_content: GrepOp()
read_working_memory:
flow_content: ReadFileOp()
summary_working_memory_for_as:
flow_content: MessageOffloadOp()
description: "Working memory summary operation for AgentScope integration. Summarizes working memory by compacting tool messages and compressing conversation history without batch file writing. Same functionality as summary_working_memory but without the BatchWriteFileOp step."
input_schema:
messages:
type: array
description: "List of conversation messages to process for working memory summarization"
required: true
working_summary_mode:
type: string
description: "Working summary strategy: 'compact' only compacts large tool messages, 'compress' only applies LLM-based compression, 'auto' first compacts then optionally compresses when reduction is insufficient. Defaults to 'auto'."
required: false
enum: ["compact", "compress", "auto"]
compact_ratio_threshold:
type: number
description: "Only used in 'auto' mode. Threshold for compaction ratio (tokens after compaction divided by original tokens). When the ratio is greater than this value, an additional LLM-based compression pass is triggered. Defaults to 0.75."
required: false
max_total_tokens:
type: integer
description: "Maximum token count threshold for triggering compression/compaction. For compaction, this is the total token count threshold. For compression, this excludes keep_recent_count messages and system messages. Defaults to 20000."
required: false
max_tool_message_tokens:
type: integer
description: "Maximum token count per tool message before compaction is applied. Tool messages exceeding this threshold will have their full content stored in external files with only a preview kept in context. Defaults to 2000."
required: false
group_token_threshold:
type: integer
description: "Maximum token count per compression group when using LLM-based compression. If None or 0, all messages are compressed in a single group. Messages exceeding this threshold individually will form their own group. Only used in 'compress' or 'auto' mode."
required: false
keep_recent_count:
type: integer
description: "Number of recent messages to preserve without compression or compaction. These messages remain unchanged to maintain conversation context. Defaults to 1 for compaction and 2 for compression."
required: false
store_dir:
type: string
description: "Directory path for storing summarized message content. Full tool message content and compressed message groups are saved as files in this directory. Required for compaction and compression operations."
required: false
chat_id:
type: string
description: "Unique identifier for the chat session, used for file naming when storing compressed message groups. If not provided, a UUID will be generated automatically."
required: false
llm:
default:
backend: openai_compatible
model_name: qwen3-30b-a3b-instruct-2507
params:
temperature: 0.6
token_count: # Optional
backend: base
qwen3_coder_plus:
backend: openai_compatible
model_name: qwen3-coder-plus
token_count: # Optional
model_name: Qwen/Qwen3-Coder-480B-A35B-Instruct
backend: hf
params:
use_mirror: true
qwen3_coder_480b_instruct:
backend: openai_compatible
model_name: qwen3-coder-480b-a35b-instruct
token_count: # Optional
model_name: Qwen/Qwen3-Coder-480B-A35B-Instruct
backend: hf
params:
use_mirror: true
qwen3_coder_30b_instruct:
backend: openai_compatible
model_name: qwen3-coder-30b-a3b-instruct
token_count: # Optional
model_name: Qwen/Qwen3-Coder-30B-A3B-Instruct
backend: hf
params:
use_mirror: true
qwen3_30b_instruct:
backend: openai_compatible
model_name: qwen3-30b-a3b-instruct-2507
token_count: # Optional
model_name: Qwen/Qwen3-30B-A3B-Instruct-2507
backend: hf
params:
use_mirror: true
qwen3_30b_thinking:
backend: openai_compatible
model_name: qwen3-30b-a3b-thinking-2507
token_count: # Optional
model_name: Qwen/Qwen3-30B-A3B-Thinking-2507
backend: hf
params:
use_mirror: true
qwen3_235b_instruct:
backend: openai_compatible
model_name: qwen3-235b-a22b-instruct-2507
token_count: # Optional
model_name: Qwen/Qwen3-235B-A22B-Instruct-2507
backend: hf
params:
use_mirror: true
qwen3_235b_thinking:
backend: openai_compatible
model_name: qwen3-235b-a22b-thinking-2507
token_count: # Optional
model_name: Qwen/Qwen3-235B-A22B-Thinking-2507
backend: hf
params:
use_mirror: true
qwen3_80b_instruct:
backend: openai_compatible
model_name: qwen3-next-80b-a3b-instruct
token_count: # Optional
model_name: Qwen/Qwen3-Next-80B-A3B-Instruct
backend: hf
params:
use_mirror: true
qwen3_80b_thinking:
backend: openai_compatible
model_name: qwen3-next-80b-a3b-thinking
token_count: # Optional
model_name: Qwen/Qwen3-Next-80B-A3B-Thinking
backend: hf
params:
use_mirror: true
qwen3_max_instruct:
backend: openai_compatible
model_name: qwen3-max
token_count: # Optional
model_name: Qwen/Qwen3-Next-80B-A3B-Instruct # NOTE: We use another model as a substitute.
backend: hf
params:
use_mirror: true
qwen25_max_instruct:
backend: openai_compatible
model_name: qwen-max-2025-01-25
token_count: # Optional
model_name: Qwen/Qwen2.5-72B-Instruct # NOTE: We use another model as a substitute.
backend: hf
params:
use_mirror: true
embedding_model:
default:
backend: openai_compatible
model_name: text-embedding-v4
params:
dimensions: 1024
vector_store:
default:
backend: memory
embedding_model: default
# params:
# hosts: "http://localhost:9200"