chunkConfigService.ts 1.1 KB

123456789101112131415161718192021222324252627282930
  1. // Chunk configuration service - Used to fetch and validate chunk configuration limits
  2. export interface ChunkConfigLimits {
  3. maxChunkSize: number; // Max chunk size (tokens)
  4. maxOverlapSize: number; // Max overlap size (tokens)
  5. minOverlapSize: number; // Min overlap size (tokens)
  6. defaultChunkSize: number; // Default chunk size
  7. defaultOverlapSize: number; // Default overlap size
  8. modelInfo: EmbeddingModelLimit; // Model info
  9. }
  10. export interface EmbeddingModelLimit {
  11. name: string; // Model name
  12. maxInputTokens: number; // Model input limit
  13. maxBatchSize: number; // Model batch limit
  14. expectedDimensions: number; // Expected vector dimensions
  15. }
  16. export const chunkConfigService = {
  17. formatLimits(limits: ChunkConfigLimits): string {
  18. return [
  19. `Model: ${limits.modelInfo.name}`,
  20. `Max Chunk: ${limits.maxChunkSize} tokens`,
  21. `Max Overlap: ${limits.maxOverlapSize} tokens`,
  22. `Batch Limit: ${limits.modelInfo.maxBatchSize}`,
  23. `Vector Dimensions: ${limits.modelInfo.expectedDimensions}`,
  24. ].join(' | ');
  25. },
  26. };