Skip to content

Commit 9d30c36

Browse files
authored
Merge pull request #126 from evan-cao-wb/Add-filter-when-saving-dialogue
Add filter when saving dialogue
2 parents 24898ff + e850381 commit 9d30c36

File tree

1 file changed

+19
-12
lines changed

1 file changed

+19
-12
lines changed

src/Plugins/BotSharp.Plugin.RoutingSpeeder/RoutingConversationHook.cs

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
using System.Runtime.InteropServices;
1414
using BotSharp.Abstraction.Agents;
1515
using System.IO;
16+
using BotSharp.Abstraction.Routing.Settings;
1617

1718
namespace BotSharp.Plugin.RoutingSpeeder;
1819

@@ -49,20 +50,26 @@ public override async Task BeforeCompletion(RoleDialogModel message)
4950

5051
public override async Task AfterCompletion(RoleDialogModel message)
5152
{
52-
// save train data
53-
var agentService = _services.CreateScope().ServiceProvider.GetRequiredService<IAgentService>();
54-
var rootDataPath = agentService.GetDataDir();
53+
var routerSettings = _services.GetRequiredService<RoutingSettings>();
54+
bool saveFlag = (message.CurrentAgentId != routerSettings.RouterId) && (message.CurrentAgentId != routerSettings.ReasonerId);
5555

56-
string rawDataDir = Path.Combine(rootDataPath, "raw_data", $"{message.CurrentAgentId}.txt");
57-
var lastThreeDialogs = _dialogs.Where(x => x.Role == AgentRole.User).Select(x => x.Content).Reverse().Take(3).ToArray();
58-
59-
if (!File.Exists(rawDataDir))
60-
{
61-
await File.WriteAllLinesAsync(rawDataDir, lastThreeDialogs);
62-
}
63-
else
56+
if (saveFlag)
6457
{
65-
await File.AppendAllLinesAsync(rawDataDir, lastThreeDialogs);
58+
// save train data
59+
var agentService = _services.CreateScope().ServiceProvider.GetRequiredService<IAgentService>();
60+
var rootDataPath = agentService.GetDataDir();
61+
62+
string rawDataDir = Path.Combine(rootDataPath, "raw_data", $"{message.CurrentAgentId}.txt");
63+
var lastThreeDialogs = _dialogs.Where(x => x.Role == AgentRole.User).Select(x => x.Content).Reverse().Take(3).ToArray();
64+
65+
if (!File.Exists(rawDataDir))
66+
{
67+
await File.WriteAllLinesAsync(rawDataDir, lastThreeDialogs);
68+
}
69+
else
70+
{
71+
await File.AppendAllLinesAsync(rawDataDir, lastThreeDialogs);
72+
}
6673
}
6774
}
6875
}

0 commit comments

Comments
 (0)