kubernetes/apps/ai/memini/app/helmrelease.yaml
1
---
2
# yaml-language-server: $schema=https://k8s-schemas.home-operations.com/helm.toolkit.fluxcd.io/helmrelease_v2.json
3
apiVersion: helm.toolkit.fluxcd.io/v2
4
kind: HelmRelease
5
metadata:
6
name: memini
7
spec:
8
chartRef:
9
kind: OCIRepository
10
name: memini
11
interval: 30m
12
values:
13
controllers:
14
main:
15
type: deployment
16
replicas: 1
17
annotations:
18
reloader.stakater.com/auto: "true"
19
pod:
20
securityContext:
21
fsGroup: 1000
22
fsGroupChangePolicy: OnRootMismatch
23
runAsGroup: 1000
24
runAsNonRoot: true
25
runAsUser: 1000
26
containers:
27
main:
28
env:
29
MEMINI_API_KEY:
30
valueFrom:
31
secretKeyRef:
32
name: memini-secret
33
key: MEMINI_API_KEY
34
MEMINI_BACKEND: sqlite
35
MEMINI_DEFAULT_NAMESPACE: default
36
MEMINI_CLIENT_DEFAULTS: '{"inject_briefing_pinned":10,"inject_briefing_max_tok":3000,"recall_limit":5,"inject_recall_max_tok":400}'
37
MEMINI_DEDUP_SIMILARITY: "0.80"
38
MEMINI_DEDUP_TIERS: semantic,procedural
39
MEMINI_DEDUP_LLM_MERGE: "true"
40
MEMINI_SHORT_TERM_CAP: "300"
41
MEMINI_DEMOTE_AFTER: 1440h
42
MEMINI_EMBED_BASE_URL: http://bge-embedding-m3.ai.svc.cluster.local:8080/v1
43
MEMINI_EMBED_MODEL: bge-m3
44
MEMINI_EMBED_DIMS: "1024"
45
MEMINI_EMBED_MAX_CONCURRENCY: "2"
46
MEMINI_LOG_FORMAT: json
47
MEMINI_LLM_API: openai
48
MEMINI_LLM_BASE_URL: http://litellm.ai.svc.cluster.local:4000/v1
49
MEMINI_LLM_MODEL: opencode-go/glm-5.2
50
MEMINI_LLM_API_KEY:
51
valueFrom:
52
secretKeyRef:
53
name: memini-secret
54
key: LITELLM_API_KEY
55
MEMINI_TOMBSTONE_TTL: 720h
56
MEMINI_WRITE_EMBED_TIMEOUT: "30s"
57
MEMINI_RECALL_EMBED_TIMEOUT: "10s"
58
MEMINI_RERANK: http://bge-reranker-v2-m3.ai.svc.cluster.local:8080/v1
59
MEMINI_RERANK_MODEL: bge-reranker-v2-m3
60
MEMINI_RERANK_POOL: "10"
61
MEMINI_RERANK_MAX_DOC_CHARS: "1024"
62
MEMINI_RERANK_MAX_BATCH_CHARS: "48000"
63
MEMINI_RERANK_TIMEOUT: "10s"
64
MEMINI_RERANK_MIN_SCORE: "0"
65
resources:
66
requests:
67
cpu: 25m
68
memory: 128Mi
69
limits:
70
memory: 512Mi
71
securityContext:
72
allowPrivilegeEscalation: false
73
readOnlyRootFilesystem: true
74
capabilities:
75
drop:
76
- ALL
77
fsck:
78
enabled: true
79
cronjob:
80
schedule: "0 5 * * *"
81
containers:
82
fsck:
83
env:
84
MEMINI_API_KEY:
85
valueFrom:
86
secretKeyRef:
87
name: memini-secret
88
key: MEMINI_API_KEY
89
persistence:
90
data:
91
existingClaim: memini
92
route:
93
ui:
94
enabled: true
95
annotations:
96
gatus.home-operations.com/enabled: "false"
97
parentRefs:
98
- name: envoy-internal
99
namespace: network
100
hostnames:
101
- memini.janpuc.com
102
serviceMonitor:
103
main:
104
enabled: true
105
grafanaDashboards:
106
enabled: true
107
folder: ai