181 lines
4.9 KiB
YAML
181 lines
4.9 KiB
YAML
# Full annotated pipeline example for implemented Narratio config fields.
|
|
# Values are safe placeholders and must be adapted per environment.
|
|
|
|
workspace:
|
|
# Optional: defaults to /var/lib/narratio.
|
|
root: /var/lib/narratio/workspace
|
|
# Optional: remove run-scoped workdir after successful archive commit.
|
|
cleanup_after_archive: false
|
|
|
|
# Optional: local secret file loader (directory of ENV_VAR_NAME files).
|
|
# secrets:
|
|
# env_dir: ./secrets
|
|
|
|
storage:
|
|
# Optional storage backend selector; use "s3" for archive + S3 audio workflows.
|
|
backend: s3
|
|
# Compatibility fields retained in schema.
|
|
bucket: ""
|
|
prefix: ""
|
|
s3:
|
|
# Required when using S3 audio or S3 archive uploads.
|
|
bucket: my-dnd-archive
|
|
# Optional; defaults to "dnd".
|
|
root_prefix: dnd
|
|
# Optional region/endpoint settings.
|
|
region: us-east-1
|
|
endpoint: ""
|
|
force_path_style: false
|
|
# Optional; defaults shown explicitly.
|
|
access_key_id_env: OBJECT_STORAGE_KEY_ID
|
|
secret_access_key_env: OBJECT_STORAGE_KEY
|
|
|
|
spool:
|
|
# Optional; defaults to /var/spool/narratio.
|
|
root: /var/spool/narratio
|
|
# Optional cleanup of run-scoped spool audio after successful archive commit.
|
|
delete_audio_after_archive: false
|
|
|
|
archive:
|
|
# Optional booleans; defaults are true.
|
|
enabled: true
|
|
upload_run: true
|
|
# Optional promotion rules; sources use Narratio artifact source IDs.
|
|
promote_artifacts:
|
|
- source: narratio.transcript.trimmed
|
|
dest: transcripts/trimmed.json
|
|
required: true
|
|
- source: narratio.artifact.session_recap
|
|
dest: artifacts/session_recap.md
|
|
required: true
|
|
- source: narratio.artifact.player_handout
|
|
dest: artifacts/player_handout.md
|
|
required: false
|
|
|
|
whisperx:
|
|
# Required.
|
|
transcribe_url: "https://transcription.example.com/transcribe"
|
|
# Optional overrides; defaults shown explicitly.
|
|
language: en
|
|
timeout: 30m
|
|
retries: 3
|
|
retry_delay: 2s
|
|
concurrency: 2
|
|
|
|
seriatim:
|
|
# Optional overrides; defaults shown explicitly.
|
|
binary: seriatim
|
|
timeout: 10m
|
|
output_schema: seriatim-intermediate
|
|
coalesce_gap: 3.0
|
|
report: true
|
|
env:
|
|
# Optional advanced tuning; set only when needed.
|
|
overlap_word_run_gap: 1.0
|
|
overlap_word_run_reorder_window: 1.0
|
|
backchannel_max_duration: 2.0
|
|
filler_max_duration: 1.25
|
|
|
|
audita:
|
|
# Optional overrides; defaults shown explicitly where applicable.
|
|
binary: audita
|
|
timeout: 3h
|
|
llm_api_key_env: AUDITA_LLM_API_KEY
|
|
modules: [glossary, homophones, spoken_word, grammar]
|
|
base_url: ""
|
|
model: ""
|
|
total_llm_concurrency: 2
|
|
proposal_llm_concurrency: 1
|
|
validation_model: ""
|
|
validation_llm_concurrency: 1
|
|
transcript_description: ""
|
|
config_path: /usr/local/etc/audita/config.yml
|
|
output_schema: audita-v1
|
|
work_dir_retention: auto
|
|
report: true
|
|
|
|
normalize:
|
|
# Optional; defaults shown explicitly.
|
|
output_path: transcripts/normalized.json
|
|
output_schema: seriatim-intermediate
|
|
report: true
|
|
|
|
trim:
|
|
# Keep disabled unless bounds prompt integration is configured.
|
|
enabled: false
|
|
output_path: transcripts/trimmed.json
|
|
bounds:
|
|
prompt_id: dnd.session_bounds
|
|
profile_id: local-fast
|
|
transcript_input_name: transcript
|
|
output_path: reports/session_bounds.json
|
|
timeout: 10m
|
|
render_debug: false
|
|
render_output_path: reports/session_bounds.render.json
|
|
seriatim:
|
|
report: false
|
|
|
|
scriptorium:
|
|
binary: scriptorium
|
|
config_path: /usr/local/etc/scriptorium/config.yml
|
|
timeout: 10m
|
|
render_debug: false
|
|
artifacts:
|
|
# Configured artifact keys map to source IDs narratio.artifact.<key>.
|
|
session_recap:
|
|
enabled: true
|
|
prompt_id: dnd.session_recap
|
|
profile_id: local-fast
|
|
output_path: artifacts/session_recap.md
|
|
timeout: 10m
|
|
inputs:
|
|
transcript:
|
|
source: narratio.transcript.trimmed
|
|
required: true
|
|
previous_recap:
|
|
source: narratio.previous_session.artifact.session_recap
|
|
required: false
|
|
vars:
|
|
session_id: true
|
|
session_date: true
|
|
campaign_name: true
|
|
previous_session_id: true
|
|
output_kind: session_recap
|
|
|
|
# Example dependent artifact:
|
|
# - depends_on entries use artifact keys.
|
|
# - narratio.artifact.<key> sources require matching depends_on membership.
|
|
player_handout:
|
|
enabled: true
|
|
depends_on:
|
|
- session_recap
|
|
prompt_id: dnd.player_handout
|
|
profile_id: local-fast
|
|
output_path: artifacts/player_handout.md
|
|
timeout: 10m
|
|
inputs:
|
|
recap:
|
|
source: narratio.artifact.session_recap
|
|
required: true
|
|
transcript:
|
|
source: narratio.transcript.trimmed
|
|
required: true
|
|
vars:
|
|
session_id: true
|
|
campaign_name: true
|
|
output_kind: player_handout
|
|
|
|
analyzer:
|
|
# Optional adapter settings.
|
|
binary_path: ""
|
|
timeout: 2m
|
|
artifacts:
|
|
output_dir: ""
|
|
types: []
|
|
|
|
notification:
|
|
# Optional notification settings.
|
|
backend: ""
|
|
recipient: ""
|
|
timeout: 30s
|