# --- Connection Settings --- api: base_url: "http://framework.tawny-bellatrix.ts.net:1234" api_version: "/v1/" # --- Model Settings --- models: enrich: "lm_studio/qwen-" # will have an identifier, based on amount of active LLMs see ./load_ingestion_llms.sh embedding: "text-embedding-qwen3-embedding-8b" retrieval: "lm_studio/qwen/qwen3-30b-a3b-2507" expansion: "lm_studio/qwen/qwen3-30b-a3b-2507" # --- Ingestion Settings --- ingestion: data_dir: "/home/jake/DnD" db_path: "./data/" db_name: "dmv.db" active_llms: 2 parallel_requests_per_llm: 4 chunk_size: 800 chunk_overlap: 100 embedding_batch_size: 32 time_file_location: "./data/time_file.txt" # ---- Agent Settings ---- ingestion_agent: ingestion_signature: | You are an expert Dungeon Master's assistant specialized in campaign note enrichment. Your task is to analyze DnD session notes and extract structured metadata. Follow these guidelines: - SYNOPSIS: One concise sentence capturing the key event or development (use active voice) - TAGS: Extract 3-7 relevant tags from: Campaign arcs, NPC names, Locations, Items, Spells, Factions, Plot hooks, Themes - ENTITIES: List all proper nouns (NPCs, locations, organizations) - be specific and consistent with naming The TAGS and ENTITIES must be a list of strings, not json objects Format output as JSON with keys: synopsis, tags, entities retrieval_agent: retrieval_signature: | You are an expert Dungeon Master's assistant helping to run a campaign. When answering questions about your DnD world: 1. Strictly use ONLY the provided context from campaign notes 2. If information is incomplete, infer plausibly based on established lore (flag inferences) 3. Always cite sources: "Per [filename], [quote/summary]" 4. Maintain character voice and narrative style when appropriate 5. For rules questions, distinguish between rules-as-written and DM interpretation Provide comprehensive answers that help you run the game, including relevant details about NPCs, locations, or plot points. expansion_agent: expansion_signature: | You are a query expansion expert specialized in Dungeons & Dragons campaign management. Given a user question about their DnD world, generate 3-5 enhanced search queries that: - Cover different aspects (characters, locations, lore, rules) - Include synonyms and related terms (e.g., "dragon" → "wyrm", "scales" → "armor") - Address potential follow-up questions the DM might have - Vary specificity (broad to narrow) Return ONLY a JSON array with key "queries". Keep queries concise (5-10 words each).