504 lines
		
	
	
		
			30 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			504 lines
		
	
	
		
			30 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| # SPDX-FileCopyrightText: 2024 Nikita Chernyi
 | |
| # SPDX-FileCopyrightText: 2024 Slavi Pantaleev
 | |
| # SPDX-FileCopyrightText: 2024 Suguru Hirahara
 | |
| #
 | |
| # SPDX-License-Identifier: AGPL-3.0-or-later
 | |
| 
 | |
| ---
 | |
| 
 | |
| # baibot is a bot exposing the power of Large Language Models to you.
 | |
| # Project source code URL: https://github.com/etkecc/baibot
 | |
| 
 | |
| matrix_bot_baibot_enabled: true
 | |
| 
 | |
| matrix_bot_baibot_container_image_self_build: false
 | |
| matrix_bot_baibot_container_repo: "https://github.com/etkecc/baibot.git"
 | |
| matrix_bot_baibot_container_repo_version: "{{ 'main' if matrix_bot_baibot_version == 'latest' else matrix_bot_baibot_version }}"
 | |
| matrix_bot_baibot_container_src_files_path: "{{ matrix_base_data_path }}/baibot/container-src"
 | |
| 
 | |
| # renovate: datasource=docker depName=ghcr.io/etkecc/baibot
 | |
| matrix_bot_baibot_version: v1.7.6
 | |
| matrix_bot_baibot_container_image: "{{ matrix_bot_baibot_container_image_registry_prefix }}etkecc/baibot:{{ matrix_bot_baibot_version }}"
 | |
| matrix_bot_baibot_container_image_registry_prefix: "{{ 'localhost/' if matrix_bot_baibot_container_image_self_build else matrix_bot_baibot_container_image_registry_prefix_upstream }}"
 | |
| matrix_bot_baibot_container_image_registry_prefix_upstream: "{{ matrix_bot_baibot_container_image_registry_prefix_upstream_default }}"
 | |
| matrix_bot_baibot_container_image_registry_prefix_upstream_default: "ghcr.io/"
 | |
| matrix_bot_baibot_container_image_force_pull: "{{ matrix_bot_baibot_container_image.endswith(':latest') }}"
 | |
| 
 | |
| matrix_bot_baibot_base_path: "{{ matrix_base_data_path }}/baibot"
 | |
| matrix_bot_baibot_config_path: "{{ matrix_bot_baibot_base_path }}/config"
 | |
| matrix_bot_baibot_data_path: "{{ matrix_bot_baibot_base_path }}/data"
 | |
| 
 | |
| matrix_bot_baibot_container_network: ""
 | |
| 
 | |
| matrix_bot_baibot_container_additional_networks: "{{ matrix_bot_baibot_container_additional_networks_auto + matrix_bot_baibot_container_additional_networks_custom }}"
 | |
| matrix_bot_baibot_container_additional_networks_auto: []
 | |
| matrix_bot_baibot_container_additional_networks_custom: []
 | |
| 
 | |
| # A list of extra arguments to pass to the container
 | |
| matrix_bot_baibot_container_extra_arguments: []
 | |
| 
 | |
| # List of systemd services that matrix-bot-baibot.service depends on
 | |
| matrix_bot_baibot_systemd_required_services_list: "{{ matrix_bot_baibot_systemd_required_services_list_default + matrix_bot_baibot_systemd_required_services_list_auto + matrix_bot_baibot_systemd_required_services_list_custom }}"
 | |
| matrix_bot_baibot_systemd_required_services_list_default: "{{ [devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [] }}"
 | |
| matrix_bot_baibot_systemd_required_services_list_auto: []
 | |
| matrix_bot_baibot_systemd_required_services_list_custom: []
 | |
| 
 | |
| # List of systemd services that matrix-bot-baibot.service wants
 | |
| matrix_bot_baibot_systemd_wanted_services_list: []
 | |
| 
 | |
