langchain_text_splitters.spacy.SpacyTextSplitter

class langchain_text_splitters.spacy.SpacyTextSplitter(separator: str = '\n\n', pipeline: str = 'en_core_web_sm', max_length: int = 1000000, **kwargs: Any)[source]

使用 Spacy 包分割文本。

默认情况下,使用 Spacy 的 en_core_web_sm 模型,其默认最大长度为 1000000(这是该模型可接受的最大字符长度,可根据大文件进行增加)。为了获得更快但可能不太准确的分割,可以使用 pipeline=’sentencizer’

初始化 spacy 文本分割器。

方法

__init__([separator, pipeline, max_length])

初始化 spacy 文本分割器。

atransform_documents(documents, **kwargs)

异步转换文档列表。

create_documents(texts[, metadatas])

从文本列表创建文档。

from_huggingface_tokenizer(tokenizer, **kwargs)

使用 HuggingFace 分词器计数长度的文本分割器。

from_tiktoken_encoder([encoding_name, ...])

使用 tiktoken 编码器计数长度的文本分割器。

split_documents(documents)

分割文档。

split_text(text)

分割传入的文本并返回块。

transform_documents(documents, **kwargs)

通过分割文档来转换文档序列。

参数
  • separator (str) –

  • pipeline (str) –

  • max_length (int) –

  • kwargs (Any) –

__init__(separator: str = '\n\n', pipeline: str = 'en_core_web_sm', max_length: int = 1000000, **kwargs: Any) None[source]

初始化 spacy 文本分割器。

参数
  • separator (str) –

  • pipeline (str) –

  • max_length (int) –

  • kwargs (Any) –

返回类型

None

async atransform_documents(documents: Sequence[Document], **kwargs: Any) Sequence[Document]

异步转换文档列表。

参数
  • documents (Sequence[Document]) – 待转换的 Document 序列。

  • kwargs (Any) –

返回

转换后的 Document 序列。

返回类型

Sequence[Document]

create_documents(texts: List[str], metadatas: Optional[List[dict]] = None) List[Document]

从文本列表创建文档。

参数
  • texts (列表[字符串]) –

  • 元数据(《可选》《列表》《字典》) –

返回类型

列表Document

classmethod from_huggingface_tokenizer(tokenizer: Any, **kwargs: Any) TextSplitter

使用 HuggingFace 分词器计数长度的文本分割器。

参数
  • tokenizerAny) –

  • kwargs (Any) –

返回类型

TextSplitter

classmethod from_tiktoken_encoder(encoding_name: str = 'gpt2', model_name: Optional[str] = None, allowed_special: Union[Literal['all'], AbstractSet[str]], disallowed_special: Union[Literal['all'], Collection[str]], **kwargs: Any) TS

使用 tiktoken 编码器计数长度的文本分割器。

参数
  • 编码名称str) –

  • 模型名称可选[str]) –

  • 允许的特定内容联合[Literal['all'], ~typing.AbstractSet[str]]) –

  • 不允许的特定内容联合[Literal['all'], ~typing.Collection[str]]) –

  • kwargs (Any) –

返回类型

TS

split_documents(documents: Iterable[Document]) List[Document]

分割文档。

参数

documents (Iterable[Document]) –

返回类型

列表Document

split_text(text: str) List[str][source]

分割传入的文本并返回块。

参数

text (str) –

返回类型

List[str]

transform_documents(documents: Sequence[Document], **kwargs: Any) Sequence[Document]

通过分割文档来转换文档序列。

参数
  • documents (Sequence[Document]) –

  • kwargs (Any) –

返回类型

Sequence[Document]

SpacyTextSplitter 的使用示例