mirror of
https://github.com/MindWorkAI/AI-Studio.git
synced 2026-10-04 16:09:40 +00:00
showed user default values in expert settings for datasources
This commit is contained in:
1 parent
15afe1c80c
commit
aafc58b31a
9 files changed
+118
-67
No files matched your search
@@ -14,7 +14,7 @@ namespace AIStudio.Tools.Services;
|
||||
public sealed partial class DataSourceEmbeddingService
|
||||
{
|
||||
private const string OFFICE_LOCK_FILE_PREFIX = "~$";
|
||||
private const int DEFAULT_CHUNK_OVERLAP_TOKEN_LENGTH = 300;
|
||||
internal const int DEFAULT_CHUNK_OVERLAP_TOKEN_LENGTH = 300;
|
||||
private const bool IMAGE_EMBEDDING_ENABLED = false;
|
||||
|
||||
private enum RagFileIndexingDecision
|
||||
@@ -542,11 +542,8 @@ public sealed partial class DataSourceEmbeddingService
|
||||
|
||||
var configuredOverlapTokenLength = dataSource is IInternalDataSource overlapDataSource
|
||||
? overlapDataSource.ChunkOverlapTokenLength
|
||||
: 0;
|
||||
var requestedOverlapTokenLength = configuredOverlapTokenLength > 0
|
||||
? configuredOverlapTokenLength
|
||||
: DEFAULT_CHUNK_OVERLAP_TOKEN_LENGTH;
|
||||
var overlapTokenLength = Math.Clamp(requestedOverlapTokenLength, 0, Math.Max(0, maxChunkTokenLength - 1));
|
||||
var overlapTokenLength = Math.Clamp(configuredOverlapTokenLength, 0, Math.Max(0, maxChunkTokenLength - 1));
|
||||
|
||||
return new(maxChunkTokenLength, overlapTokenLength);
|
||||
}
|
||||
@@ -948,7 +945,7 @@ public sealed partial class DataSourceEmbeddingService
|
||||
embeddingProvider.EffectiveTokenLimit,
|
||||
GetDataSourceConfidenceLevel(dataSource).ToString(),
|
||||
dataSource is IInternalDataSource internalDataSource ? internalDataSource.MaxChunkTokenLength : 0,
|
||||
dataSource is IInternalDataSource overlapDataSource ? overlapDataSource.ChunkOverlapTokenLength : 0,
|
||||
dataSource is IInternalDataSource overlapDataSource ? overlapDataSource.ChunkOverlapTokenLength : DEFAULT_CHUNK_OVERLAP_TOKEN_LENGTH,
|
||||
chunkingOptions.MaxChunkTokenLength,
|
||||
chunkingOptions.OverlapTokenLength);
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ using AIStudio.Settings.DataModel;
|
||||
using AIStudio.Tools.Databases;
|
||||
using AIStudio.Tools.Databases.IndexStore;
|
||||
using AIStudio.Tools.Databases.VectorStore;
|
||||
using AIStudio.Tools.PluginSystem;
|
||||
using AIStudio.Tools.RAG;
|
||||
using AIStudio.Tools.Rust;
|
||||
|
||||
@@ -14,6 +15,8 @@ public sealed class DataSourceLocalRetrievalService(
|
||||
SettingsManager settingsManager, RustService rustService, DatabaseClientProvider databaseClientProvider,
|
||||
ILogger<DataSourceLocalRetrievalService> logger)
|
||||
{
|
||||
private static string TB(string fallbackEN) => I18N.I.T(fallbackEN, typeof(DataSourceLocalRetrievalService).Namespace, nameof(DataSourceLocalRetrievalService));
|
||||
|
||||
private enum RetrievalChannel
|
||||
{
|
||||
VECTOR,
|
||||
@@ -340,13 +343,16 @@ public sealed class DataSourceLocalRetrievalService(
|
||||
private static string BuildReferenceTitle(LocalRetrievalHit hit)
|
||||
{
|
||||
var sourceName = FirstNonEmpty(hit.FileName, hit.DataSourceName);
|
||||
return BuildChunkTitle(sourceName, hit.ChunkIndex, hit.PageNumber);
|
||||
return BuildLocatedReferenceTitle(sourceName, hit.ChunkIndex, hit.PageNumber);
|
||||
}
|
||||
|
||||
private static string BuildChunkTitle(string sourceName, int chunkIndex, int? pageNumber)
|
||||
private static string BuildLocatedReferenceTitle(string sourceName, int chunkIndex, int? pageNumber)
|
||||
{
|
||||
var page = pageNumber is > 0 ? $", page {pageNumber}" : string.Empty;
|
||||
return $"{sourceName} (chunk {chunkIndex + 1}{page})";
|
||||
var location = pageNumber is > 0
|
||||
? string.Format(TB("Page {0}"), pageNumber)
|
||||
: string.Format(TB("Chunk {0}"), chunkIndex + 1);
|
||||
|
||||
return $"{sourceName} ({location})";
|
||||
}
|
||||
|
||||
private static string BuildReferenceLink(string path, LocalRetrievalHit hit)
|
||||
@@ -412,7 +418,7 @@ public sealed class DataSourceLocalRetrievalService(
|
||||
result.Result.ParentFileId,
|
||||
result.Result.FileName,
|
||||
FirstNonEmpty(result.Result.AbsolutePath, result.Result.FilePath),
|
||||
BuildChunkTitle(FirstNonEmpty(result.Result.FileName, dataSource.Name), result.Result.ChunkIndex, result.Result.PageNumber));
|
||||
BuildLocatedReferenceTitle(FirstNonEmpty(result.Result.FileName, dataSource.Name), result.Result.ChunkIndex, result.Result.PageNumber));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -436,7 +442,7 @@ public sealed class DataSourceLocalRetrievalService(
|
||||
result.Result.ParentFileId,
|
||||
result.Result.FileName,
|
||||
result.Result.AbsolutePath,
|
||||
BuildChunkTitle(FirstNonEmpty(result.Result.FileName, dataSource.Name), result.Result.ChunkIndex, result.Result.PageNumber));
|
||||
BuildLocatedReferenceTitle(FirstNonEmpty(result.Result.FileName, dataSource.Name), result.Result.ChunkIndex, result.Result.PageNumber));
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user