Configuration
highvolt-server configuration is fetched from JSONAir at startup and refreshed periodically. The configuration is a single JSON document.
core
api_key
string
—
Internal API key (reserved)
mime_types.image
[]string
—
MIME types routed to the image LLM path
mime_types.pdf
[]string
—
MIME types routed to the PDF processor
mime_types.office
[]string
—
MIME types routed to the Office processor
mime_types.archive
[]string
—
MIME types routed to the archive processor
mime_types.text
[]string
—
MIME types routed to the text LLM path
minimum_image_size
int
5128
Minimum decoded image size (bytes); smaller images are skipped
max_pdf_pages
int
50
Maximum PDF pages to analyze per document
max_workers
int
2
Number of parallel worker goroutines
max_queue_size
int
50
Submission queue depth; excess submissions receive 503
queue_directory
string
—
Base directory for temp work files
temp_file_mode
string
"0600"
Octal file permissions for temp files
max_archive_size
int64
524288000
Max total extracted bytes from an archive (500 MB)
archive_extract_timeout
int
300
Max seconds for archive extraction (5 minutes)
max_body_size
int64
1073741824
Max HTTP request body size (1 GB)
export_command_timeout
int
120
Max seconds for PDF/Office conversion commands
http
listen
string
—
TCP listen address (e.g. :8443)
tls
bool
false
Enable TLS
cert
string
—
Path to TLS certificate (required if tls: true)
key
string
—
Path to TLS private key (required if tls: true)
mode
string
"production"
Gin mode: production, debug, or test. In production, HTTP request logging is disabled.
syslog
host
string
"local"
Syslog host, or "local" for stderr/stdout
proto
string
"tcp"
Transport protocol: tcp or udp
opensearch
url
string
—
OpenSearch base URL
username
string
—
Basic auth username
password
string
—
Basic auth password
index
string
—
Index name for documents
tls_skip_verify
bool
false
Disable TLS cert verification (not for production)
llm
url
string
—
LLM base URL (OpenAI-compatible). The path /chat/completions is appended automatically.
api_key
string
—
Bearer token for LLM API authentication
model
string
—
Model name (e.g. gpt-4o, llava:latest)
timeout
int
120
Request timeout in seconds
system_prompt
string
—
System prompt sent with every LLM request
user_prompt
string
—
User prompt sent with every LLM request
LLM prompt design
The LLM is expected to return a JSON object with this schema:
Your system_prompt should instruct the model to always respond with valid JSON in this format. Example:
export_directories
work
string
Base directory for temporary working files
archive
string
Directory for extracted archive content
Both directories must be writable by the process user.
export_commands
pdf
string
Command to convert PDF to PNG images. Supports %INFILE%, %WORKDIR%, %OUTFILE%, %RANGE% placeholders.
office
string
Command to convert Office documents to PDF. Supports %INFILE%, %WORKDIR%, %OUTFILE% placeholders.
haproxy
enabled
bool
false
Enable HAProxy TCP health agent
port
int
—
TCP port for the HAProxy agent (required if enabled: true)
Last updated