Files
AI_portal/dify-workflows/shrnuti-dokumentu.yml
Ondřej Glaser 48cef99257 Initial portal commit: landing + 9 AI-powered apps
Apps:
- dwg-rooms: extract room numbers from DWG/DXF
- dwg-counting: count symbols in PDF drawings (OpenCV template matching)
- contract-check: review PDF contracts against a checklist (Claude vision + Tesseract OCR fallback)
- email-drafter: bullet notes → polished Czech/English business emails
- invoice-extractor: PDF/image invoice → structured data → Excel
- translator: Czech-first translator across 19 languages with tone control
- vv-check: find inconsistent unit prices across VV sheets in one workbook
- vv-compare: diff original vs new VV files (changes / added / removed)
- feature-request: portal users submit ideas + sample files

Infrastructure:
- LiteLLM gateway with per-app virtual keys + budgets
- Langfuse observability
- Geist font, shared theme, cross-subdomain back link + theme sync via cookie/URL
- Caddy reverse proxy on *.klas.chat
2026-05-13 15:25:04 +02:00

171 lines
3.9 KiB
YAML

app:
description: 'Vlož text dokumentu, získáš stručné shrnutí v 5 bodech.'
icon: 📄
icon_background: '#E0F2FE'
mode: workflow
name: Shrnutí dokumentu
use_icon_as_answer_icon: false
kind: app
version: 0.4.0
workflow:
conversation_variables: []
environment_variables: []
features:
file_upload:
enabled: false
opening_statement: ''
retriever_resource:
enabled: false
sensitive_word_avoidance:
enabled: false
speech_to_text:
enabled: false
suggested_questions: []
suggested_questions_after_answer:
enabled: false
text_to_speech:
enabled: false
language: ''
voice: ''
graph:
edges:
- data:
isInIteration: false
isInLoop: false
sourceType: start
targetType: llm
id: start-to-llm
source: 'start_node'
sourceHandle: source
target: 'llm_node'
targetHandle: target
type: custom
zIndex: 0
- data:
isInIteration: false
isInLoop: false
sourceType: llm
targetType: end
id: llm-to-end
source: 'llm_node'
sourceHandle: source
target: 'end_node'
targetHandle: target
type: custom
zIndex: 0
nodes:
- data:
desc: ''
selected: false
title: Vstup
type: start
variables:
- label: Text dokumentu
max_length: 50000
options: []
required: true
type: paragraph
variable: dokument
- label: Styl shrnutí
max_length: 100
options:
- Stručné body (do 5)
- Detailní souhrn (1 odstavec)
- TL;DR (1 věta)
required: true
type: select
variable: styl
height: 130
id: 'start_node'
position:
x: 30
y: 200
positionAbsolute:
x: 30
y: 200
selected: false
sourcePosition: right
targetPosition: left
type: custom
width: 244
- data:
context:
enabled: false
variable_selector: []
desc: ''
model:
completion_params:
temperature: 0.3
mode: chat
name: gpt-5-mini
provider: langgenius/openai_api_compatible/openai_api_compatible
prompt_template:
- id: sys-prompt
role: system
text: |-
Jsi asistent, který vytváří stručná česká shrnutí.
Pravidla:
- Odpovídej VÝHRADNĚ česky.
- Drž se faktů z poskytnutého textu, nevymýšlej.
- Zachovej hlavní tezi, klíčová čísla, jména a termíny.
- Pokud je text příliš krátký na shrnutí, řekni to.
Styl výstupu zvolí uživatel — řiď se přesně tím, co vybral.
- id: user-prompt
role: user
text: |-
Styl: {{#start_node.styl#}}
Text k shrnutí:
---
{{#start_node.dokument#}}
---
selected: false
title: Shrnutí (LLM)
type: llm
variables: []
vision:
enabled: false
height: 130
id: 'llm_node'
position:
x: 350
y: 200
positionAbsolute:
x: 350
y: 200
selected: false
sourcePosition: right
targetPosition: left
type: custom
width: 244
- data:
desc: ''
outputs:
- value_selector:
- 'llm_node'
- text
value_type: string
variable: shrnuti
selected: false
title: Výstup
type: end
height: 90
id: 'end_node'
position:
x: 670
y: 200
positionAbsolute:
x: 670
y: 200
selected: false
sourcePosition: right
targetPosition: left
type: custom
width: 244
viewport:
x: 0
y: 0
zoom: 0.8