openviking backend delegates resource parsing, indexing, and retrieval to OpenViking, so VeADK does not need a local embedding model. Each index maps to viking://user/<openviking_user_id>/resources/<index>/ by default, where openviking_user_id is the owner/context the resources belong to; it defaults to default. This backend is available in VeADK 1.0.3 and later.
openviking_user_id identifies the OpenViking owner/context used to isolate resources and memory for different applications or tenants within the same OpenViking service. It is distinct from Runner.user_id, which identifies the end user.Dependencies
The OpenViking SDK is part of VeADK’s base dependencies:Example
backend_config is omitted, url, api_key, and openviking_user_id are read from the DATABASE_OPENVIKING_* environment variables, and index comes from KnowledgeBase(index=...) or app_name:
close() to release the OpenViking client held by the backend when the knowledge base is no longer needed:
Parameters
When
openviking_user_id is not configured, VeADK checks DATABASE_OPENVIKING_USER_ID and then OPENVIKING_USER_ID, falling back to default. user_id remains available as a compatibility alias and is equivalent to openviking_user_id.
Environment variables
The parameters map toDATABASE_OPENVIKING_URL, DATABASE_OPENVIKING_API_KEY, DATABASE_OPENVIKING_USER_ID, DATABASE_OPENVIKING_ACCOUNT, DATABASE_OPENVIKING_USER, DATABASE_OPENVIKING_ACTOR_PEER_ID, DATABASE_OPENVIKING_TARGET_URI, DATABASE_OPENVIKING_WAIT, DATABASE_OPENVIKING_IMPORT_TIMEOUT, DATABASE_OPENVIKING_HYDRATE_RESULTS, DATABASE_OPENVIKING_READ_LIMIT, DATABASE_OPENVIKING_SCORE_THRESHOLD, and DATABASE_OPENVIKING_USE_CONTEXT_SEARCH. The URL, API key, user ID, account, user, actor peer ID, and target URI also accept the corresponding OPENVIKING_* variables.