52 lines
1.6 KiB
Markdown
52 lines
1.6 KiB
Markdown
# haiku.rag
|
|
|
|
A Retrieval-Augmented Generation (RAG) library on SQLite.
|
|
|
|
## Features
|
|
|
|
- **Local SQLite**: No need to run additional servers
|
|
- **Support for various embedding providers**: Ollama, VoyageAI, OpenAI or add your own
|
|
- **Hybrid Search**: Vector search using `sqlite-vec` combined with full-text search `FTS5`, using Reciprocal Rank Fusion
|
|
- **File monitoring**: Automatically index files when run as a server
|
|
- **Extended file format support**: Parse 40+ file formats including PDF, DOCX, HTML, Markdown, audio and more. Or add a URL!
|
|
- **MCP server**: Exposes functionality as MCP tools
|
|
- **CLI commands**: Access all functionality from your terminal
|
|
- **Python client**: Call `haiku.rag` from your own python applications
|
|
|
|
## Quick Start
|
|
|
|
Install haiku.rag:
|
|
```bash
|
|
uv pip install haiku.rag
|
|
```
|
|
|
|
Use from Python:
|
|
```python
|
|
from haiku.rag.client import HaikuRAG
|
|
|
|
async with HaikuRAG("database.db") as client:
|
|
# Add a document
|
|
doc = await client.create_document("Your content here")
|
|
|
|
# Search documents
|
|
results = await client.search("query")
|
|
```
|
|
|
|
Or use the CLI:
|
|
```bash
|
|
haiku-rag add "Your document content"
|
|
haiku-rag search "query"
|
|
```
|
|
|
|
## Documentation
|
|
|
|
- [Installation](installation.md) - Install haiku.rag with different providers
|
|
- [Configuration](configuration.md) - Environment variables and settings
|
|
- [CLI](cli.md) - Command line interface usage
|
|
- [Server](server.md) - File monitoring and server mode
|
|
- [MCP](mcp.md) - Model Context Protocol integration
|
|
- [Python](python.md) - Python API reference
|
|
|
|
## License
|
|
|
|
This project is licensed under the [MIT License](https://raw.githubusercontent.com/ggozad/haiku.rag/main/LICENSE).
|