Skip to main content
The 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:
Prepare a reachable OpenViking service and a service-owner API key. In production, inject credentials through environment variables or a secret manager:
Imported documents are sent to the configured OpenViking service. Before processing personal, business, or other sensitive data, verify that the service location, access controls, and retention policy meet your requirements.

Example

When 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:
Call 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 to DATABASE_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.

Per-operation overrides

Constructor parameters define the defaults. These keyword arguments can override them for one ingestion or search operation.
Last modified on September 19, 2026