Prepare the D&D processing configuration sprint
This commit is contained in:
52
assets/configs/audita/config.yml
Normal file
52
assets/configs/audita/config.yml
Normal file
@@ -0,0 +1,52 @@
|
||||
# Ansible managed
|
||||
version: 1
|
||||
|
||||
pipeline:
|
||||
modules: ['glossary', 'homophones', 'glossary', 'spoken_word', 'grammar']
|
||||
|
||||
output:
|
||||
schema: audita-v1
|
||||
|
||||
llm:
|
||||
proposal:
|
||||
base_url: https://inference.ai.rakestrawhome.com/v1
|
||||
model: google/gemma-4-31b-it
|
||||
api_key_env: AUDITA_LLM_API_KEY
|
||||
timeout: 900s
|
||||
max_retries: 3
|
||||
|
||||
validation:
|
||||
base_url: https://inference.ai.rakestrawhome.com/v1
|
||||
model: google/gemma-4-31b-it
|
||||
api_key_env: AUDITA_VALIDATION_LLM_API_KEY
|
||||
timeout: 900s
|
||||
max_retries: 3
|
||||
|
||||
concurrency:
|
||||
total_llm: 4
|
||||
proposal_llm: 4
|
||||
validation_llm: 4
|
||||
|
||||
chunking:
|
||||
target_sections: 8
|
||||
max_section_tokens: 6144
|
||||
min_section_tokens: 2048
|
||||
|
||||
normalization:
|
||||
max_segment_gap: 3s
|
||||
ellipsis_gap: 3s
|
||||
max_segment_duration: 240s
|
||||
max_segment_tokens: 2048
|
||||
|
||||
thresholds:
|
||||
glossary: 0.8
|
||||
homophones: 0.8
|
||||
spoken_word: 0.8
|
||||
grammar: 0.8
|
||||
|
||||
context:
|
||||
description: "The following transcript was recorded during a Dungeons & Dragons game session. It may contain some unrelaed pre-session or post-session banter, in addition to actual D&D gameplay."
|
||||
|
||||
diagnostics:
|
||||
work_dir: /tmp/audita
|
||||
retention: auto
|
||||
160
assets/configs/narratio/pipeline.yml
Normal file
160
assets/configs/narratio/pipeline.yml
Normal file
@@ -0,0 +1,160 @@
|
||||
workspace:
|
||||
root: /var/lib/narratio
|
||||
cleanup_after_publish: true
|
||||
|
||||
secrets:
|
||||
env_dir: /usr/local/etc/narratio/secrets
|
||||
|
||||
campaigns:
|
||||
root: /usr/local/etc/narratio/campaigns
|
||||
default_campaign_id: dilfs
|
||||
|
||||
storage:
|
||||
backend: s3
|
||||
s3:
|
||||
endpoint: "https://s3.us-east-005.backblazeb2.com"
|
||||
bucket: "rakestraw-assets"
|
||||
root_prefix: "dnd"
|
||||
region: "us-east-1"
|
||||
force_path_style: True
|
||||
access_key_id_env: OBJECT_STORAGE_KEY_ID
|
||||
secret_access_key_env: OBJECT_STORAGE_KEY
|
||||
|
||||
whisperx:
|
||||
transcribe_url: https://transcription.ai.rakestrawhome.com/transcribe
|
||||
|
||||
publish:
|
||||
enabled: true
|
||||
upload_run: true
|
||||
outputs:
|
||||
- source: narratio.transcript.final
|
||||
required: true
|
||||
- source: narratio.transcript.final_trimmed
|
||||
required: true
|
||||
- source: narratio.transcript.final_markdown
|
||||
required: true
|
||||
- source: narratio.transcript.final_trimmed_markdown
|
||||
required: true
|
||||
- source: narratio.artifact.session_recap
|
||||
dest: artifacts/session_recap.md
|
||||
required: true
|
||||
- source: narratio.artifact.hostile_rumors
|
||||
dest: artifacts/hostile_rumors.md
|
||||
required: true
|
||||
- source: narratio.artifact.deranged_rumors
|
||||
dest: artifacts/deranged_rumors.md
|
||||
required: false
|
||||
|
||||
scriptorium:
|
||||
binary: scriptorium
|
||||
config_path: /usr/local/etc/scriptorium/config.yml
|
||||
timeout: 10m
|
||||
render_debug: false
|
||||
artifacts:
|
||||
|
||||
session_recap:
|
||||
enabled: true
|
||||
prompt_id: dnd.session_recap
|
||||
profile_id: claude-fable-latest
|
||||
output_path: artifacts/session_recap.md
|
||||
timeout: 10m
|
||||
inputs:
|
||||
transcript:
|
||||
source: narratio.transcript.final_trimmed
|
||||
required: true
|
||||
players:
|
||||
source: narratio.input.players
|
||||
required: true
|
||||
party:
|
||||
source: narratio.input.party
|
||||
required: true
|
||||
# recap:
|
||||
# source: narratio.previous_session.artifact.session_recap
|
||||
# required: false
|
||||
|
||||
scene_map:
|
||||
enabled: false
|
||||
prompt_id: dnd.scene_map
|
||||
profile_id: claude-haiku-latest
|
||||
output_path: artifacts/scene_map.json
|
||||
timeout: 10m
|
||||
inputs:
|
||||
transcript:
|
||||
source: narratio.transcript.final_trimmed
|
||||
required: true
|
||||
players:
|
||||
source: narratio.input.players
|
||||
required: true
|
||||
party:
|
||||
source: narratio.input.party
|
||||
required: true
|
||||
|
||||
character_meta_analysis_alan:
|
||||
enabled: false
|
||||
prompt_id: dnd.character_meta_analysis
|
||||
profile_id: claude-fable-latest
|
||||
output_path: artifacts/character_meta_analysis_alan.md
|
||||
timeout: 10m
|
||||
inputs:
|
||||
transcript:
|
||||
source: narratio.transcript.final_trimmed
|
||||
required: true
|
||||
players:
|
||||
source: narratio.input.players
|
||||
required: true
|
||||
party:
|
||||
source: narratio.input.party
|
||||
required: true
|
||||
recap:
|
||||
source: narratio.previous_session.artifact.session_recap
|
||||
required: false
|
||||
vars:
|
||||
character_name: "Alan"
|
||||
character_class: "Druid"
|
||||
|
||||
character_meta_analysis_hrank:
|
||||
enabled: false
|
||||
prompt_id: dnd.character_meta_analysis
|
||||
profile_id: claude-fable-latest
|
||||
output_path: artifacts/character_meta_analysis_hrank.md
|
||||
timeout: 10m
|
||||
inputs:
|
||||
transcript:
|
||||
source: narratio.transcript.final_trimmed
|
||||
required: true
|
||||
players:
|
||||
source: narratio.input.players
|
||||
required: true
|
||||
party:
|
||||
source: narratio.input.party
|
||||
required: true
|
||||
recap:
|
||||
source: narratio.previous_session.artifact.session_recap
|
||||
required: false
|
||||
vars:
|
||||
character_name: "Hrank"
|
||||
character_class: "Cleric"
|
||||
|
||||
hostile_rumors:
|
||||
enabled: true
|
||||
prompt_id: dnd.hostile_rumors
|
||||
output_path: artifacts/hostile_rumors.md
|
||||
timeout: 10m
|
||||
depends_on:
|
||||
- session_recap
|
||||
inputs:
|
||||
recap:
|
||||
source: narratio.artifact.session_recap
|
||||
required: true
|
||||
|
||||
deranged_rumors:
|
||||
enabled: true
|
||||
prompt_id: dnd.deranged_rumors
|
||||
output_path: artifacts/deranged_rumors.md
|
||||
timeout: 10m
|
||||
depends_on:
|
||||
- session_recap
|
||||
inputs:
|
||||
recap:
|
||||
source: narratio.artifact.session_recap
|
||||
required: true
|
||||
154
assets/configs/notarius/config.yml
Normal file
154
assets/configs/notarius/config.yml
Normal file
@@ -0,0 +1,154 @@
|
||||
version: 4
|
||||
|
||||
output:
|
||||
directory: /var/lib/notarius/output
|
||||
|
||||
debug:
|
||||
directory: /var/lib/notarius/debug
|
||||
|
||||
cache:
|
||||
chunk_plans:
|
||||
mode: auto
|
||||
directory: /var/lib/notarius/cache/chunk_plans
|
||||
checkpoints:
|
||||
enabled: true
|
||||
directory: /var/lib/notarius/cache/checkpoints
|
||||
|
||||
pipelines:
|
||||
dnd-session:
|
||||
llm_profile: dnd-extraction
|
||||
# llm_profile: rakestrawhome-gemma-4-31b
|
||||
input: seriatim
|
||||
# Stable campaign context is shared by every module that accepts these slots.
|
||||
references:
|
||||
party: /usr/local/etc/notarius/campaigns/centaurs/party.yml
|
||||
glossary: /usr/local/etc/notarius/campaigns/centaurs/glossary.yml
|
||||
chunk:
|
||||
module: dnd/scenes
|
||||
retries: 2
|
||||
output:
|
||||
module: json
|
||||
options:
|
||||
include_chunk_map: true
|
||||
evidence_context:
|
||||
enabled: true
|
||||
window_units: 3
|
||||
lanes:
|
||||
- item-occurrences
|
||||
- item-registry
|
||||
- location-registry
|
||||
- location-occurrences
|
||||
- npc-registry
|
||||
- spells
|
||||
- combat-turns
|
||||
- npc-occurrences
|
||||
- enemy-events
|
||||
steps:
|
||||
# Establish session-wide reference artifacts before their consumers.
|
||||
- id: describe-session
|
||||
artifacts:
|
||||
item-registry:
|
||||
extract:
|
||||
module: dnd/item-registry
|
||||
retries: 2
|
||||
merge: appendorder
|
||||
normalize: dnd/item-registry
|
||||
npc-registry:
|
||||
extract:
|
||||
module: dnd/npc-registry
|
||||
retries: 2
|
||||
merge: appendorder
|
||||
normalize:
|
||||
module: dnd/npc-registry
|
||||
retries: 2
|
||||
location-registry:
|
||||
extract:
|
||||
module: dnd/location-registry
|
||||
retries: 2
|
||||
merge: appendorder
|
||||
normalize:
|
||||
module: dnd/location-registry
|
||||
retries: 2
|
||||
scene-descriptions:
|
||||
extract:
|
||||
module: dnd/scene-descriptions
|
||||
retries: 2
|
||||
merge: appendorder
|
||||
normalize: dnd/scene-descriptions
|
||||
- id: extract-events
|
||||
# Accepted registry artifacts and scene-description eligibility artifacts
|
||||
# are supplied in memory to their compatible consumers in this step.
|
||||
references:
|
||||
location_registry:
|
||||
artifact:
|
||||
step: describe-session
|
||||
lane: location-registry
|
||||
npc_registry:
|
||||
artifact:
|
||||
step: describe-session
|
||||
lane: npc-registry
|
||||
scene_descriptions:
|
||||
artifact:
|
||||
step: describe-session
|
||||
lane: scene-descriptions
|
||||
item_registry:
|
||||
artifact:
|
||||
step: describe-session
|
||||
lane: item-registry
|
||||
artifacts:
|
||||
item-occurrences:
|
||||
extract:
|
||||
module: dnd/item-occurrences
|
||||
retries: 2
|
||||
merge: appendorder
|
||||
normalize: dnd/item-occurrences
|
||||
spells:
|
||||
extract:
|
||||
module: dnd/spells
|
||||
retries: 2
|
||||
merge: appendorder
|
||||
normalize:
|
||||
module: dnd/spells
|
||||
combat-turns:
|
||||
extract:
|
||||
module: dnd/combat-turns
|
||||
retries: 2
|
||||
merge: appendorder
|
||||
normalize: dnd/combat-turns
|
||||
npc-occurrences:
|
||||
extract:
|
||||
module: dnd/npc-occurrences
|
||||
retries: 2
|
||||
merge: appendorder
|
||||
normalize: dnd/npc-occurrences
|
||||
location-occurrences:
|
||||
extract:
|
||||
module: dnd/location-occurrences
|
||||
retries: 2
|
||||
merge: appendorder
|
||||
normalize: dnd/location-occurrences
|
||||
- id: track-enemies
|
||||
references:
|
||||
npc_registry:
|
||||
artifact:
|
||||
step: describe-session
|
||||
lane: npc-registry
|
||||
scene_descriptions:
|
||||
artifact:
|
||||
step: describe-session
|
||||
lane: scene-descriptions
|
||||
combat_turns:
|
||||
artifact:
|
||||
step: extract-events
|
||||
lane: combat-turns
|
||||
npc_occurrences:
|
||||
artifact:
|
||||
step: extract-events
|
||||
lane: npc-occurrences
|
||||
artifacts:
|
||||
enemy-events:
|
||||
extract:
|
||||
module: dnd/enemy-events
|
||||
retries: 2
|
||||
merge: appendorder
|
||||
normalize: dnd/enemy-events
|
||||
5
assets/configs/scriptorium/config.yml
Normal file
5
assets/configs/scriptorium/config.yml
Normal file
@@ -0,0 +1,5 @@
|
||||
# Ansible managed
|
||||
|
||||
prompt_dir: /usr/local/etc/scriptorium/library/prompts
|
||||
profile_dir: /usr/local/etc/scriptorium/library/profiles
|
||||
schema_dir: /usr/local/etc/scriptorium/library/schemas
|
||||
Reference in New Issue
Block a user