Merge pull request #239 from iceljc/bugfix/fix-file-llm-prompt-log

fix file llm prompt log
This commit is contained in:
Haiping 2023-12-18 21:48:15 -06:00 committed by GitHub
commit 7316c499be
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 3 deletions

View file

@ -860,8 +860,10 @@ public class FileRepository : IBotSharpRepository
#region LLM Completion Log #region LLM Completion Log
public void SaveLlmCompletionLog(LlmCompletionLog log) public void SaveLlmCompletionLog(LlmCompletionLog log)
{ {
if (log == null || string.IsNullOrEmpty(log.ConversationId)) return;
var convDir = FindConversationDirectory(log.ConversationId); var convDir = FindConversationDirectory(log.ConversationId);
if (!Directory.Exists(convDir)) return; if (string.IsNullOrEmpty(convDir)) return;
var logDir = Path.Combine(convDir, "llm_prompt_log"); var logDir = Path.Combine(convDir, "llm_prompt_log");
if (!Directory.Exists(logDir)) if (!Directory.Exists(logDir))
@ -870,7 +872,7 @@ public class FileRepository : IBotSharpRepository
} }
log.Id = Guid.NewGuid().ToString(); log.Id = Guid.NewGuid().ToString();
var index = GetLlmCompletionLogIndex(logDir, log.MessageId); var index = GetNextLlmCompletionLogIndex(logDir, log.MessageId);
var file = Path.Combine(logDir, $"{log.MessageId}.{index}.log"); var file = Path.Combine(logDir, $"{log.MessageId}.{index}.log");
File.WriteAllText(file, JsonSerializer.Serialize(log, _options)); File.WriteAllText(file, JsonSerializer.Serialize(log, _options));
} }
@ -969,6 +971,8 @@ public class FileRepository : IBotSharpRepository
private string? FindConversationDirectory(string conversationId) private string? FindConversationDirectory(string conversationId)
{ {
if (string.IsNullOrEmpty(conversationId)) return null;
var dir = Path.Combine(_dbSettings.FileRepository, _conversationSettings.DataDir, conversationId); var dir = Path.Combine(_dbSettings.FileRepository, _conversationSettings.DataDir, conversationId);
if (!Directory.Exists(dir)) return null; if (!Directory.Exists(dir)) return null;
@ -1024,7 +1028,7 @@ public class FileRepository : IBotSharpRepository
return states; return states;
} }
private int GetLlmCompletionLogIndex(string logDir, string id) private int GetNextLlmCompletionLogIndex(string logDir, string id)
{ {
var files = Directory.GetFiles(logDir); var files = Directory.GetFiles(logDir);
if (files.IsNullOrEmpty()) if (files.IsNullOrEmpty())

View file

@ -892,6 +892,8 @@ public class MongoRepository : IBotSharpRepository
#region LLM Completion Log #region LLM Completion Log
public void SaveLlmCompletionLog(LlmCompletionLog log) public void SaveLlmCompletionLog(LlmCompletionLog log)
{ {
if (log == null || string.IsNullOrEmpty(log.ConversationId)) return;
var completiongLog = new LlmCompletionLogDocument var completiongLog = new LlmCompletionLogDocument
{ {
Id = string.IsNullOrEmpty(log.Id) ? Guid.NewGuid().ToString() : log.Id, Id = string.IsNullOrEmpty(log.Id) ? Guid.NewGuid().ToString() : log.Id,