File size: 1,684 Bytes
4b1daed
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
# AmaniQuery Configuration
# Copy this file to config.yaml and customize as needed

version: "1.0.0"
environment: "development"

server:
  grpc_port: 9090
  http_port: 8080
  graceful_timeout: 30s
  max_connections: 1000

vector_store:
  type: qdrant
  host: localhost
  port: 6334
  # api_key: set via QDRANT_API_KEY env var
  collection: amaniquery
  dimension: 1536
  distance: Cosine

cache:
  redis_url: redis://localhost:6379
  local_size: 10000
  ttl: 1h
  max_retries: 3
  pool_size: 10

# LLM Configuration with Multi-Provider Fallback
# Fallback order: Gemini → Moonshot → Ollama → OpenAI → Anthropic
# Set API keys via environment variables:
#   GEMINI_API_KEY or GOOGLE_API_KEY
#   MOONSHOT_API_KEY
#   OLLAMA_BASE_URL (for local Ollama, default: http://localhost:11434)
#   OPENAI_API_KEY
#   ANTHROPIC_API_KEY
llm:
  default_model: gemini-1.5-flash # Used when provider doesn't specify model
  max_tokens: 4096
  temperature: 0.7
  timeout: 60s
  max_retries: 3
  enable_fallback: true # Automatically try next provider on failure
  ollama_base_url: http://localhost:11434 # For local Ollama

embedding:
  provider: openai # openai for text-embedding-3-small
  # api_key: falls back to OPENAI_API_KEY
  model: text-embedding-3-small
  dimension: 1536
  batch_size: 100

observability:
  tracing_enabled: true
  tracing_endpoint: localhost:4317
  metrics_enabled: true
  metrics_port: 9091
  log_level: info # debug, info, warn, error
  log_format: json # json, console

security:
  # jwt_secret: set via JWT_SECRET env var
  jwt_issuer: amaniquery
  enable_mtls: false
  # cert_file: /path/to/cert.pem
  # key_file: /path/to/key.pem
  # ca_file: /path/to/ca.pem