Configuration Files
OpenViking uses two config files:| File | Purpose | Default Path |
|---|---|---|
ov.conf | SDK embedded mode + server config | ~/.openviking/ov.conf |
ovcli.conf | HTTP client and CLI connection to remote server | ~/.openviking/ovcli.conf |
When config files are at the default path, OpenViking loads them automatically — no additional setup needed.
Quick Start Configuration
Create~/.openviking/ov.conf:
Embedding Configuration
Embedding models convert text and multimodal content into vectors for semantic search.Dense Embedding
| Parameter | Type | Description |
|---|---|---|
max_concurrent | int | Maximum concurrent embedding requests (default: 10) |
provider | string | "volcengine", "openai", "vikingdb", or "jina" |
api_key | string | API key for authentication |
model | string | Model name |
dimension | int | Vector dimension (must match model output) |
input | string | Input type: "text" or "multimodal" |
batch_size | int | Batch size for embedding requests |
Volcengine (Doubao) Configuration
Volcengine (Doubao) Configuration
doubao-embedding-vision-250615(1024 dim, multimodal)doubao-embedding-250615(1024 dim, text only)
OpenAI Configuration
OpenAI Configuration
Jina AI Configuration
Jina AI Configuration
jina-embeddings-v5-text-small: 677M params, 1024 dim, max seq 32768jina-embeddings-v5-text-nano: 239M params, 768 dim, max seq 8192
Hybrid Embedding
Combine dense and sparse embeddings for better retrieval:VLM Configuration
Vision Language Models generate semantic abstracts (L0) and overviews (L1) for resources.| Parameter | Type | Description |
|---|---|---|
api_key | string | API key |
model | string | Model name |
api_base | string | API endpoint (optional) |
thinking | boolean | Enable thinking mode for VolcEngine models (default: false) |
max_concurrent | int | Maximum concurrent semantic LLM calls (default: 100) |
Storage Configuration
Configure file storage (AGFS) and vector database backends.AGFS Backend
| Parameter | Type | Description | Default |
|---|---|---|---|
mode | string | "http-client" or "binding-client" | "http-client" |
backend | string | "local", "s3", or "memory" | "local" |
url | string | AGFS service URL for http-client mode | "http://localhost:1833" |
timeout | float | Request timeout in seconds | 10.0 |
S3 Backend Configuration
S3 Backend Configuration
| Parameter | Description |
|---|---|
bucket | S3 bucket name |
region | AWS region (e.g., us-east-1, cn-beijing) |
access_key | S3 access key ID |
secret_key | S3 secret access key |
endpoint | Custom S3 endpoint for MinIO, LocalStack, etc. |
prefix | Optional key prefix for namespace isolation |
use_ssl | Enable HTTPS (default: true) |
use_path_style | Use PathStyle (MinIO, SeaweedFS) vs VirtualHostStyle (TOS) |
Vector Database Backend
| Parameter | Type | Description | Default |
|---|---|---|---|
backend | string | "local", "http", "volcengine", or "vikingdb" | "local" |
name | string | VectorDB collection name | "context" |
url | string | Remote service URL for http backend | null |
project_name | string | Project name | "default" |
dimension | int | Vector embedding dimension | 0 |
Volcengine VikingDB
Volcengine VikingDB
Server Configuration
When running OpenViking as an HTTP service, add aserver section:
| Field | Type | Description | Default |
|---|---|---|---|
host | string | Bind address | "0.0.0.0" |
port | int | Bind port | 1933 |
root_api_key | string | Root API key for multi-tenant auth (disabled if not set) | null |
cors_origins | array | Allowed CORS origins | ["*"] |
CLI Client Configuration
Create~/.openviking/ovcli.conf for the HTTP client and CLI:
| Field | Description | Default |
|---|---|---|
url | Server address | (required) |
api_key | API key for authentication | null |
agent_id | Agent identifier for isolation | null |
timeout | Request timeout in seconds | 60.0 |
output | Output format: "table" or "json" | "table" |
Advanced Configuration
Code Summary Mode
Control how code files are summarized:| Mode | Description |
|---|---|
"ast" | Extract AST skeleton (class names, method signatures) for files ≥100 lines (recommended) |
"llm" | Always use LLM for summarization (higher cost) |
"ast_llm" | Extract AST first, then pass to LLM (highest quality) |
Reranking
Reranking improves search result quality:Logging
Troubleshooting
API Key Error
API Key Error
Vector Dimension Mismatch
Vector Dimension Mismatch
dimension in config matches the model’s output dimension.VLM Timeout
VLM Timeout
- Check network connectivity
- Increase timeout in config
- Try a smaller model
Related Resources
Deployment
Server deployment and production setup
Authentication
API key setup and multi-tenant auth
Python SDK
Complete Python SDK reference
CLI Usage
Command-line interface guide
