Skip to content

ETL 管道

ETL(Extract(提取), Transform(转换) and Load(加载)) 是检索增强生成 RAG(Retrieval-Augmented Generation)数据处理的核心。

ETL 管道三大核心组成部分

  • DocumentReader
  • DocumentTransformer
  • DocumentWriter

001

ETL 接口

ETL 管道以下接口和实现组成。

002

DocumentReader

将一个文档内容读取转为一个 List<Document>

java
public interface DocumentReader extends Supplier<List<Document>> {

	default List<Document> read() {
		return get();
	}

}

目前Spring AI支持以下文档读取:

文档类型实现说明
JSONJsonReader

DocumentTransformer

java
public interface DocumentTransformer extends Function<List<Document>, List<Document>> {

	default List<Document> transform(List<Document> transform) {
		return apply(transform);
	}

}

DocumentWriter

java
public interface DocumentWriter extends Consumer<List<Document>> {

	default void write(List<Document> documents) {
		accept(documents);
	}

}