unstructured

package
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 5, 2026 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MetadataFileSuffix         = "-metadata.json"
	ConvertedFileSuffix        = "-converted.json"
	ChunksFileSuffix           = "-chunks.json"
	VectorEmbeddingsFileSuffix = "-vector-embeddings.json"
)

Variables

This section is empty.

Functions

func FilterChunksFilePaths

func FilterChunksFilePaths(filePaths []string) []string

func FilterConvertedFilePaths

func FilterConvertedFilePaths(filePaths []string) []string

func FilterRawFilePaths

func FilterRawFilePaths(filePaths []string) []string

func GetChunksFilePath

func GetChunksFilePath(rawFilePath string) string

func GetConvertedFilePath

func GetConvertedFilePath(rawFilePath string) string

func GetMetadataFilePath

func GetMetadataFilePath(rawFilePath string) string

func GetRawFilePathFromConvertedFilePath

func GetRawFilePathFromConvertedFilePath(convertedFilePath string) string

func GetVectorEmbeddingsFilePath

func GetVectorEmbeddingsFilePath(rawFilePath string) string

Types

type Chunker

type Chunker interface {
	Chunk(text string) ([]string, error)
}

type ChunkingTool

type ChunkingTool string
const (
	LangchainChunkingTool ChunkingTool = "langchain"
)

type Chunks

type Chunks struct {
	Text []string `json:"text"`
}

type ChunksDocument

type ChunksDocument struct {
	Metadata *ChunksFileMetadata `json:"metadata"`
	Chunks   *Chunks             `json:"chunks"`
}

type ChunksFile

type ChunksFile struct {
	ConvertedDocument *ConvertedDocument `json:"convertedDocument"`
	ChunksDocument    *ChunksDocument    `json:"chunksDocument"`
}

type ChunksFileMetadata

type ChunksFileMetadata struct {
	ConvertedFileMetadata *ConvertedFileMetadata         `json:"convertedFileMetadata"`
	ChunkingTool          ChunkingTool                   `json:"chunkingTool"`
	ChunksGeneratorConfig v1alpha1.ChunksGeneratorConfig `json:"chunksGeneratorConfig"`
}

func (*ChunksFileMetadata) Equal

func (c *ChunksFileMetadata) Equal(other *ChunksFileMetadata) bool

type Content

type Content struct {
	Markdown string `json:"markdown"`
}

type ConvertedDocument

type ConvertedDocument struct {
	Metadata *ConvertedFileMetadata `json:"metadata"`
	Content  *Content               `json:"content"`
}

type ConvertedFile

type ConvertedFile struct {
	ConvertedDocument *ConvertedDocument `json:"convertedDocument"`
}

type ConvertedFileMetadata

type ConvertedFileMetadata struct {
	RawFilePath       string                 `json:"rawFilePath"`
	DocumentConverter DocumentConverter      `json:"documentConverter"`
	DoclingConfig     v1alpha1.DoclingConfig `json:"doclingConfig"`
}

func (*ConvertedFileMetadata) Equal

type DataSource

type DataSource interface {
	// SyncFilesToFilestore will store all files from the source to the filestore and return the list of file paths
	SyncFilesToFilestore(ctx context.Context, fs *filestore.FileStore) ([]RawFileMetadata, error)
}

type Destination

type Destination interface {
	// SyncFilesToDestination will sync the data to the destination
	SyncFilesToDestination(ctx context.Context, fs *filestore.FileStore, filePaths []string) error
}

type DocumentConverter

type DocumentConverter string
const (
	DocumentConverterDocling DocumentConverter = "docling"
)

type MarkdownSplitter

type MarkdownSplitter struct {
	LangchainClient *langchain.Client
	Config          *textsplitter.Options
}

func (*MarkdownSplitter) Chunk

func (c *MarkdownSplitter) Chunk(text string) ([]string, error)

type RawFileMetadata

type RawFileMetadata struct {
	FilePath string `json:"filePath,omitempty"`
	UID      string `json:"uid,omitempty"`
}

type RecursiveCharacterSplitter

type RecursiveCharacterSplitter struct {
	LangchainClient *langchain.Client
	Config          *textsplitter.Options
}

func (*RecursiveCharacterSplitter) Chunk

func (c *RecursiveCharacterSplitter) Chunk(text string) ([]string, error)

type S3BucketSource

type S3BucketSource struct {
	Bucket string
	Prefix string
}

func (*S3BucketSource) SyncFilesToFilestore

func (s *S3BucketSource) SyncFilesToFilestore(ctx context.Context, fs *filestore.FileStore) ([]RawFileMetadata, error)

type SnowflakeInternalStage

type SnowflakeInternalStage struct {
	Client   *snowflake.Client
	Role     string
	Database string
	Schema   string
	Stage    string
}

func (*SnowflakeInternalStage) SyncFilesToDestination

func (d *SnowflakeInternalStage) SyncFilesToDestination(ctx context.Context,
	fs *filestore.FileStore, chunksFilePaths []string) error

type TokenSplitter

type TokenSplitter struct {
	LangchainClient *langchain.Client
	Config          *textsplitter.Options
}

func (*TokenSplitter) Chunk

func (c *TokenSplitter) Chunk(text string) ([]string, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL