Metadata-Version: 2.4
Name: ragbits-document-search
Version: 0.9.0
Summary: Document Search module for Ragbits
Project-URL: Homepage, https://github.com/deepsense-ai/ragbits
Project-URL: Bug Reports, https://github.com/deepsense-ai/ragbits/issues
Project-URL: Documentation, https://ragbits.deepsense.ai/
Project-URL: Source, https://github.com/deepsense-ai/ragbits
Author-email: "deepsense.ai" <ragbits@deepsense.ai>
License-Expression: MIT
Keywords: Document Search,GenAI,Generative AI,LLMs,Large Language Models,RAG,Retrieval Augmented Generation
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.10
Requires-Dist: pdf2image>=1.17.0
Requires-Dist: ragbits-core==0.9.0
Requires-Dist: rerankers>=0.6.1
Requires-Dist: unstructured-client>=0.26.0
Requires-Dist: unstructured>=0.16.9
Provides-Extra: azure
Requires-Dist: azure-core~=1.32.0; extra == 'azure'
Requires-Dist: azure-identity~=1.19.0; extra == 'azure'
Requires-Dist: azure-storage-blob~=12.24.1; extra == 'azure'
Provides-Extra: distributed
Requires-Dist: ray>=2.39.0; extra == 'distributed'
Provides-Extra: gcs
Requires-Dist: gcloud-aio-storage~=9.3.0; extra == 'gcs'
Provides-Extra: huggingface
Requires-Dist: datasets~=3.0.1; extra == 'huggingface'
Provides-Extra: s3
Requires-Dist: boto3~=1.35.42; extra == 's3'
Description-Content-Type: text/markdown

# Ragbits Document Search

Ragbits Document Search is a Python package that provides tools for building RAG applications. It helps ingest, index, and search documents to retrieve relevant information for your prompts.

## Installation

You can install the latest version of Ragbits Document Search using pip:

```bash
pip install ragbits-document-search
```

## Quickstart
```python
from ragbits.core.embeddings.litellm import LiteLLMEmbeddings
from ragbits.core.vector_stores.in_memory import InMemoryVectorStore
from ragbits.document_search import DocumentSearch

async def main() -> None:
    """
    Run the example.
    """
    embedder = LiteLLMEmbeddings(
        model="text-embedding-3-small",
    )
    vector_store = InMemoryVectorStore()
    document_search = DocumentSearch(
        embedder=embedder,
        vector_store=vector_store,
    )

    # Ingest all .txt files from the "biographies" directory
    await document_search.ingest("file://biographies/*.txt")

    # Search the documents for the query
    results = await document_search.search("When was Marie Curie-Sklodowska born?")
    print(results)


if __name__ == "__main__":
    asyncio.run(main())
```

## Documentation
* [Quickstart 2: Adding RAG Capabilities](https://ragbits.deepsense.ai/quickstart/quickstart2_rag/)
* [How-To Guides - Document Search](https://ragbits.deepsense.ai/how-to/document_search/async_processing/)
* [API Reference - Document Search](https://ragbits.deepsense.ai/api_reference/document_search/)
