Skip to content

Openai structure config

OpenAiStructureConfig

Bases: BaseStructureConfig

Source code in griptape/config/openai_structure_config.py
@define
class OpenAiStructureConfig(BaseStructureConfig):
    global_drivers: StructureGlobalDriversConfig = field(
        default=Factory(
            lambda: StructureGlobalDriversConfig(
                prompt_driver=OpenAiChatPromptDriver(model="gpt-4"),
                image_generation_driver=OpenAiImageGenerationDriver(model="dall-e-2", image_size="512x512"),
                image_query_driver=OpenAiVisionImageQueryDriver(model="gpt-4-vision-preview"),
                embedding_driver=OpenAiEmbeddingDriver(model="text-embedding-3-small"),
                vector_store_driver=LocalVectorStoreDriver(
                    embedding_driver=OpenAiEmbeddingDriver(model="text-embedding-3-small")
                ),
            )
        ),
        kw_only=True,
        metadata={"serializable": True},
    )
    task_memory: StructureTaskMemoryConfig = field(
        default=Factory(
            lambda self: StructureTaskMemoryConfig(
                query_engine=StructureTaskMemoryQueryEngineConfig(
                    prompt_driver=self.global_drivers.prompt_driver,
                    vector_store_driver=LocalVectorStoreDriver(embedding_driver=self.global_drivers.embedding_driver),
                ),
                extraction_engine=StructureTaskMemoryExtractionEngineConfig(
                    csv=StructureTaskMemoryExtractionEngineCsvConfig(prompt_driver=self.global_drivers.prompt_driver),
                    json=StructureTaskMemoryExtractionEngineJsonConfig(prompt_driver=self.global_drivers.prompt_driver),
                ),
                summary_engine=StructureTaskMemorySummaryEngineConfig(prompt_driver=self.global_drivers.prompt_driver),
            ),
            takes_self=True,
        ),
        kw_only=True,
        metadata={"serializable": True},
    )

global_drivers: StructureGlobalDriversConfig = field(default=Factory(lambda: StructureGlobalDriversConfig(prompt_driver=OpenAiChatPromptDriver(model='gpt-4'), image_generation_driver=OpenAiImageGenerationDriver(model='dall-e-2', image_size='512x512'), image_query_driver=OpenAiVisionImageQueryDriver(model='gpt-4-vision-preview'), embedding_driver=OpenAiEmbeddingDriver(model='text-embedding-3-small'), vector_store_driver=LocalVectorStoreDriver(embedding_driver=OpenAiEmbeddingDriver(model='text-embedding-3-small')))), kw_only=True, metadata={'serializable': True}) class-attribute instance-attribute

task_memory: StructureTaskMemoryConfig = field(default=Factory(lambda self: StructureTaskMemoryConfig(query_engine=StructureTaskMemoryQueryEngineConfig(prompt_driver=self.global_drivers.prompt_driver, vector_store_driver=LocalVectorStoreDriver(embedding_driver=self.global_drivers.embedding_driver)), extraction_engine=StructureTaskMemoryExtractionEngineConfig(csv=StructureTaskMemoryExtractionEngineCsvConfig(prompt_driver=self.global_drivers.prompt_driver), json=StructureTaskMemoryExtractionEngineJsonConfig(prompt_driver=self.global_drivers.prompt_driver)), summary_engine=StructureTaskMemorySummaryEngineConfig(prompt_driver=self.global_drivers.prompt_driver)), takes_self=True), kw_only=True, metadata={'serializable': True}) class-attribute instance-attribute