Pensieve, previously known as Memos, is a groundbreaking privacy-focused passive recording project designed to automatically capture screen content, build intelligent indices, and offer a user-friendly web interface for retrieving historical records. This innovative tool draws inspiration from projects like Rewind and Windows Recall but distinguishes itself by ensuring users have complete control over their data, thereby avoiding the transfer of sensitive information to untrusted data centers.
Features
- Simple Installation: Get started quickly by installing dependencies via pip.
- Complete Data Control: All data is stored locally, allowing for full local operation and self-managed data processing.
- Full-text and Vector Search Support: Enhances search capabilities with advanced indexing.
- Integration with Ollama: Utilizes Ollama as the machine learning engine for Pensieve.
- Compatibility with OpenAI API Models: Works seamlessly with models like OpenAI, Azure OpenAI, vLLM, etc.
- Cross-platform Support: Currently supports Mac and Windows, with Linux support in development.
- Extensible Functionality: Offers additional features through plugins.
Quick Start
To begin using Pensieve, ensure your Python environment supports enable_load_extension
. If not, consider using miniconda to manage your Python environment. Install Pensieve via pip, initialize the configuration file and SQLite database, start the service, and access the web interface at http://localhost:8839
.
User Guide
Pensieve's functionality can be tailored through various configurations, including the selection of embedding models based on the user's primary language, integration with Ollama for enhanced visual search capabilities, and adjustments to the indexing frequency to optimize system performance.
Privacy and Security
Pensieve prioritizes user privacy by ensuring all data is stored locally and processed entirely by the user. The project is open-source, allowing for transparency and community contributions to further enhance privacy and security features.
Development Guide
For developers, Pensieve offers a detailed guide on running each component of the project in the foreground, providing insights into the web service, screenshot recording program, and image event listener.
Pensieve represents a significant advancement in passive recording technology, offering users a powerful tool for capturing and retrieving screen content while maintaining complete control over their data.