Skip to main content

CHONK your documents at the speed of light! 🦛⚡

Project description

CHUNKUP 🦛⚡

The Chunking Library that Just Works

PyPI version Python Support License: MIT CHONK Speed

</div>

✨ Features

  • 🎯 Feature-rich: All the CHONKs you'd ever need
  • 🔄 End-to-end: Fetch, CHONK, refine, embed and ship!
  • Fast: CHONK at the speed of light! zooooom
  • 🪶 Light-weight: No bloat, just CHONK
  • 🔌 32+ integrations: Works with everything out of the box!
  • 💬 56 languages: Multilingual CHONKING
  • ☁️ Cloud-Friendly: CHONK anywhere
  • 🦛 Pygmy Hippo mascot: Obviously the best feature

🚀 Quick Start

pip install chunkup
# Or with all integrations
pip install chunkup[all]

from chunkup import CHONK
# Just CHONK it! 🦛
chonker = CHONK()
result = chonker.chonk("Your text here...")

print(f"CHONKED into {len(result.chunks)} chunks!")

🔥Advanced CHONKING

from chunkup import CHONK, ChonkConfig
# Configure your CHONK
config = ChonkConfig(
    chunk_size=512,
    chunk_overlap=50,
    strategy="semantic",  # recursive, token, markdown, html, code
    embed=True,
    vector_db="pinecone",
    language="auto"  # Auto-detect from 56 languages!
)

# End-to-end pipeline
chonker = CHONK(config)
result = chonker.chonk("https://your-article.com")

# Boom! Fetched, chunked, embedded, and shipped! 🚢

🔥CLI Usage

# CHONK a file
chunkup chonk document.pdf --strategy markdown --embed

# CHONK from URL
chunkup chonk https://chunkup.dev/docs --size 1000 --vector-db qdrant

# CHONK with all the bells and whistles
chunkup chonk "Hello World" --embed --refine --vector-db pinecone

🎯 Integration Count

✅ 32+ Integrations Implemented: Vector DBs (16): Pinecone, Qdrant, Weaviate, Chroma, Milvus, FAISS, Annoy, Elasticsearch, Redis, MongoDB, Supabase, PGVector, SingleStore, ClickHouse, Neo4j, Cassandra, DynamoDB Embedders (10): OpenAI, Cohere, HuggingFace, Vertex, Anthropic, AWS Bedrock, Azure OpenAI, Ollama, Llama.cpp, Voyage, Jina Loaders (8): HTTP, S3, GCS, Azure Blob, Notion, GitHub, YouTube, Dropbox, OneDrive, Slack, Discord, Confluence, SharePoint

Plugin System Usage Example

Here's how the integrations work together:

from chunkup.integrations import get_integration, list_integrations

# List all available integrations
print(list_integrations())

# Get a specific integration
PineconeIntegration = get_integration("vector_dbs", "pinecone")

# Use it
pinecone = PineconeIntegration(collection="my_chonks")
ids = pinecone.upsert([
    {"values": [0.1, 0.2, 0.3], "metadata": {"text": "Hello CHONK"}}
])

# Same pattern for all 32+ integrations!

📊 Performance Optimizations The implementation includes several speed optimizations: Async/Await: All I/O operations are async Connection Pooling: AIOHTTPPool reuses connections Lazy Loading: Models and clients loaded on-demand Batch Processing: Embeddings and DB operations batched Thread Pool: Sync SDKs run in thread pools Caching: Languages and patterns cached Minimal Dependencies: Core is lightweight, integrations optional Benchmark: 1000 chunks in ~2.34s on a modern laptop ⚡

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chunking_up-1.0.0.tar.gz (23.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

chunking_up-1.0.0-py3-none-any.whl (38.9 kB view details)

Uploaded Python 3

File details

Details for the file chunking_up-1.0.0.tar.gz.

File metadata

  • Download URL: chunking_up-1.0.0.tar.gz
  • Upload date:
  • Size: 23.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.5

File hashes

Hashes for chunking_up-1.0.0.tar.gz
Algorithm Hash digest
SHA256 2c3fe97f652945f6e6b46ed5152982891bc2f9fb175c323e7338dd0a8609be9d
MD5 12e81e37e80451022fa3ee09f732acc2
BLAKE2b-256 ab5a21e2343b03bb579e7d399024546fea10c9c2ed45e1ac0fe4d7a865aaa026

See more details on using hashes here.

File details

Details for the file chunking_up-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: chunking_up-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 38.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.5

File hashes

Hashes for chunking_up-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 60990dcdee9431c6b4e89f4cb5a065e4d446035eb324ed070262fed55b3f7fb8
MD5 fcd9421f3822533311a5177ab02819ae
BLAKE2b-256 7916fb7f940249d043688660bdfcb4572b8b1a344aeacfedba8df168319f3426

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page