fabricatio_novel.models.novel_rag

Writing style fetching document models.

Classes

WritingStyleDocument

Semantic marker for writing style documents stored in LanceDB.

WritingStyleFetchConfig

Fetch configuration for writing style documents.

WritingStyleAddConfig

Fetch configuration for writing style documents.

Module Contents

class fabricatio_novel.models.novel_rag.WritingStyleDocument

Bases: fabricatio_lancedb.models.lancedb.LancedbDocumentModel[fabricatio_lancedb.rust.StoreDocument, fabricatio_lancedb.rust.SearchedDocument]

Semantic marker for writing style documents stored in LanceDB.

rendering_template: ClassVar[str]
class fabricatio_novel.models.novel_rag.WritingStyleFetchConfig

Bases: fabricatio_lancedb.capabilities.lancedb.LancedbFetchRAGConfig[WritingStyleDocument]

Fetch configuration for writing style documents.

document_model: Type[WritingStyleDocument]
use_refined_query: bool = False

When True, the user-supplied writing_style_query is refined by the LLM into multiple semantically-diverse queries before retrieval, and all variants are searched. Refinement is skipped when no writing_style_query is provided (falls back to the default script/scene-derived query).

refined_query_count: int = 3

Number of refined query variants to produce when use_refined_query is True. Higher counts increase retrieval coverage at the cost of one extra embedding call per variant.

refine_query_template: str

Template name used by RAG.arefined_query to expand the raw user query into multiple semantically-diverse queries. Override to use a project-specific template.

class fabricatio_novel.models.novel_rag.WritingStyleAddConfig

Bases: fabricatio_lancedb.capabilities.lancedb.LancedbAddRAGConfig

Fetch configuration for writing style documents.