| # Controls the `homeserver.server_name` configuration setting.
 | |
| matrix_bot_baibot_config_homeserver_server_name: "{{ matrix_domain }}"
 | |
| 
 | |
| # Controls the `homeserver.url` configuration setting.
 | |
| matrix_bot_baibot_config_homeserver_url: ""
 | |
| 
 | |
| # Controls the `user.mxid_localpart` configuration setting.
 | |
| #
 | |
| # This affects the bot's username.
 | |
| # Changing this subsequently will require you to drop the bot's session/database (see `matrix_bot_baibot_data_path`),
 | |
| # so it can start fresh.
 | |
| matrix_bot_baibot_config_user_mxid_localpart: baibot
 | |
| 
 | |
| # Controls the `user.password` configuration setting.
 | |
| matrix_bot_baibot_config_user_password: ''
 | |
| 
 | |
| # Controls the `user.name` configuration setting.
 | |
| #
 | |
| # The name the bot uses as a display name and when it refers to itself.
 | |
| # If you leave this empty, the bot will use the default (baibot).
 | |
| #
 | |
| # Also see: `matrix_bot_baibot_config_user_mxid_localpart`
 | |
| matrix_bot_baibot_config_user_name: baibot
 | |
| 
 | |
| # Controls the `user.encryption.recovery_passphrase` configuration setting.
 | |
| #
 | |
| # An optional passphrase to use for backing up and recovering the bot's encryption keys.
 | |
| # You can use any string here.
 | |
| #
 | |
| # If left empty, the recovery module will not be used and losing your session/database (see persistence)
 | |
| # will mean you lose access to old messages in encrypted room.
 | |
| #
 | |
| # Changing this subsequently will also cause you to lose access to old messages in encrypted rooms.
 | |
| # If you really need to change this:
 | |
| # - Set `matrix_bot_baibot_config_user_encryption_recovery_reset_allowed` to `true` and adjust the passphrase
 | |
| # - Remove your session file and database (see persistence)
 | |
| # - Restart the bot
 | |
| # - Then restore `matrix_bot_baibot_config_user_encryption_recovery_reset_allowed` to `false` to prevent accidental resets in the future
 | |
| matrix_bot_baibot_config_user_encryption_recovery_passphrase: null
 | |
| 
 | |
| # Controls the `user.encryption.recovery_passphrase` configuration setting.
 | |
| #
 | |
| # An optional flag to reset the encryption recovery passphrase (see `matrix_bot_baibot_config_user_encryption_recovery_passphrase`).
 | |
| matrix_bot_baibot_config_user_encryption_recovery_reset_allowed: false
 | |
| 
 | |
| # Controls the `command_prefix` configuration setting.
 | |
| # If you leave this empty, the bot will use the default (!bai).
 | |
| matrix_bot_baibot_config_command_prefix: "!bai"
 | |
| 
 | |
| # Controls the `room.post_join_self_introduction_enabled` configuration setting.
 | |
| # Influences whether the bot should send an introduction message after joining a room.
 | |
| matrix_bot_baibot_config_room_post_join_self_introduction_enabled: true
 | |
| 
 | |
| # Controls the `access.admin_patterns` configuration setting.
 | |
| # A space-separated list of MXID patterns which specify who is an admin.
 | |
| #
 | |
| # Example:
 | |
| # matrix_bot_baibot_config_access_admin_patterns:
 | |
| #   - "@*:example.com"
 | |
| #   - "@admin:example.net"
 | |
| matrix_bot_baibot_config_access_admin_patterns: "{{ [matrix_admin] if matrix_admin else [] }}"
 | |
| 
 | |
| # Controls the `persistence.data_dir_path` configuration setting.
 | |
| #
 | |
| # The bot runs in a container, so this is the in-container path referring to the data directory on the host
 | |
| # (see `matrix_bot_baibot_data_path`).
 | |
| #
 | |
| # You generally don't need to change this.
 | |
