Add support for Paperless AI API token and environment variables #10
@ -1,7 +1,7 @@
|
|||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
name: paperless-ai
|
name: paperless-ai
|
||||||
description: Ein Helm Chart für Paperless AI, basierend auf der Docker Compose Konfiguration.
|
description: Ein Helm Chart für Paperless AI, basierend auf der Docker Compose Konfiguration.
|
||||||
version: 0.5.0
|
version: 0.6.0
|
||||||
appVersion: 3.0.7
|
appVersion: 3.0.7
|
||||||
keywords:
|
keywords:
|
||||||
- paperless-ai
|
- paperless-ai
|
||||||
|
@ -64,4 +64,21 @@ Erstellt den Namen des zu verwendenden Service Accounts.
|
|||||||
{{- else -}}
|
{{- else -}}
|
||||||
{{ default "default" .Values.serviceAccount.name }}
|
{{ default "default" .Values.serviceAccount.name }}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Generiert den Inhalt der .env-Datei aus den Werten in .Values.secretEnv
|
||||||
|
*/}}
|
||||||
|
{{- define "generateEnv" -}}
|
||||||
|
{{- if .Values.paperless.apiUrl }}PAPERLESS_API_URL={{ .Values.paperless.apiUrl }}{{ "\n" }}{{- end }}
|
||||||
|
{{- if .Values.ai.provider }}AI_PROVIDER={{ .Values.ai.provider }}{{ "\n" }}{{- end }}
|
||||||
|
{{- if .Values.ai.addProcessedTag }}ADD_AI_PROCESSED_TAG={{ .Values.ai.addProcessedTag }}{{ "\n" }}{{- end }}
|
||||||
|
{{- if .Values.ai.processedTagName }}AI_PROCESSED_TAG_NAME={{ .Values.ai.processedTagName }}{{ "\n" }}{{- end }}
|
||||||
|
{{- if .Values.prompt.useTags }}USE_PROMPT_TAGS={{ .Values.prompt.useTags }}{{ "\n" }}{{- end }}
|
||||||
|
{{- if .Values.prompt.tags }}PROMPT_TAGS={{ .Values.prompt.tags }}{{ "\n" }}{{- end }}
|
||||||
|
{{- if .Values.scanInterval }}SCAN_INTERVAL={{ .Values.scanInterval }}{{ "\n" }}{{- end }}
|
||||||
|
{{- if .Values.systemPrompt }}SYSTEM_PROMPT=`{{ .Values.systemPrompt }}`{{ "\n" }}{{- end }}
|
||||||
|
{{- if .Values.processPredefinedDocuments }}PROCESS_PREDEFINED_DOCUMENTS={{ .Values.processPredefinedDocuments }}{{ "\n" }}{{- end }}
|
||||||
|
TAGS={{ .Values.tags }}{{ "\n" }}
|
||||||
|
{{- if .Values.openAi.model }}OPENAI_MODEL={{ .Values.openAi.model }}{{ "\n" }}{{- end }}
|
||||||
|
{{- end }}
|
11
charts/paperless-ai/templates/paperlessApiSecret.yaml
Normal file
11
charts/paperless-ai/templates/paperlessApiSecret.yaml
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
{{- if .Values.paperless.apiToken }}
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Secret
|
||||||
|
metadata:
|
||||||
|
name: {{ include "paperless-ai.fullname" . }}
|
||||||
|
labels:
|
||||||
|
{{- include "paperless-ai.labels" . | nindent 4 }}
|
||||||
|
type: Opaque
|
||||||
|
data:
|
||||||
|
PAPERLESS_API_TOKEN: {{ .Values.paperless.apiToken | b64enc | quote }}
|
||||||
|
{{- end }}
|
@ -1,3 +1,40 @@
|
|||||||
|
# paperless-ai config
|
||||||
|
paperless:
|
||||||
|
apiUrl: "http://paperless-ngx:8000"
|
||||||
|
apiToken:
|
||||||
|
|
||||||
|
ai:
|
||||||
|
provider: "openai"
|
||||||
|
addProcessedTag: yes
|
||||||
|
processedTagName: ai-processed
|
||||||
|
|
||||||
|
prompt:
|
||||||
|
useTags: yes
|
||||||
|
tags: Rechnung,Kontoauszug,Vertrag,Arbeitgeber
|
||||||
|
|
||||||
|
openAi:
|
||||||
|
apiKey:
|
||||||
|
model: "gpt-4o-mini"
|
||||||
|
|
||||||
|
ollama:
|
||||||
|
apiUrl: ""
|
||||||
|
model: ""
|
||||||
|
|
||||||
|
scanInterval: "*/30 * * * *"
|
||||||
|
|
||||||
|
systemPrompt: |-
|
||||||
|
Return the result EXCLUSIVELY as a JSON object. The Tags and Title MUST be in the language that is used in the document.:
|
||||||
|
|
||||||
|
{
|
||||||
|
"title": "xxxxx",
|
||||||
|
"correspondent": "xxxxxxxx",
|
||||||
|
"tags": ["Tag1", "Tag2", "Tag3", "Tag4"],
|
||||||
|
"document_date": "YYYY-MM-DD",
|
||||||
|
"language": "en/de/es/..."
|
||||||
|
}
|
||||||
|
processPredefinedDocuments: "no"
|
||||||
|
tags: "indexed,indexed2"
|
||||||
|
|
||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
|
|
||||||
image:
|
image:
|
||||||
@ -28,13 +65,13 @@ persistence:
|
|||||||
size: 1Gi
|
size: 1Gi
|
||||||
|
|
||||||
livenessProbe:
|
livenessProbe:
|
||||||
initialDelaySeconds: 60
|
initialDelaySeconds: 30
|
||||||
httpGet:
|
httpGet:
|
||||||
path: /
|
path: /
|
||||||
# path: /health
|
# path: /health
|
||||||
port: http
|
port: http
|
||||||
readinessProbe:
|
readinessProbe:
|
||||||
initialDelaySeconds: 60
|
initialDelaySeconds: 30
|
||||||
httpGet:
|
httpGet:
|
||||||
path: /
|
path: /
|
||||||
# path: /health
|
# path: /health
|
||||||
@ -63,11 +100,11 @@ autoscaling:
|
|||||||
# Ressourcenanforderungen und -limits für den Container.
|
# Ressourcenanforderungen und -limits für den Container.
|
||||||
resources:
|
resources:
|
||||||
limits:
|
limits:
|
||||||
cpu: 100m
|
cpu: 300m
|
||||||
memory: 128Mi
|
memory: 640Mi
|
||||||
requests:
|
requests:
|
||||||
cpu: 100m
|
cpu: 100m
|
||||||
memory: 128Mi
|
memory: 256Mi
|
||||||
|
|
||||||
# Node-Selector für die Pod-Platzierung.
|
# Node-Selector für die Pod-Platzierung.
|
||||||
nodeSelector: {}
|
nodeSelector: {}
|
||||||
|
Reference in New Issue
Block a user