apiVersion: apps/v1 kind: DaemonSet metadata: name: immich-machine-learning namespace: immich annotations: reloader.stakater.com/auto: "true" labels: app: immich-machine-learning spec: selector: matchLabels: app: immich-machine-learning template: metadata: labels: app: immich-machine-learning spec: automountServiceAccountToken: false containers: - name: immich-machine-learning image: ghcr.io/immich-app/immich-machine-learning:v2.1.0-openvino # {"$imagepolicy": "immich:immich-machine-learning"} imagePullPolicy: IfNotPresent resources: limits: memory: 8Gi requests: memory: 500Mi cpu: 500m env: - name: DB_HOSTNAME valueFrom: secretKeyRef: name: immich-db-app key: host optional: false - name: DB_DATABASE_NAME valueFrom: secretKeyRef: name: immich-db-app key: dbname optional: false - name: DB_USERNAME valueFrom: secretKeyRef: name: immich-db-app key: username optional: false - name: DB_PASSWORD valueFrom: secretKeyRef: name: immich-db-app key: password optional: false # Check this ENVs maybe it works also for other ML models - name: MACHINE_LEARNING_PRELOAD__CLIP value: ViT-B-32__openai - name: MACHINE_LEARNING_PRELOAD__FACIAL_RECOGNITION value: buffalo_l # May not be needed - name: MACHINE_LEARNING_EXECUTION_PROVIDERS value: "OpenVINOExecutionProvider,CPUExecutionProvider" envFrom: - configMapRef: name: immich optional: false livenessProbe: httpGet: path: /ping port: 3003 initialDelaySeconds: 60 readinessProbe: httpGet: path: /ping port: 3003 startupProbe: httpGet: path: /ping port: 3003 securityContext: privileged: true # for intel quick sync seccompProfile: type: "RuntimeDefault" volumeMounts: - name: immich-machine-learning mountPath: /cache nodeSelector: intel.feature.node.kubernetes.io/gpu: "true" volumes: - name: immich-machine-learning persistentVolumeClaim: claimName: immich-machine-learning