| matrix_bot_baibot_config_persistence_data_dir_path: /data
 | |
| 
 | |
| # Controls the `persistence.session_encryption_key` configuration setting.
 | |
| #
 | |
| # An optional secret for encrypting the bot's session data (see `matrix_bot_baibot_data_path`).
 | |
| # This must be 32-bytes (64 characters when HEX-encoded).
 | |
| # Generate it with: `openssl rand -hex 32`
 | |
| # Leave null or empty to avoid using encryption.
 | |
| # Changing this subsequently requires that you also throw away all data (see `matrix_bot_baibot_data_path`)
 | |
| matrix_bot_baibot_config_persistence_session_encryption_key: null
 | |
| 
 | |
| # Controls the `persistence.config_encryption_key` configuration setting.
 | |
| #
 | |
| # An optional secret for encrypting bot configuration stored in Matrix's account data.
 | |
| # This must be 32-bytes (64 characters when HEX-encoded).
 | |
| # Generate it with: `openssl rand -hex 32`
 | |
| # Leave null or empty to avoid using encryption.
 | |
| # Changing this subsequently will make you lose your configuration.
 | |
| matrix_bot_baibot_config_persistence_config_encryption_key: null
 | |
| 
 | |
| # Controls the `agents.static_definitions` configuration setting.
 | |
| #
 | |
| # There are some presets (e.g. `matrix_bot_baibot_config_agents_static_definitions_openai_*`) you can easily use to get started with a given provider.
 | |
| # You can also define your own agents via `matrix_bot_baibot_config_agents_static_definitions_custom`.
 | |
| matrix_bot_baibot_config_agents_static_definitions: "{{ matrix_bot_baibot_config_agents_static_definitions_auto + matrix_bot_baibot_config_agents_static_definitions_custom }}"
 | |
| matrix_bot_baibot_config_agents_static_definitions_auto: |-
 | |
|   {{
 | |
|     ([{
 | |
|         'id': matrix_bot_baibot_config_agents_static_definitions_anthropic_id,
 | |
|         'provider': matrix_bot_baibot_config_agents_static_definitions_anthropic_provider,
 | |
|         'config': matrix_bot_baibot_config_agents_static_definitions_anthropic_config,
 | |
|     }] if matrix_bot_baibot_config_agents_static_definitions_anthropic_enabled else [])
 | |
|     +
 | |
|     ([{
 | |
|         'id': matrix_bot_baibot_config_agents_static_definitions_groq_id,
 | |
|         'provider': matrix_bot_baibot_config_agents_static_definitions_groq_provider,
 | |
|         'config': matrix_bot_baibot_config_agents_static_definitions_groq_config,
 | |
|     }] if matrix_bot_baibot_config_agents_static_definitions_groq_enabled else [])
 | |
|     +
 | |
|     ([{
 | |
|         'id': matrix_bot_baibot_config_agents_static_definitions_mistral_id,
 | |
|         'provider': matrix_bot_baibot_config_agents_static_definitions_mistral_provider,
 | |
|         'config': matrix_bot_baibot_config_agents_static_definitions_mistral_config,
 | |
|     }] if matrix_bot_baibot_config_agents_static_definitions_mistral_enabled else [])
 | |
|     +
 | |
|     ([{
 | |
|         'id': matrix_bot_baibot_config_agents_static_definitions_openai_id,
 | |
|         'provider': matrix_bot_baibot_config_agents_static_definitions_openai_provider,
 | |
|         'config': matrix_bot_baibot_config_agents_static_definitions_openai_config,
 | |
|     }] if matrix_bot_baibot_config_agents_static_definitions_openai_enabled else [])
 | |
|   }}
 | |
| matrix_bot_baibot_config_agents_static_definitions_custom: []
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_prompt: "{% raw %}You are a brief, but helpful bot called {{ baibot_name }} powered by the {{ baibot_model_id }} model. The date/time of this conversation's start is: {{ baibot_conversation_start_time_utc }}.{% endraw %}"
 | |
