Memory-Pfad im System-Prompt als absoluten Pfad angeben

This commit is contained in:
Meleki committed 2026-03-01 13:32:05 +01:00
1 parent d913557173
commit a73a67f810
3 files changed
+6 -4

No files matched your search

+2 -1
View File
@@ -78,7 +78,8 @@ public static class ChatEndpoint
res.Headers["Connection"] = "keep-alive"; res.Headers["Connection"] = "keep-alive";
var markedMessages = await db.GetMarkedMessages(sessionId); var markedMessages = await db.GetMarkedMessages(sessionId);
var systemPromptText = SystemPromptBuilder.Build(agent, session, markedMessages, memoryService); var agentMemoryDir = memoryService.GetAgentMemoryDir(agent.AgentId);
var systemPromptText = SystemPromptBuilder.Build(agent, session, markedMessages, memoryService, agentMemoryDir);
var chainId = Guid.NewGuid().ToString("N"); var chainId = Guid.NewGuid().ToString("N");
+2 -1
View File
@@ -123,7 +123,8 @@ public static class SessionEndpoint
} }
var markedMessages = await db.GetMarkedMessages(sessionId); var markedMessages = await db.GetMarkedMessages(sessionId);
var systemPrompt = SystemPromptBuilder.Build(agent, session, markedMessages, memoryService); var agentMemoryDir = memoryService.GetAgentMemoryDir(agent.AgentId);
var systemPrompt = SystemPromptBuilder.Build(agent, session, markedMessages, memoryService, agentMemoryDir);
ctx.Response.ContentType = "text/plain; charset=utf-8"; ctx.Response.ContentType = "text/plain; charset=utf-8";
await ctx.Response.WriteAsync(systemPrompt); await ctx.Response.WriteAsync(systemPrompt);
+2 -2
View File
@@ -6,7 +6,7 @@ namespace Gott.Services;
public static class SystemPromptBuilder public static class SystemPromptBuilder
{ {
public static string Build(AgentRecord agent, SessionRecord session, IEnumerable<MessageRecord> markedMessages = null, MemoryService memoryService = null) public static string Build(AgentRecord agent, SessionRecord session, IEnumerable<MessageRecord> markedMessages = null, MemoryService memoryService = null, string agentMemoryDir = null)
{ {
var parts = new List<string>(); var parts = new List<string>();
parts.Add($"Du bist {agent.Name}."); parts.Add($"Du bist {agent.Name}.");
@@ -46,7 +46,7 @@ Wenn der User auf eine bestimmte Zeile in einer Datei verweist (z.B. `[Datei: fo
{ {
"## Memory", "## Memory",
"Du hast ein persistentes Gedächtnis über Memory-Tools (`memory_read`, `memory_write`, `memory_list`).", "Du hast ein persistentes Gedächtnis über Memory-Tools (`memory_read`, `memory_write`, `memory_list`).",
$"Dein Memory-Verzeichnis: `data/agents/{agent.AgentId}/`", $"Dein Memory-Verzeichnis: `{agentMemoryDir ?? $"data/agents/{agent.AgentId}/"}`",
"", "",
"### Regeln", "### Regeln",
"- Nutze `memory_read` um gespeicherte Erinnerungen abzurufen, bevor du über vergangene Entscheidungen, Präferenzen oder Fakten sprichst.", "- Nutze `memory_read` um gespeicherte Erinnerungen abzurufen, bevor du über vergangene Entscheidungen, Präferenzen oder Fakten sprichst.",