uv for dependency management. This guide will walk you through the complete installation process.
Prerequisites
Before installing Hinbox, ensure you have the following:Python 3.12 or higher
Check your Python version:If you need to install or upgrade Python, visit python.org or use your system package manager.
just task runner
Install Verify the installation:
just for running project commands:See the just documentation for more installation options.
Optional: Ollama for local models
If you want to run local AI models (useful for privacy-sensitive research), install Ollama:Visit ollama.com and follow the installation instructions for your platform.Verify the installation:
Install Hinbox
1. Clone the repository
2. Install dependencies
Hinbox supports two installation modes:- Cloud embeddings (recommended)
- Local embeddings
Install with cloud embeddings only (works on all platforms including Intel Mac):This is the recommended option for most users. Cloud embeddings via Jina AI are fast and don’t require GPU resources.
3. Set up environment variables
Create a.env file in the project root to store your API keys and configuration:
The
just task runner automatically loads environment variables from .env files.4. Optional: Set up local models
If you installed Ollama and want to use local models:Pull the default model
Download the Qwen 2.5 32B model (~23GB):This is a powerful instruction-tuned model that works well for entity extraction. The download may take some time depending on your connection.
Set context window
Configure a realistic context window for Ollama. Qwen 2.5 supports up to 131K tokens, but more context requires more VRAM.Add to your shell profile (Then restart your shell or the Ollama service.
.bashrc, .zshrc, etc.) or systemd unit:Optional: Override default models
You can override the default models without editing code. Add to your Hinbox uses LiteLLM under the hood, so you can use any model supported by LiteLLM.
.env file:5. Verify installation
Check that everything is working:guantanamo and template).
Configuration files
After installation, your project structure should look like this:Next steps
Quick start
Create your first domain and process historical sources
Configuration
Learn how to configure domains for your research
Common installation issues
uv sync fails with dependency errors
uv sync fails with dependency errors
Try updating Then retry:If the issue persists, check that you’re using Python 3.12 or higher:
uv to the latest version:PyTorch installation fails on Intel Mac
PyTorch installation fails on Intel Mac
Intel Macs are not supported for local embeddings due to PyTorch limitations. Use cloud embeddings instead:
Ollama model fails to load
Ollama model fails to load
Make sure:
- Ollama service is running:
ollama serve - Model is pulled:
ollama listshould show your model - Context length is set:
echo $OLLAMA_CONTEXT_LENGTH
GEMINI_API_KEY not found
GEMINI_API_KEY not found
Make sure you created the The
.env file in the project root:justfile automatically loads .env variables using set dotenv-load.just command not found
just command not found
Ensure If not found, reinstall following the just installation guide.Alternatively, you can run commands directly with
just is installed and in your PATH:uv:Development installation
If you’re contributing to Hinbox development, install dev dependencies:The CI checks include linting with Ruff and running the test suite. Always run
just ci before submitting pull requests.System requirements
Minimum requirements (cloud mode)
- CPU: Any modern multi-core processor
- RAM: 8GB minimum, 16GB recommended
- Disk: 2GB for installation + space for your data
- Network: Internet connection for cloud API calls
Recommended for local mode
- CPU: 8+ cores recommended
- RAM: 32GB minimum for Qwen 2.5 32B
- GPU: Optional but recommended (16GB+ VRAM)
- Disk: 50GB+ for models and data
Platform support
| Platform | Cloud embeddings | Local embeddings | Notes |
|---|---|---|---|
| Linux (x86_64) | ✓ | ✓ | Full support |
| macOS (Apple Silicon) | ✓ | ✓ | Full support |
| macOS (Intel) | ✓ | ✗ | PyTorch limitations |
| Windows | ✓ | ✓ | Full support |
Privacy and security
Privacy mode
For sensitive historical research, use the--local flag to enforce local-only processing:
- Forces local embeddings (no cloud API calls)
- Disables all LLM telemetry callbacks
- Requires local model setup (Ollama)
- Requires local embeddings installation (
--extra local-embeddings)
API key security
Best practices:- Use environment-specific
.envfiles - Rotate API keys regularly
- Use separate keys for development and production
- Monitor API usage in the provider dashboard
Data storage
All extracted data is stored locally in thedata/ directory:
- Cloud API calls for embeddings and LLM inference (can be disabled with
--local) - Optional telemetry (can be disabled with
--local)