| 
 | |
| ########################################################################################
 | |
| #                                                                                      #
 | |
| # Anthropic agent configuration                                                        #
 | |
| #                                                                                      #
 | |
| ########################################################################################
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_anthropic_enabled: false
 | |
| matrix_bot_baibot_config_agents_static_definitions_anthropic_id: anthropic
 | |
| matrix_bot_baibot_config_agents_static_definitions_anthropic_provider: anthropic
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_anthropic_config: "{{ matrix_bot_baibot_config_agents_static_definitions_anthropic_config_yaml | from_yaml | combine(matrix_bot_baibot_config_agents_static_definitions_anthropic_config_extension, recursive=True) }}"
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_anthropic_config_yaml: "{{ lookup('template', 'templates/provider/anthropic-config.yml.j2') }}"
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_anthropic_config_extension: "{{ matrix_bot_baibot_config_agents_static_definitions_anthropic_config_extension_yaml | from_yaml if matrix_bot_baibot_config_agents_static_definitions_anthropic_config_extension_yaml | from_yaml is mapping else {} }}"
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_anthropic_config_extension_yaml: |
 | |
|   # Your custom YAML configuration for this provider's configuration goes here.
 | |
|   # This configuration extends the default starting configuration (`matrix_bot_baibot_config_agents_static_definitions_anthropic_config`).
 | |
|   #
 | |
|   # You can override individual variables from the default configuration, or introduce new ones.
 | |
|   #
 | |
|   # If you need something more special, you can take full control by
 | |
|   # completely redefining `matrix_bot_baibot_config_agents_static_definitions_anthropic_config_yaml`.
 | |
|   #
 | |
|   # Example configuration extension follows:
 | |
|   #
 | |
|   # text_generation:
 | |
|   #   temperature: 3.5
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_anthropic_config_base_url: https://api.anthropic.com/v1
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_anthropic_config_api_key: ""
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_anthropic_config_text_generation_enabled: true
 | |
| # For valid model choices, see: https://platform.anthropic.com/docs/models
 | |
| matrix_bot_baibot_config_agents_static_definitions_anthropic_config_text_generation_model_id: claude-3-7-sonnet-20250219
 | |
| # The prompt text to use (can be null or empty to not use a prompt).
 | |
| # See: https://huggingface.co/docs/transformers/en/tasks/prompting
 | |
| matrix_bot_baibot_config_agents_static_definitions_anthropic_config_text_generation_prompt: "{{ matrix_bot_baibot_config_agents_static_definitions_prompt }}"
 | |
| # The temperature parameter controls the randomness of the generated text.
 | |
| # See: https://blogs.novita.ai/what-are-large-language-model-settings-temperature-top-p-and-max-tokens/#what-is-llm-temperature
 | |
| matrix_bot_baibot_config_agents_static_definitions_anthropic_config_text_generation_temperature: 1.0
 | |
| matrix_bot_baibot_config_agents_static_definitions_anthropic_config_text_generation_max_response_tokens: 8192
 | |
| matrix_bot_baibot_config_agents_static_definitions_anthropic_config_text_generation_max_context_tokens: 204800
 | |
| 
 | |
| ########################################################################################
 | |
| #                                                                                      #
 | |
| # /Anthropic agent configuration                                                       #
 | |
| #                                                                                      #
 | |
| ########################################################################################
 | |
| 
 | |
| 
 | |
| ########################################################################################
 | |
| #                                                                                      #
 | |
| # Groq agent configuration                                                             #
 | |
| #                                                                                      #
 | |
| ########################################################################################
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_groq_enabled: false
 | |
| matrix_bot_baibot_config_agents_static_definitions_groq_id: groq
 | |
