Skip to content

translate_query_rag_module

TranslateQueryRagModule

Bases: BaseQueryRagModule

Source code in griptape/engines/rag/modules/query/translate_query_rag_module.py
@define(kw_only=True)
class TranslateQueryRagModule(BaseQueryRagModule):
    prompt_driver: BasePromptDriver = field()
    language: str = field()
    generate_user_template: Callable[[str, str], str] = field(
        default=Factory(lambda self: self.default_generate_user_template, takes_self=True),
    )

    def run(self, context: RagContext) -> RagContext:
        user_prompt = self.generate_user_template(context.query, self.language)
        output = self.prompt_driver.run(self.generate_prompt_stack(None, user_prompt)).to_artifact()

        context.query = output.to_text()

        return context

    def default_generate_user_template(self, query: str, language: str) -> str:
        return J2("engines/rag/modules/query/translate/user.j2").render(query=query, language=language)

generate_user_template: Callable[[str, str], str] = field(default=Factory(lambda self: self.default_generate_user_template, takes_self=True)) class-attribute instance-attribute

language: str = field() class-attribute instance-attribute

prompt_driver: BasePromptDriver = field() class-attribute instance-attribute

default_generate_user_template(query, language)

Source code in griptape/engines/rag/modules/query/translate_query_rag_module.py
def default_generate_user_template(self, query: str, language: str) -> str:
    return J2("engines/rag/modules/query/translate/user.j2").render(query=query, language=language)

run(context)

Source code in griptape/engines/rag/modules/query/translate_query_rag_module.py
def run(self, context: RagContext) -> RagContext:
    user_prompt = self.generate_user_template(context.query, self.language)
    output = self.prompt_driver.run(self.generate_prompt_stack(None, user_prompt)).to_artifact()

    context.query = output.to_text()

    return context