Skip to main content

AgentVectorDB Header

AgentVectorDB (AVDB)

AgentVectorDB Logo

PyPI version Python License Documentation Code style: ruff PRs Welcome

The Cognitive Core for Your AI Agents - Powered by LanceDB

📚 Superagentic AI Introduction

Superagentic AI Website

📚 Project Documentation

🌟 Overview

AgentVectorDB (AVDB) is a specialized memory management system developed by Superagentic AI. Built on top of LanceDB's powerful vector database capabilities, it provides optimized cognitive architecture for AI agents.

🤝 Built with LanceDB

We extend LanceDB's robust foundation with agent-specific features:

  • Agent memory patterns
  • Importance scoring
  • Context management
  • Cognitive state handling

✨ Key Features

Core Capabilities

  • 📝 Persistent Storage: File-based, no server required
  • 🔍 Semantic Search: Efficient ANN search with filtering
  • ⚡ Async Support: High-performance async/await API
  • 🎯 Agent-Optimized: Purpose-built for AI systems

Advanced Features

  • 🔄 Memory Lifecycle: Complete CRUD operations
  • 📊 Batch Processing: Efficient bulk operations
  • 🧹 Smart Pruning: Intelligent memory management
  • 🔧 Flexible Schema: Dynamic Pydantic schemas
  • ⏱️ Time Tracking: Automatic timestamps

📦 Installation

# Basic installation
pip install agentvectordb

# Development installation
git clone https://github.com/superagenticai/agentvectordb.git
cd agentvectordb
pip install -e ".[dev]"  
#For windows if you encounter UnicodeDecodeError set $env:PYTHONUTF8=1

🚀 Quick Start

from agentvectordb import AgentVectorDBStore
from agentvectordb.embeddings import DefaultTextEmbeddingFunction

# Initialize store
store = AgentVectorDBStore(db_path="./agent_db")
ef = DefaultTextEmbeddingFunction(dimension=384)

# Create collection
memories = store.get_or_create_collection(
    name="agent_memories",
    embedding_function=ef
)

# Add memories (minimum 8 recommended)
initial_memories = [
    {
        "content": "User prefers dark mode",
        "type": "preference",
        "importance_score": 0.8
    },
    # Add more memories...
]

# Add batch
memories.add_batch(initial_memories)

# Query memories
results = memories.query(
    query_text="user preferences",
    k=2
)

🛠️ API Overview

Store Classes

AgentVectorDBStore

store = AgentVectorDBStore(db_path="./db")

Methods:

  • get_or_create_collection()
  • list_collections()

AsyncAgentVectorDBStore

store = AsyncAgentVectorDBStore(db_path="./db")

Collection Classes

AgentMemoryCollection

Methods:

  • add(): Add single memory
  • add_batch(): Add multiple memories
  • query(): Search memories
  • prune_memories(): Remove old memories
  • delete(): Remove memories
  • count(): Get collection size

📚 Advanced Usage

Custom Embedding Functions

from agentvectordb.embeddings import BaseEmbeddingFunction

class CustomEmbedder(BaseEmbeddingFunction):
    def __init__(self, dimension=384):
        super().__init__(dimension=dimension)
    
    def embed(self, texts):
        # Your embedding logic here
        return vectors

Memory Management

# Prune old memories
pruned = collection.prune_memories(
    max_age_seconds=7*24*3600,  # 7 days
    min_importance_score=0.3
)

# Complex queries
results = collection.query(
    query_text="important task",
    filter_sql="type = 'task' AND importance_score > 0.8",
    k=5
)

Async Operations

async def handle_memories():
    store = AsyncAgentVectorDBStore(db_path="./async_db")
    collection = await store.get_or_create_collection(
        name="async_memories",
        embedding_function=ef
    )
    
    await collection.add_batch(memories)
    results = await collection.query(
        query_text="search term",
        k=5
    )

🎯 Use Cases

  • Personal AI assistants
  • Customer service bots
  • Research agents
  • Task automation agents
  • Knowledge management systems
  • Learning systems

🔄 Memory Types

  • Episodic memories
  • Semantic knowledge
  • Procedural information
  • Short-term observations
  • Long-term knowledge

🛣️ Roadmap

Upcoming features:

  • Enhanced filter builders
  • Reflection/summarization helpers
  • Schema evolution support
  • Memory consolidation
  • Extended embedding support
  • Performance optimizations

🤝 Contributing

We welcome contributions! See our Contributing Guide.

📄 License

Licensed under Apache 2.0 - same as LanceDB. See LICENSE.

🙋‍♂️ Support

🙏 Acknowledgments

Built with ❤️ by Superagentic AI using LanceDB


AgentVectorDB: Empower Your AI Agents with Memory!

Metadata

Release files for agentvectordb 0.0.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for agentvectordb 0.0.5
File Size Uploaded
agentvectordb-0.0.5.tar.gz 32.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for agentvectordb 0.0.5
File Interpreter ABI Platform
agentvectordb-0.0.5-py3-none-any.whl Python 3 none any Details

Total release size: 70.5 kB

Release files / agentvectordb-0.0.5.tar.gz

Download URL agentvectordb-0.0.5.tar.gz
Size 32.8 kB
Tags Source
SHA-256 checksum
How to use checksums
56ec451db09b12bca472a33b42c05a72c528f87a40d2dd9b9a1e02213b4150a2
BLAKE2b-256 checksum
How to use checksums
5c20a947b42e82c7960fc7b95ad377d981abbe7e39f4601a3324331295e9ca09
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / agentvectordb-0.0.5-py3-none-any.whl

Download URL agentvectordb-0.0.5-py3-none-any.whl
Size 37.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
eed32851a0acffaeaadb80262ef8d8574b69622435a0ac4b837f9bd8241b33e1
BLAKE2b-256 checksum
How to use checksums
349fb0ef01ed5f8d3a26caa2595838b15cf63dcb5555fcda0e600c8b55f2d211
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

0.0.5 This release

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page