| matrix_bot_baibot_config_agents_static_definitions_groq_provider: groq
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_groq_config: "{{ matrix_bot_baibot_config_agents_static_definitions_groq_config_yaml | from_yaml | combine(matrix_bot_baibot_config_agents_static_definitions_groq_config_extension, recursive=True) }}"
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_groq_config_yaml: "{{ lookup('template', 'templates/provider/groq-config.yml.j2') }}"
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_groq_config_extension: "{{ matrix_bot_baibot_config_agents_static_definitions_groq_config_extension_yaml | from_yaml if matrix_bot_baibot_config_agents_static_definitions_groq_config_extension_yaml | from_yaml is mapping else {} }}"
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_groq_config_extension_yaml: |
 | |
|   # Your custom YAML configuration for this provider's configuration goes here.
 | |
|   # This configuration extends the default starting configuration (`matrix_bot_baibot_config_agents_static_definitions_groq_config`).
 | |
|   #
 | |
|   # You can override individual variables from the default configuration, or introduce new ones.
 | |
|   #
 | |
|   # If you need something more special, you can take full control by
 | |
|   # completely redefining `matrix_bot_baibot_config_agents_static_definitions_groq_config_yaml`.
 | |
|   #
 | |
|   # Example configuration extension follows:
 | |
|   #
 | |
|   # text_generation:
 | |
|   #   temperature: 3.5
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_groq_config_base_url: https://api.groq.com/openai/v1
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_groq_config_api_key: ""
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_groq_config_text_generation_enabled: true
 | |
| # For valid model choices, see: https://platform.groq.com/docs/models
 | |
| matrix_bot_baibot_config_agents_static_definitions_groq_config_text_generation_model_id: ""
 | |
| # The prompt text to use (can be null or empty to not use a prompt).
 | |
| # See: https://huggingface.co/docs/transformers/en/tasks/prompting
 | |
| matrix_bot_baibot_config_agents_static_definitions_groq_config_text_generation_prompt: "{{ matrix_bot_baibot_config_agents_static_definitions_prompt }}"
 | |
| # The temperature parameter controls the randomness of the generated text.
 | |
| # See: https://blogs.novita.ai/what-are-large-language-model-settings-temperature-top-p-and-max-tokens/#what-is-llm-temperature
 | |
| matrix_bot_baibot_config_agents_static_definitions_groq_config_text_generation_temperature: 1.0
 | |
| matrix_bot_baibot_config_agents_static_definitions_groq_config_text_generation_max_response_tokens: 4096
 | |
| matrix_bot_baibot_config_agents_static_definitions_groq_config_text_generation_max_context_tokens: 131072
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_groq_config_speech_to_text_enabled: true
 | |
| matrix_bot_baibot_config_agents_static_definitions_groq_config_speech_to_text_model_id: whisper-large-v3
 | |
| 
 | |
| ########################################################################################
 | |
| #                                                                                      #
 | |
| # /Groq agent configuration                                                            #
 | |
| #                                                                                      #
 | |
| ########################################################################################
 | |
| 
 | |
| 
 | |
| ########################################################################################
 | |
| #                                                                                      #
 | |
| # Mistral agent configuration                                                          #
 | |
| #                                                                                      #
 | |
| ########################################################################################
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_mistral_enabled: false
 | |
| matrix_bot_baibot_config_agents_static_definitions_mistral_id: mistral
 | |
| matrix_bot_baibot_config_agents_static_definitions_mistral_provider: mistral
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_mistral_config: "{{ matrix_bot_baibot_config_agents_static_definitions_mistral_config_yaml | from_yaml | combine(matrix_bot_baibot_config_agents_static_definitions_mistral_config_extension, recursive=True) }}"
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_mistral_config_yaml: "{{ lookup('template', 'templates/provider/mistral-config.yml.j2') }}"
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_mistral_config_extension: "{{ matrix_bot_baibot_config_agents_static_definitions_mistral_config_extension_yaml | from_yaml if matrix_bot_baibot_config_agents_static_definitions_mistral_config_extension_yaml | from_yaml is mapping else {} }}"
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_mistral_config_extension_yaml: |
 | |
