Structure Config YAML#

Overview#

Structure repositories require a configuration file which informs Gen AI Builder of your Managed Structure’s dependencies and how it needs to build and run.

Structure Config File Schema#

All relative paths are based off of the directory in which the structure_config.yaml file is located.

The schema for the configuration file is as follows:

version: 1.0
runtime: python3
runtime_version: 3.11
build:
  pre_build_install_script: scripts/my-pre-build-install-script.sh
  post_build_install_script: scripts/my-post-build-install-script.sh
  requirements_file: requirements.txt
  cache_build_dependencies:
    enabled: false
    watched_files:
      - requirements.txt
      - scripts/my-pre-build-install-script.sh
      - scripts/my-post-build-install-script.sh
run:
  main_file: structure.py

Configuration Fields#

version#

The Structure Config schema version number.

runtime#

The runtime environment to use for the Structure.

runtime_version#

The specific version of the runtime environment for the Structure.

build (OPTIONAL)#

The build-time configuration for the Structure.

  • pre_build_install_script - The path to your pre_build_install_script, for running during the Structure build prior to dependency installation. This path is relative to the structure configuration file. Or absolute from the repository root if a forward slash is used: /my-pre-build-install-script.sh .

  • post_build_install_script - The path to your post_build_install_script, for running during the Structure build after dependency installation. This path is relative to the structure configuration file. Or absolute from the repository root if a forward slash is used: /my-post-build-install-script.sh .

  • requirements_file - The path to your Structure’s requirements.txt file.

  • cache_build_dependencies - Defines the configuration for caching build dependencies in order to speed up Deployments

  • enabled - Defines whether the build dependency caching is on or off

  • watched_files - Defines the particular files that will trigger cache invalidation, resulting in a full rebuild of the Structure and dependencies

run (REQUIRED)#

The run-time configuration for the Structure.

  • main_file - Specifies the path to the entry point file of the Managed Structure. This path is relative to the structure_config.yaml. Or absolute from the repository root if a forward slash is used: /structure.py .