feat: memories_latest limit=0 default, agent decides limit per call
This commit is contained in:
parent
1077381a4a
commit
7fa456ee5f
@ -67,7 +67,7 @@ Jika user memperkenalkan diri dalam format `!start ... !end` (contoh: "Aku John"
|
|||||||
|
|
||||||
**Setelah identitas user terkonfirmasi** (baik melalui `[User Context]` otomatis maupun setelah proses `users_store`/`users_filter` manual), kamu WAJIB melakukan langkah berikut. Ini adalah bagian KRITIS dari sistem memori — jika dilewatkan, akurasi memori akan rendah dan responmu akan terasa tidak personal/konsisten.
|
**Setelah identitas user terkonfirmasi** (baik melalui `[User Context]` otomatis maupun setelah proses `users_store`/`users_filter` manual), kamu WAJIB melakukan langkah berikut. Ini adalah bagian KRITIS dari sistem memori — jika dilewatkan, akurasi memori akan rendah dan responmu akan terasa tidak personal/konsisten.
|
||||||
|
|
||||||
1. **WAJIB Retrieve Recent History**: Panggil `memories_latest(character="<nama-karaktermu>", user_id="<user-uuid>")` dengan limit 6 untuk mengambil fragmen interaksi terbaru antara character dan user. Gunakan limit 0 untuk mengambil semua memori.
|
1. **WAJIB Retrieve Recent History**: Panggil `memories_latest(character="<nama-karaktermu>", user_id="<user-uuid>")` untuk mengambil interaksi terbaru antara character dan user. Tentukan `limit` sesuai kebutuhan — lebih besar jika perlu mengingat detail yang lebih lama, kosongkan/0 untuk mengambil semua.
|
||||||
- **Parameter Call**: Gunakan nama karaktermu sendiri (sesuai persona/identitasmu) sebagai `character` dan gunakan **ID (UUID)** user yang tertera pada `[User Context]` sebagai `user_id`.
|
- **Parameter Call**: Gunakan nama karaktermu sendiri (sesuai persona/identitasmu) sebagai `character` dan gunakan **ID (UUID)** user yang tertera pada `[User Context]` sebagai `user_id`.
|
||||||
- **Contoh**: Jika namamu adalah "Lily" dan ID user adalah "550e8400-e29b-41d4-a716-446655440000", panggil: `memories_latest(character="Lily", user_id="550e8400-e29b-41d4-a716-446655440000", limit=3)`
|
- **Contoh**: Jika namamu adalah "Lily" dan ID user adalah "550e8400-e29b-41d4-a716-446655440000", panggil: `memories_latest(character="Lily", user_id="550e8400-e29b-41d4-a716-446655440000", limit=3)`
|
||||||
2. **Execution Rule**:
|
2. **Execution Rule**:
|
||||||
|
|||||||
@ -289,7 +289,7 @@ def memories_filter(db_path, category=None, character=None, user=None):
|
|||||||
print(f"Error filtering memories: {e}")
|
print(f"Error filtering memories: {e}")
|
||||||
return []
|
return []
|
||||||
|
|
||||||
def memories_latest(db_path, character, user, limit=6):
|
def memories_latest(db_path, character, user, limit=0):
|
||||||
try:
|
try:
|
||||||
db = lancedb.connect(db_path)
|
db = lancedb.connect(db_path)
|
||||||
table = db.open_table("knowledge_memories")
|
table = db.open_table("knowledge_memories")
|
||||||
|
|||||||
@ -165,7 +165,7 @@ schema_memories_latest = {
|
|||||||
"properties": {
|
"properties": {
|
||||||
"character": {"type": "string", "description": "The name of the character"},
|
"character": {"type": "string", "description": "The name of the character"},
|
||||||
"user": {"type": "string", "description": "The UUID of the user"},
|
"user": {"type": "string", "description": "The UUID of the user"},
|
||||||
"limit": {"type": "integer", "description": "Number of recent memories to retrieve. Use 0 to get all memories.", "default": 6}
|
"limit": {"type": "integer", "description": "Number of recent memories to retrieve. Omit or use 0 to get all memories."}
|
||||||
},
|
},
|
||||||
"required": ["character", "user"]
|
"required": ["character", "user"]
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user