Skip to main content

Fun Sentence Splitter

A fundamental sentence splitter based on spacy.

Usage

from fun_sentence_splitter import init

splitter = init(spacy_model="de_core_news_sm")

for sentence in splitter("Das ist ein Satz. Und hier noch einer!"):
    print(sentence.text, sentence.span)

init(...) returns a splitter function. Each Sentence exposes .text and .span (a (start, end) index pair into the original text).

Split on line breaks first (e.g. for structured documents) and only run spaCy on longer lines:

splitter = init(
    spacy_model="de_core_news_sm",
    always_split_on_line_breaks=True,
    max_len_before_split=100,
)

Download the language model once: uv run python -m spacy download de_core_news_sm

Requirements

uv.

Local Dev Setup

Install dependencies and download the Spacy language model used in the tests:

uv sync
uv run python -m spacy download de_core_news_sm

Run static checks and tests:

uv run ruff check .
uv run mypy .
uv run pytest --cov=fun_sentence_splitter

Run Evaluation

./evaluate.sh path/to/splits_dir

path/to/splits_dir: directory containing pairs of *.split and *.txt files. .split files contain the expected sentences, each on a separate line. .txt files contain the original text to split.

The evaluation script will automatically update the spacy dependency and download the required language models.

Metadata

Release files for fun-sentence-splitter 0.6.3814.20260724

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fun-sentence-splitter 0.6.3814.20260724
File Size Uploaded Provenance Actions
fun_sentence_splitter-0.6.3814.20260724.tar.gz 59.7 kB Without provenance Details for fun_sentence_splitter-0.6.3814.20260724.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for fun-sentence-splitter 0.6.3814.20260724
File Interpreter ABI Platform Actions
fun_sentence_splitter-0.6.3814.20260724-py3-none-any.whl Python 3 none any Details for fun_sentence_splitter-0.6.3814.20260724-py3-none-any.whl

Total release size: 64.1 kB

Release files / fun_sentence_splitter-0.6.3814.20260724.tar.gz

Download URL fun_sentence_splitter-0.6.3814.20260724.tar.gz
Size 59.7 kB
Tags Source
SHA-256 checksum
How to use checksums
fb2036367cffac3462b2fe152cfed0c7cb715738be220e6332721dbebd7aa7e8
BLAKE2b-256 checksum
How to use checksums
12f2b890ae19987fe584da2e0a2c126918c3a505786408057d6ae9f84f6d2aff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / fun_sentence_splitter-0.6.3814.20260724-py3-none-any.whl

Download URL fun_sentence_splitter-0.6.3814.20260724-py3-none-any.whl
Size 4.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c6a403cef0663196e5f5876c8f3ca768b5a0a80a5010e87a0135ca6953f4703a
BLAKE2b-256 checksum
How to use checksums
1fcc8d1caa56b61edaf39a976a9c6632363086f4038bdf77e8c4e8f18303e00a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for fun-sentence-splitter 0.6.3814.20260724

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page