Package com.tnsai.annotations
Annotation Interface VectorMemory
Configures vector memory for an Agent class.
When applied to an Agent class, this annotation enables automatic VectorMemoryStore configuration with the specified provider and settings.
Supported Providers
inmemory— bundled cosine store (default)qdrant/pgvector— require aVectorStoreProvideron the classpath; unknown names fail agent initialization instead of silently using TF-IDFmilvus— not shipped; register your own provider or useinmemory
Usage Examples
Basic usage (in-memory):
@VectorMemory(collection = "agent-memories")
public class SmartAgent extends Agent { }
With Qdrant:
@VectorMemory(
provider = "qdrant",
collection = "agent-memories",
host = "localhost",
port = 6334
)
public class SmartAgent extends Agent { }
With environment-based configuration:
@VectorMemory(
provider = "qdrant",
collection = "agent-memories",
hostEnv = "QDRANT_HOST",
portEnv = "QDRANT_PORT"
)
public class SmartAgent extends Agent { }
Embedding Configuration
The embedding service is configured via embeddingProvider() and
embeddingModel(). Supported embedding providers:
openai- OpenAI text-embedding modelsollama- Local Ollama embedding models
- Author:
- TnsAI Team
- See Also:
-
Required Element Summary
Required ElementsModifier and TypeRequired ElementDescriptionThe collection/table name for storing vectors. -
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionintCircuit breaker failure threshold.intThe embedding dimension.Environment variable name for the embedding API key.The embedding model to use.The embedding provider to use.The host for the vector store (for remote providers).Environment variable name for the host.intMaximum retry attempts for failed operations.intThe port for the vector store (for remote providers).Environment variable name for the port.The vector store provider to use.booleanWhether to enable resilience features (retry + circuit breaker).
-
Element Details
-
provider
String providerThe vector store provider to use.Supported values:
inmemory(bundled).qdrant,pgvectorand any other name require a registeredVectorStoreProvider. Missing SPI fails loudly.- Returns:
- provider name (default: inmemory)
- Default:
"inmemory"
-
collection
String collectionThe collection/table name for storing vectors.- Returns:
- collection name (required)
-
dimension
int dimensionThe embedding dimension.Common values:
- 1536 - OpenAI text-embedding-3-small
- 3072 - OpenAI text-embedding-3-large
- 768 - nomic-embed-text (Ollama)
- Returns:
- dimension (default: 1536 for OpenAI)
- Default:
1536
-
host
String hostThe host for the vector store (for remote providers).- Returns:
- host address (default: localhost)
- Default:
"localhost"
-
port
int portThe port for the vector store (for remote providers).Default ports:
- Qdrant: 6334
- Milvus: 19530
- PostgreSQL: 5432
- Returns:
- port number (default: 6334 for Qdrant)
- Default:
6334
-
hostEnv
String hostEnvEnvironment variable name for the host.If set, overrides
host().- Returns:
- environment variable name
- Default:
""
-
portEnv
String portEnvEnvironment variable name for the port.If set, overrides
port().- Returns:
- environment variable name
- Default:
""
-
embeddingProvider
String embeddingProviderThe embedding provider to use.Supported values:
openai,ollama- Returns:
- embedding provider name (default: openai)
- Default:
"openai"
-
embeddingModel
String embeddingModelThe embedding model to use.Examples:
- OpenAI: text-embedding-3-small, text-embedding-3-large
- Ollama: nomic-embed-text, mxbai-embed-large
- Returns:
- model name (default: text-embedding-3-small)
- Default:
"text-embedding-3-small"
-
embeddingApiKeyEnv
String embeddingApiKeyEnvEnvironment variable name for the embedding API key.Default: OPENAI_API_KEY for OpenAI provider.
- Returns:
- environment variable name for API key
- Default:
"OPENAI_API_KEY"
-
resilient
boolean resilientWhether to enable resilience features (retry + circuit breaker).- Returns:
- true to enable resilience (default: true)
- Default:
true
-
maxRetries
int maxRetriesMaximum retry attempts for failed operations.- Returns:
- max retries (default: 3)
- Default:
3
-
circuitBreakerThreshold
int circuitBreakerThresholdCircuit breaker failure threshold.Number of consecutive failures before opening the circuit.
- Returns:
- failure threshold (default: 5)
- Default:
5
-