|   # Your custom YAML configuration for this provider's configuration goes here.
 | |
|   # This configuration extends the default starting configuration (`matrix_bot_baibot_config_agents_static_definitions_mistral_config`).
 | |
|   #
 | |
|   # You can override individual variables from the default configuration, or introduce new ones.
 | |
|   #
 | |
|   # If you need something more special, you can take full control by
 | |
|   # completely redefining `matrix_bot_baibot_config_agents_static_definitions_mistral_config_yaml`.
 | |
|   #
 | |
|   # Example configuration extension follows:
 | |
|   #
 | |
|   # text_generation:
 | |
|   #   temperature: 3.5
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_mistral_config_base_url: https://api.mistral.ai/v1
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_mistral_config_api_key: ""
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_mistral_config_text_generation_enabled: true
 | |
| # For valid model choices, see: https://platform.mistral.com/docs/models
 | |
| matrix_bot_baibot_config_agents_static_definitions_mistral_config_text_generation_model_id: mistral-large-latest
 | |
| # The prompt text to use (can be null or empty to not use a prompt).
 | |
| # See: https://huggingface.co/docs/transformers/en/tasks/prompting
 | |
| matrix_bot_baibot_config_agents_static_definitions_mistral_config_text_generation_prompt: "{{ matrix_bot_baibot_config_agents_static_definitions_prompt }}"
 | |
| # The temperature parameter controls the randomness of the generated text.
 | |
| # See: https://blogs.novita.ai/what-are-large-language-model-settings-temperature-top-p-and-max-tokens/#what-is-llm-temperature
 | |
| matrix_bot_baibot_config_agents_static_definitions_mistral_config_text_generation_temperature: 1.0
 | |
| matrix_bot_baibot_config_agents_static_definitions_mistral_config_text_generation_max_response_tokens: 4096
 | |
| matrix_bot_baibot_config_agents_static_definitions_mistral_config_text_generation_max_context_tokens: 128000
 | |
| 
 | |
| ########################################################################################
 | |
| #                                                                                      #
 | |
| # /Mistral agent configuration                                                         #
 | |
| #                                                                                      #
 | |
| ########################################################################################
 | |
| 
 | |
| 
 | |
| ########################################################################################
 | |
| #                                                                                      #
 | |
| # OpenAI agent configuration                                                           #
 | |
| #                                                                                      #
 | |
| ########################################################################################
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_enabled: false
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_id: openai
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_provider: openai
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config: "{{ matrix_bot_baibot_config_agents_static_definitions_openai_config_yaml | from_yaml | combine(matrix_bot_baibot_config_agents_static_definitions_openai_config_extension, recursive=True) }}"
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_yaml: "{{ lookup('template', 'templates/provider/openai-config.yml.j2') }}"
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_extension: "{{ matrix_bot_baibot_config_agents_static_definitions_openai_config_extension_yaml | from_yaml if matrix_bot_baibot_config_agents_static_definitions_openai_config_extension_yaml | from_yaml is mapping else {} }}"
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_extension_yaml: |
 | |
|   # Your custom YAML configuration for this provider's configuration goes here.
 | |
|   # This configuration extends the default starting configuration (`matrix_bot_baibot_config_agents_static_definitions_openai_config`).
 | |
|   #
 | |
|   # You can override individual variables from the default configuration, or introduce new ones.
 | |
|   #
 | |
|   # If you need something more special, you can take full control by
 | |
|   # completely redefining `matrix_bot_baibot_config_agents_static_definitions_openai_config_yaml`.
 | |
|   #
 | |
|   # Example configuration extension follows:
 | |
|   #
 | |
|   # text_generation:
 | |
|   #   temperature: 3.5
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_base_url: https://api.openai.com/v1
 | |
| 
 | |
| # The API key is intentionally not required. Some OpenAI-compatible APIs do not require a key.
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_api_key: ""
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_enabled: true
 | |
