Database & Data Sync Blog

First on-device Vector Database (aka Semantic Index) for iOS

First on-device Vector Database (aka Semantic Index) for iOS

Revolutionize Your iOS and macOS Apps with ObjectBox and Swift
Easily empower your iOS and macOS apps with cutting-edge, private, and sustainable AI features using ObjectBox, an on-device vector database built specifically for Swift apps. Leveraging Small Language Models (SLM), ObjectBox enables local semantic indexing, providing fast on-device AI capabilities like Retrieval-Augmented Generation (RAG) or Generative AI (GenAI) without requiring an internet connection, ensuring complete data privacy.

Apple Intelligence Meets ObjectBox Swift
Apple’s recently demonstrated “Apple Intelligence” features combine on-device AI models with a vector database (semantic index). ObjectBox Swift now lets you incorporate similar advanced AI features into your iOS apps quickly and easily.

Cross-Platform Flexibility
Not using Swift? ObjectBox offers bindings for:

Flutter/Dart (iOS, Android, desktop)
Java/Kotlin (Android and JVM)
C++ (embedded devices)
Advanced AI Anywhere, Anytime
Typical AI applications use user-specific or company-specific data and multiple queries to enhance model responses and perform complex tasks. With the release of ObjectBox 4.0, this functionality is now available locally on restricted devices.

Cloud vs. On-Device Vector Databases
ObjectBox is a comprehensive database allowing storage of complex data objects alongside vectors. This enables hybrid search, traceability, and powerful queries, providing the full feature set of a database.

Use Cases for On-Device AI with ObjectBox
ObjectBox can power various applications, from generative AI features in mobile apps to predictive maintenance in cars and AI-enhanced games. For iOS apps, anticipated on-device AI use cases include:

Chat-with-Files Apps:
Travel: Offline travel guide.
Research: Chat with research papers.
Health: Personalized health recommendations.
Productivity: Personal assistants for various life areas.
Family Management: Assistants monitoring school channels, emails, and more.
Professional Assistants: Sales assistants for contextual and personalized follow-ups.
Educational: Apps generating quizzes and practice questions from learning materials.
Running Local AI Stack with SLMs
Recent Small Language Models (SLMs) offer impressive capabilities while being small enough to run on mobile phones. To run these models on an iPhone or macOS device, you need:

ObjectBox: Vector database for the semantic index.
Models: An embedding model and a language model suited to your needs.
MLX: Model runtime framework by Apple, optimized for Apple Silicone.
Start Building Next-Generation On-Device AI Apps
With ObjectBox and Swift, you can begin developing advanced on-device AI applications today. For more information, visit our vector search documentation.

Enhance your iOS and macOS apps with fast, private, and sustainable AI features using ObjectBox’s on-device vector database built for Swift.

read more
Retrieval Augmented Generation (RAG) with vector databases: Expanding AI Capabilities

Retrieval Augmented Generation (RAG) with vector databases: Expanding AI Capabilities

RAG Explained

Retrieval Augmented Generation (RAG) is a technique that enhances large language models (LLMs) with reliable facts from external sources, typically stored in a vector database. By integrating internal company data, the latest news, or personal device information, RAG enables models to generate context-specific, expert-level responses, significantly reducing hallucinations.

Key Benefits of RAG
Customization and Adaptation: RAG tailors responses to specific domains using vector databases, transforming general intelligence into expert intelligence.

Contextual Relevance: Incorporating information from extensive text corpora, RAG models generate contextually relevant and high-quality responses.

Accuracy and Diversity: External information integration ensures more accurate, informative, and diverse responses, avoiding repetition.

Cost-Effective Implementation: RAG requires less task-specific training data compared to fine-tuning, making it a cost-effective solution, especially when annotated data is scarce or expensive.

Transparency: RAG models enhance trust by explicitly indicating the sources of retrieved information.

How RAG Works
DB Creation: External data is transformed into vector embeddings and stored in a vector database.
Retrieval: Queries are converted to vectors to retrieve relevant information using semantic search.
Augmentation: Retrieved data augments the query.
Generation: The augmented query is used by the LLM to generate an accurate answer.
Future Directions
RAG continues to evolve, with researchers exploring enhancements through techniques like fine-tuning, long context windows, and improved data handling for multimodal data. Advances in optimizing LLMs for local device operation also expand RAG’s potential applications.

read more
The on-device Vector Database for Android and Java

The on-device Vector Database for Android and Java

ObjectBox 4.0 introduces an advanced on-device vector database for Android, designed specifically to empower Android and Java developers with robust local AI capabilities. This on-device vector database for Android supports sophisticated vector data processing and analysis, enabling developers to assess semantic similarities across various document types, including images, audio files, and texts. A prime application of this technology is to augment Large Language Models (LLMs) or smaller models such as Phi-3 with unique domain expertise, proprietary knowledge, and private data. This integration of AI models with specialized knowledge bases facilitates high-quality, tailored results that surpass the capabilities of standard models. This process is known as “retrieval-augmented generation” (RAG). With ObjectBox’s on-device functionality, developers can now leverage on-device RAG, ensuring that all data remains private and never leaves the device. Explore the potential of on-device vector database technology with ObjectBox 4.0 on your Android device, enhancing your applications while maintaining complete data privacy.

