Finished the function for importing arbitrary documents (#516)

This commit is contained in:
Thorsten Sommer authored and GitHub committed 2025-06-30 21:51:02 +02:00
1 parent aaedf667fe
commit 68f5bb1512
5 files changed
+123 -47

No files matched your search

@@ -5,9 +5,10 @@ namespace AIStudio.Tools.Services;
public sealed partial class RustService
{
public async Task<string> ReadArbitraryFileData(string path, string streamId, int maxChunks)
public async Task<string> ReadArbitraryFileData(string path, int maxChunks, bool extractImages = false)
{
var requestUri = $"/retrieval/fs/extract?path={Uri.EscapeDataString(path)}&stream_id={streamId}";
var streamId = Guid.NewGuid().ToString();
var requestUri = $"/retrieval/fs/extract?path={Uri.EscapeDataString(path)}&stream_id={streamId}&extract_images={extractImages}";
var request = new HttpRequestMessage(HttpMethod.Get, requestUri);
var response = await this.http.SendAsync(request, HttpCompletionOption.ResponseHeadersRead);
@@ -36,8 +37,10 @@ public sealed partial class RustService
var sseEvent = JsonSerializer.Deserialize<ContentStreamSseEvent>(jsonContent);
if (sseEvent is not null)
{
var content = ContentStreamSseHandler.ProcessEvent(sseEvent, false);
resultBuilder.Append(content);
var content = ContentStreamSseHandler.ProcessEvent(sseEvent, extractImages);
if(content is not null)
resultBuilder.AppendLine(content);
chunkCount++;
}
}