| # For valid model choices, see: https://platform.openai.com/docs/models
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_model_id: gpt-5
 | |
| # The prompt text to use (can be null or empty to not use a prompt).
 | |
| # See: https://huggingface.co/docs/transformers/en/tasks/prompting
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_prompt: "{{ matrix_bot_baibot_config_agents_static_definitions_prompt }}"
 | |
| # The temperature parameter controls the randomness of the generated text.
 | |
| # See: https://blogs.novita.ai/what-are-large-language-model-settings-temperature-top-p-and-max-tokens/#what-is-llm-temperature
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_temperature: 1.0
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_max_response_tokens: ~
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_max_completion_tokens: 128000
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_max_context_tokens: 400000
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_speech_to_text_enabled: true
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_speech_to_text_model_id: whisper-1
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_text_to_speech_enabled: true
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_text_to_speech_model_id: tts-1-hd
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_text_to_speech_voice: onyx
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_text_to_speech_speed: 1.0
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_text_to_speech_response_format: opus
 | |
| 
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_image_generation_enabled: true
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_image_generation_model_id: gpt-image-1
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_image_generation_style: null
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_image_generation_size: null
 | |
| matrix_bot_baibot_config_agents_static_definitions_openai_config_image_generation_quality: null
 | |
| 
 | |
| ########################################################################################
 | |
| #                                                                                      #
 | |
| # /OpenAI agent configuration                                                          #
 | |
| #                                                                                      #
 | |
| ########################################################################################
 | |
| 
 | |
| 
 | |
| # Controls the `initial_global_config.handler.catch_all` configuration setting.
 | |
| #
 | |
| # This is an initial global configuration setting.
 | |
| # It only affects the first run of the bot. Configuration is later managed at runtime.
 | |
| matrix_bot_baibot_config_initial_global_config_handler_catch_all: null
 | |
| 
 | |
| # Controls the `initial_global_config.handler.text_generation` configuration setting.
 | |
| #
 | |
| # This is an initial global configuration setting.
 | |
| # It only affects the first run of the bot. Configuration is later managed at runtime.
 | |
| matrix_bot_baibot_config_initial_global_config_handler_text_generation: null
 | |
| 
 | |
| # Controls the `initial_global_config.handler.text_to_speech` configuration setting.
 | |
| #
 | |
| # This is an initial global configuration setting.
 | |
| # It only affects the first run of the bot. Configuration is later managed at runtime.
 | |
| matrix_bot_baibot_config_initial_global_config_handler_text_to_speech: null
 | |
| 
 | |
| # Controls the `initial_global_config.handler.speech_to_text` configuration setting.
 | |
| #
 | |
| # This is an initial global configuration setting.
 | |
| # It only affects the first run of the bot. Configuration is later managed at runtime.
 | |
| matrix_bot_baibot_config_initial_global_config_handler_speech_to_text: null
 | |
| 
 | |
| # Controls the `initial_global_config.handler.image_generation` configuration setting.
 | |
| #
 | |
| # This is an initial global configuration setting.
 | |
| # It only affects the first run of the bot. Configuration is later managed at runtime.
 | |
| matrix_bot_baibot_config_initial_global_config_handler_image_generation: null
 | |
| 
 | |
| # Controls the `initial_global_config.user_patterns` configuration setting.
 | |
| #
 | |
| # A space-separated list of MXID patterns which specify who can use the bot.
 | |
| # By default, we let anyone on the homeserver use the bot.
 | |
| #
 | |
| # This is an initial global configuration setting.
 | |
| # It only affects the first run of the bot. Configuration is later managed at runtime.
 | |
| matrix_bot_baibot_config_initial_global_config_user_patterns:
 | |
|   - "@*:{{ matrix_bot_baibot_config_homeserver_server_name }}"
 | |
| 
 | |
| # Controls the `logging` configuration setting.
 | |
| #
 | |
