Rewrite extraction prompt and system prompt
Extraction: system+user split with explicit SAVE/DON'T SAVE rules, few-shot examples, stricter JSON-only format. Min fact length 15 chars. System prompt: model now knows about its 3-level memory, how to use recalled facts, and that user can control memory via chat commands. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
19
main.py
19
main.py
@@ -101,11 +101,20 @@ async def build_context(request: ChatRequest) -> list[dict]:
|
||||
summary_block = f"## Earlier conversation summary\n{summary}" if summary else ""
|
||||
|
||||
# 4. Assemble system prompt
|
||||
base_system = (
|
||||
"You are an expert coding assistant with deep knowledge of the project architecture. "
|
||||
"Use the provided memory and code context to give precise, informed answers. "
|
||||
"Always reason about the full architecture, not just isolated snippets."
|
||||
)
|
||||
base_system = """Ты — AI-ассистент по программированию с постоянной памятью.
|
||||
|
||||
У тебя есть три уровня памяти:
|
||||
1. Долгосрочная память — факты о пользователе и проектах (показаны ниже в "Relevant memories")
|
||||
2. История диалога — последние 20 сообщений текущей сессии
|
||||
3. Контекст кода — граф архитектуры проекта (если проиндексирован)
|
||||
|
||||
Используй память чтобы давать точные ответы с учётом контекста пользователя. \
|
||||
Если в памяти есть релевантный факт — опирайся на него, не переспрашивай то что уже известно.
|
||||
|
||||
Пользователь может управлять твоей памятью прямо в чате:
|
||||
- "запомни что X" — ты сохранишь X с высоким приоритетом
|
||||
- "забудь про X" — ты удалишь похожие воспоминания
|
||||
- "что ты помнишь?" — покажи список активных воспоминаний через GET /v1/memories"""
|
||||
context_parts = [p for p in [base_system, summary_block, mem_block, code_block] if p]
|
||||
system_content = "\n\n".join(context_parts)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user