read more
Python on-device Vector and Object Database for Local AI

Python on-device Vector and Object Database for Local AI

Python developers, did you know you can now do local / on-device RAG on commodity hardware without the need for an Internet connection, and no need to share the data?

The battle-tested on-device database, ObjectBox, has just extended their Python support. It’s a very lightweight and fast vector database alternative you can run on almost any hardware.

Even with millions of documents, ObjectBox finds the nearest neighbours within milliseconds on commodity hardware.

read more
Evolution of search: traditional vs vector search

Evolution of search: traditional vs vector search

Traditional search vs. vector search – what are the key differences? Why is vector search crucial in today’s data-driven world? This article delves into the evolution of search technology, comparing traditional keyword methods with vector search, and highlights the benefits of AI-powered semantic understanding for improved search accuracy and relevance.

read more
Edge AI: The era of on-device AI

Edge AI: The era of on-device AI

The Era of Edge AI: Unleashing Localized Intelligence

Edge AI represents a transformative shift in artificial intelligence, moving data processing from centralized cloud servers directly to the local devices we use every day. This evolution allows for real-time AI applications in environments where connectivity is limited or non-existent—from rural health monitors to autonomous vehicles. By processing data on the device itself, Edge AI offers enhanced privacy, reduced latency, and improved reliability, making smart technology truly ubiquitous.

To power these advanced applications, a critical component is necessary: the vector database. Unlike traditional databases that manage data in structured formats, vector databases handle and interpret vector embeddings—complex data formats crucial for AI tasks. These databases enable the rapid processing and analysis of large datasets right where the data is generated, supporting everything from instant language translation on smartphones to critical decision-making in driver assistance systems.

As we delve deeper into the capabilities and requirements of on-device AI, it becomes clear that vector databases are not just supporting infrastructure—they are foundational to the advancement and expansion of Edge AI. Their ability to manage and search through massive sets of high-dimensional data efficiently allows Edge AI systems to perform sophisticated tasks such as pattern recognition, semantic search, and dynamic learning, all in real time.

With the rapid development of Edge AI technology, we are on the brink of a new era where artificial intelligence is not just a distant server’s capability but a localized, accessible, and integral part of our daily devices. This shift promises to make AI more personal, immediate, and effective, thereby shaping the future of how technology interacts seamlessly with our everyday lives.

read more
In-Memory Database Use Cases

In-Memory Database Use Cases

Discover the versatility of ObjectBox with its new in-memory database feature. Ideal for caching, temporary data, and enhancing app speed, this update caters to various use cases, including diskless devices and testing environments. Seamlessly switch between disk-based and in-memory storage options, with future updates promising enhanced performance and persistence functionalities. Available now for Java, Android, C, C++, with support for Dart, Go, Python, and Swift coming soon.

read more

Vector types (aka arrays) added with ObjectBox Java 3.6 release

Multi-dimensional vectors / vector embeddings are a central building block for AI applications. And accordingly, the ability to store vectors to add long-term memory to your AI applications (e.g. via vector databases) is gaining importance. Sounds fancy, but for the basic use cases, this simply boils down to “arrays of floats” for developers. And this is exactly what ObjectBox database now supports natively. If you want to use vectors on the edge, e.g. in a mobile app or on an embedded device, when offline, independent from an Internet connection, removing the unknown latency, try it and let us know what you think.

read more

Vector databases – a look at the AI database market with a comprehensive comparison matrix

Vector databases – what are vector databases? Why do you need them for AI applications? This article provides an overview on the topic of vector databases, its use for AI and takes a look at the market including a comprehensive comparison matrix on popular vector database choices like Weaviate, Marqo AI, Chroma, Pinecone and many more

read more
What is an Edge Database, and why do you need one?

What is an Edge Database, and why do you need one?

Edge Databases are a new type of database rising to the needs of the decentralized Edge Computing topology. They deliver specific feature sets making it easy for application developers to implement edge solutions quickly and successfully without being detered or even stopped by fundamental functionalities like fast local data persistence and decentralized data flows (Data Sync).

read more

Why do we need Edge Computing for a sustainable future?

Centralized data centers consume a lot of energy, produce a lot of carbon emissions and cause significant electronic waste. While data centers are seeing a positive trend towards using green energy, an even more sustainable approach (alongside so-called “green data centers” [1]) is to cut unnecessary cloud traffic, central computation and storage as much as possible by shifting computation to the edge. Ideally, Edge Computing strategies use efficient technologies like ObjectBox to harness the power of already deployed available devices (like e.g. smartphones, machines, desktops, gateways), making the solution even more sustainable.

read more

Green Coding: Developing Sustainable Software for a Greener Future

Every line of code – scaled up to hundreds, thousands, or even millions of devices (desktops, smartphones, tablets…) worldwide – has the potential to significantly reduce energy consumption and CO₂ emissions.

Digitization helps to save CO₂ – many experts agree on that. But things are not that simple, because the creation of software and its use contribute to greenhouse gas emissions too.
All code creates a carbon footprint. Software development and use affect the environment from the energy consumed while running to the associated electronic device waste. Choosing a sustainable architecture matters, but developers also can make a difference with green coding, creating envrionmentally sustainable software. And those that build developer tools can help even more so.

read more