| # This could take a single value (e.g. `warn`) to affect all tracing targets,
 | |
| # or individual libraries (e.g. `mxlink`, `baibot`) can be configured independently of the main level.
 | |
| #
 | |
| # Below, we configure the logging level for:
 | |
| # - the bot (baibot), via `matrix_bot_baibot_config_logging_level_baibot`
 | |
| # - the bot framework that the bot is based on (mxlink), via `matrix_bot_baibot_config_logging_level_mxlink`
 | |
| # - everything else (external libraries), via `matrix_bot_baibot_config_logging_level_other_libs`
 | |
| #
 | |
| # Valid values for each level are: `trace`, `debug`, `info`, `warn`, `error`.
 | |
| # Learn more here: https://stackoverflow.com/a/73735203
 | |
| matrix_bot_baibot_config_logging: "{{ matrix_bot_baibot_config_logging_level_other_libs }},mxlink={{ matrix_bot_baibot_config_logging_level_mxlink }},baibot={{ matrix_bot_baibot_config_logging_level_baibot }}"
 | |
| 
 | |
| # Adjust the logging level for other libraries used by the bot.
 | |
| matrix_bot_baibot_config_logging_level_other_libs: warn
 | |
| 
 | |
| # Affects the logging level of the bot framework (mxlink) that the bot is based on.
 | |
| # Related to `matrix_bot_baibot_config_logging`
 | |
| matrix_bot_baibot_config_logging_level_mxlink: info
 | |
| 
 | |
| # Affects the logging level of the bot itself.
 | |
| # Related to `matrix_bot_baibot_config_logging`
 | |
| matrix_bot_baibot_config_logging_level_baibot: info
 | |
| 
 | |
| # Holds the final baibot configuration (a combination of the default and its extension).
 | |
| # You most likely don't need to touch this variable. Instead, see `matrix_bot_baibot_configuration_yaml` or `matrix_bot_baibot_configuration_extension_yaml`.
 | |
| matrix_bot_baibot_configuration: "{{ matrix_bot_baibot_configuration_yaml | from_yaml | combine(matrix_bot_baibot_configuration_extension, recursive=True) }}"
 | |
| 
 | |
| # Default baibot configuration template which covers the generic use case.
 | |
| # You can customize it by controlling the various variables inside it.
 | |
| #
 | |
| # For a more advanced customization, you can extend the default (see `matrix_bot_baibot_configuration_extension_yaml`)
 | |
| # or completely replace this variable with your own template.
 | |
| matrix_bot_baibot_configuration_yaml: "{{ lookup('template', 'templates/config.yaml.j2') }}"
 | |
| 
 | |
| matrix_bot_baibot_configuration_extension_yaml: |
 | |
|   # Your custom YAML configuration for baibot goes here.
 | |
|   # This configuration extends the default starting configuration (`matrix_bot_baibot_configuration_yaml`).
 | |
|   #
 | |
|   # You can override individual variables from the default configuration, or introduce new ones.
 | |
|   #
 | |
|   # If you need something more special, you can take full control by
 | |
|   # completely redefining `matrix_bot_baibot_configuration_yaml`.
 | |
|   #
 | |
|   # Example configuration extension follows:
 | |
|   #
 | |
|   # user:
 | |
|   #   password: something
 | |
| 
 | |
| matrix_bot_baibot_configuration_extension: "{{ matrix_bot_baibot_configuration_extension_yaml | from_yaml if matrix_bot_baibot_configuration_extension_yaml | from_yaml is mapping else {} }}"
 | |
| 
 | |
| # Additional environment variables to pass to the baibot container.
 | |
| #
 | |
| # Environment variables take priority over settings in the configuration file.
 | |
| #
 | |
| # Example:
 | |
| # matrix_bot_baibot_environment_variables_extension: |
 | |
| #   BAIBOT_USER_PASSWORD=password
 | |
| matrix_bot_baibot_environment_variables_extension: ''
 |