Matrix Docker Ansible eploy
Non puoi selezionare più di 25 argomenti Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.
 
 

536 righe
32 KiB

  1. # SPDX-FileCopyrightText: 2024 Nikita Chernyi
  2. # SPDX-FileCopyrightText: 2024 Slavi Pantaleev
  3. # SPDX-FileCopyrightText: 2024 Suguru Hirahara
  4. #
  5. # SPDX-License-Identifier: AGPL-3.0-or-later
  6. ---
  7. # baibot is a bot exposing the power of Large Language Models to you.
  8. # Project source code URL: https://github.com/etkecc/baibot
  9. matrix_bot_baibot_enabled: true
  10. matrix_bot_baibot_container_image_self_build: false
  11. matrix_bot_baibot_container_repo: "https://github.com/etkecc/baibot.git"
  12. matrix_bot_baibot_container_repo_version: "{{ 'main' if matrix_bot_baibot_version == 'latest' else matrix_bot_baibot_version }}"
  13. matrix_bot_baibot_container_src_files_path: "{{ matrix_base_data_path }}/baibot/container-src"
  14. # renovate: datasource=docker depName=ghcr.io/etkecc/baibot
  15. matrix_bot_baibot_version: v1.14.3
  16. matrix_bot_baibot_container_image: "{{ matrix_bot_baibot_container_image_registry_prefix }}etkecc/baibot:{{ matrix_bot_baibot_version }}"
  17. 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 }}"
  18. matrix_bot_baibot_container_image_registry_prefix_upstream: "{{ matrix_bot_baibot_container_image_registry_prefix_upstream_default }}"
  19. matrix_bot_baibot_container_image_registry_prefix_upstream_default: "ghcr.io/"
  20. matrix_bot_baibot_container_image_force_pull: "{{ matrix_bot_baibot_container_image.endswith(':latest') }}"
  21. matrix_bot_baibot_base_path: "{{ matrix_base_data_path }}/baibot"
  22. matrix_bot_baibot_config_path: "{{ matrix_bot_baibot_base_path }}/config"
  23. matrix_bot_baibot_data_path: "{{ matrix_bot_baibot_base_path }}/data"
  24. matrix_bot_baibot_container_network: ""
  25. matrix_bot_baibot_container_additional_networks: "{{ matrix_bot_baibot_container_additional_networks_auto + matrix_bot_baibot_container_additional_networks_custom }}"
  26. matrix_bot_baibot_container_additional_networks_auto: []
  27. matrix_bot_baibot_container_additional_networks_custom: []
  28. # A list of extra arguments to pass to the container
  29. matrix_bot_baibot_container_extra_arguments: []
  30. # List of systemd services that matrix-bot-baibot.service depends on
  31. 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 }}"
  32. matrix_bot_baibot_systemd_required_services_list_default: "{{ [devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [] }}"
  33. matrix_bot_baibot_systemd_required_services_list_auto: []
  34. matrix_bot_baibot_systemd_required_services_list_custom: []
  35. # List of systemd services that matrix-bot-baibot.service wants
  36. matrix_bot_baibot_systemd_wanted_services_list: []
  37. # Controls the `homeserver.server_name` configuration setting.
  38. matrix_bot_baibot_config_homeserver_server_name: "{{ matrix_domain }}"
  39. # Controls the `homeserver.url` configuration setting.
  40. matrix_bot_baibot_config_homeserver_url: ""
  41. # Controls the `user.mxid_localpart` configuration setting.
  42. #
  43. # This affects the bot's username.
  44. # Changing this subsequently will require you to drop the bot's session/database (see `matrix_bot_baibot_data_path`),
  45. # so it can start fresh.
  46. matrix_bot_baibot_config_user_mxid_localpart: baibot
  47. # Controls the `user.password` configuration setting.
  48. matrix_bot_baibot_config_user_password: ''
  49. # Controls the `user.name` configuration setting.
  50. #
  51. # The name the bot uses as a display name and when it refers to itself.
  52. # If you leave this empty, the bot will use the default (baibot).
  53. #
  54. # Also see: `matrix_bot_baibot_config_user_mxid_localpart`
  55. matrix_bot_baibot_config_user_name: baibot
  56. # Controls the `user.avatar` configuration setting.
  57. #
  58. # An optional path to an image file to be used as a custom avatar image.
  59. # This path should be an in-container path (e.g., `/data/avatar.png`).
  60. # Any type of content type is supported, but stick to common image formats (PNG, JPG, ..) for better compatibility with various Matrix clients.
  61. #
  62. # To use a custom avatar:
  63. # - Use the auxiliary role (`aux_` variables) to upload your avatar file to the server (e.g. to {{ matrix_bot_baibot_data_path }}/avatar.png on the host),
  64. # or do it any other way (without Ansible) you prefer
  65. # - Set this variable to something like `/data/avatar.png` (the in-container path)
  66. #
  67. # Possible values:
  68. # - null or empty string: use the default baibot avatar
  69. # - "keep": don't touch the avatar, keep whatever is already set (useful if you manage the avatar via other means)
  70. # - any other value: path to a custom avatar image file (must be an in-container path like `/data/avatar.png`)
  71. matrix_bot_baibot_config_user_avatar: null
  72. # Controls the `user.encryption.recovery_passphrase` configuration setting.
  73. #
  74. # An optional passphrase to use for backing up and recovering the bot's encryption keys.
  75. # You can use any string here.
  76. #
  77. # If left empty, the recovery module will not be used and losing your session/database (see persistence)
  78. # will mean you lose access to old messages in encrypted room.
  79. #
  80. # Changing this subsequently will also cause you to lose access to old messages in encrypted rooms.
  81. # If you really need to change this:
  82. # - Set `matrix_bot_baibot_config_user_encryption_recovery_reset_allowed` to `true` and adjust the passphrase
  83. # - Remove your session file and database (see persistence)
  84. # - Restart the bot
  85. # - Then restore `matrix_bot_baibot_config_user_encryption_recovery_reset_allowed` to `false` to prevent accidental resets in the future
  86. matrix_bot_baibot_config_user_encryption_recovery_passphrase: null
  87. # Controls the `user.encryption.recovery_passphrase` configuration setting.
  88. #
  89. # An optional flag to reset the encryption recovery passphrase (see `matrix_bot_baibot_config_user_encryption_recovery_passphrase`).
  90. matrix_bot_baibot_config_user_encryption_recovery_reset_allowed: false
  91. # Controls the `command_prefix` configuration setting.
  92. # If you leave this empty, the bot will use the default (!bai).
  93. matrix_bot_baibot_config_command_prefix: "!bai"
  94. # Controls the `room.post_join_self_introduction_enabled` configuration setting.
  95. # Influences whether the bot should send an introduction message after joining a room.
  96. matrix_bot_baibot_config_room_post_join_self_introduction_enabled: true
  97. # Controls the `access.admin_patterns` configuration setting.
  98. # A space-separated list of MXID patterns which specify who is an admin.
  99. #
  100. # Example:
  101. # matrix_bot_baibot_config_access_admin_patterns:
  102. # - "@*:example.com"
  103. # - "@admin:example.net"
  104. matrix_bot_baibot_config_access_admin_patterns: "{{ [matrix_admin] if matrix_admin else [] }}"
  105. # Controls the `persistence.data_dir_path` configuration setting.
  106. #
  107. # The bot runs in a container, so this is the in-container path referring to the data directory on the host
  108. # (see `matrix_bot_baibot_data_path`).
  109. #
  110. # You generally don't need to change this.
  111. matrix_bot_baibot_config_persistence_data_dir_path: /data
  112. # Controls the `persistence.session_encryption_key` configuration setting.
  113. #
  114. # An optional secret for encrypting the bot's session data (see `matrix_bot_baibot_data_path`).
  115. # This must be 32-bytes (64 characters when HEX-encoded).
  116. # Generate it with: `openssl rand -hex 32`
  117. # Leave null or empty to avoid using encryption.
  118. # Changing this subsequently requires that you also throw away all data (see `matrix_bot_baibot_data_path`)
  119. matrix_bot_baibot_config_persistence_session_encryption_key: null
  120. # Controls the `persistence.config_encryption_key` configuration setting.
  121. #
  122. # An optional secret for encrypting bot configuration stored in Matrix's account data.
  123. # This must be 32-bytes (64 characters when HEX-encoded).
  124. # Generate it with: `openssl rand -hex 32`
  125. # Leave null or empty to avoid using encryption.
  126. # Changing this subsequently will make you lose your configuration.
  127. matrix_bot_baibot_config_persistence_config_encryption_key: null
  128. # Controls the `agents.static_definitions` configuration setting.
  129. #
  130. # 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.
  131. # You can also define your own agents via `matrix_bot_baibot_config_agents_static_definitions_custom`.
  132. matrix_bot_baibot_config_agents_static_definitions: "{{ matrix_bot_baibot_config_agents_static_definitions_auto + matrix_bot_baibot_config_agents_static_definitions_custom }}"
  133. matrix_bot_baibot_config_agents_static_definitions_auto: |-
  134. {{
  135. ([{
  136. 'id': matrix_bot_baibot_config_agents_static_definitions_anthropic_id,
  137. 'provider': matrix_bot_baibot_config_agents_static_definitions_anthropic_provider,
  138. 'config': matrix_bot_baibot_config_agents_static_definitions_anthropic_config,
  139. }] if matrix_bot_baibot_config_agents_static_definitions_anthropic_enabled else [])
  140. +
  141. ([{
  142. 'id': matrix_bot_baibot_config_agents_static_definitions_groq_id,
  143. 'provider': matrix_bot_baibot_config_agents_static_definitions_groq_provider,
  144. 'config': matrix_bot_baibot_config_agents_static_definitions_groq_config,
  145. }] if matrix_bot_baibot_config_agents_static_definitions_groq_enabled else [])
  146. +
  147. ([{
  148. 'id': matrix_bot_baibot_config_agents_static_definitions_mistral_id,
  149. 'provider': matrix_bot_baibot_config_agents_static_definitions_mistral_provider,
  150. 'config': matrix_bot_baibot_config_agents_static_definitions_mistral_config,
  151. }] if matrix_bot_baibot_config_agents_static_definitions_mistral_enabled else [])
  152. +
  153. ([{
  154. 'id': matrix_bot_baibot_config_agents_static_definitions_openai_id,
  155. 'provider': matrix_bot_baibot_config_agents_static_definitions_openai_provider,
  156. 'config': matrix_bot_baibot_config_agents_static_definitions_openai_config,
  157. }] if matrix_bot_baibot_config_agents_static_definitions_openai_enabled else [])
  158. }}
  159. matrix_bot_baibot_config_agents_static_definitions_custom: []
  160. 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 %}"
  161. ########################################################################################
  162. # #
  163. # Anthropic agent configuration #
  164. # #
  165. ########################################################################################
  166. matrix_bot_baibot_config_agents_static_definitions_anthropic_enabled: false
  167. matrix_bot_baibot_config_agents_static_definitions_anthropic_id: anthropic
  168. matrix_bot_baibot_config_agents_static_definitions_anthropic_provider: anthropic
  169. 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) }}"
  170. matrix_bot_baibot_config_agents_static_definitions_anthropic_config_yaml: "{{ lookup('template', 'templates/provider/anthropic-config.yml.j2') }}"
  171. 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 {} }}"
  172. matrix_bot_baibot_config_agents_static_definitions_anthropic_config_extension_yaml: |
  173. # Your custom YAML configuration for this provider's configuration goes here.
  174. # This configuration extends the default starting configuration (`matrix_bot_baibot_config_agents_static_definitions_anthropic_config`).
  175. #
  176. # You can override individual variables from the default configuration, or introduce new ones.
  177. #
  178. # If you need something more special, you can take full control by
  179. # completely redefining `matrix_bot_baibot_config_agents_static_definitions_anthropic_config_yaml`.
  180. #
  181. # Example configuration extension follows:
  182. #
  183. # text_generation:
  184. # temperature: 3.5
  185. matrix_bot_baibot_config_agents_static_definitions_anthropic_config_base_url: https://api.anthropic.com/v1
  186. matrix_bot_baibot_config_agents_static_definitions_anthropic_config_api_key: ""
  187. matrix_bot_baibot_config_agents_static_definitions_anthropic_config_text_generation_enabled: true
  188. # For valid model choices, see: https://docs.claude.com/en/docs/about-claude/models/overview
  189. matrix_bot_baibot_config_agents_static_definitions_anthropic_config_text_generation_model_id: claude-sonnet-4-5-20250929
  190. # The prompt text to use (can be null or empty to not use a prompt).
  191. # See: https://huggingface.co/docs/transformers/en/tasks/prompting
  192. matrix_bot_baibot_config_agents_static_definitions_anthropic_config_text_generation_prompt: "{{ matrix_bot_baibot_config_agents_static_definitions_prompt }}"
  193. # The temperature parameter controls the randomness of the generated text.
  194. # See: https://blogs.novita.ai/what-are-large-language-model-settings-temperature-top-p-and-max-tokens/#what-is-llm-temperature
  195. matrix_bot_baibot_config_agents_static_definitions_anthropic_config_text_generation_temperature: 1.0
  196. matrix_bot_baibot_config_agents_static_definitions_anthropic_config_text_generation_max_response_tokens: 8192
  197. matrix_bot_baibot_config_agents_static_definitions_anthropic_config_text_generation_max_context_tokens: 204800
  198. ########################################################################################
  199. # #
  200. # /Anthropic agent configuration #
  201. # #
  202. ########################################################################################
  203. ########################################################################################
  204. # #
  205. # Groq agent configuration #
  206. # #
  207. ########################################################################################
  208. matrix_bot_baibot_config_agents_static_definitions_groq_enabled: false
  209. matrix_bot_baibot_config_agents_static_definitions_groq_id: groq
  210. matrix_bot_baibot_config_agents_static_definitions_groq_provider: groq
  211. 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) }}"
  212. matrix_bot_baibot_config_agents_static_definitions_groq_config_yaml: "{{ lookup('template', 'templates/provider/groq-config.yml.j2') }}"
  213. 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 {} }}"
  214. matrix_bot_baibot_config_agents_static_definitions_groq_config_extension_yaml: |
  215. # Your custom YAML configuration for this provider's configuration goes here.
  216. # This configuration extends the default starting configuration (`matrix_bot_baibot_config_agents_static_definitions_groq_config`).
  217. #
  218. # You can override individual variables from the default configuration, or introduce new ones.
  219. #
  220. # If you need something more special, you can take full control by
  221. # completely redefining `matrix_bot_baibot_config_agents_static_definitions_groq_config_yaml`.
  222. #
  223. # Example configuration extension follows:
  224. #
  225. # text_generation:
  226. # temperature: 3.5
  227. matrix_bot_baibot_config_agents_static_definitions_groq_config_base_url: https://api.groq.com/openai/v1
  228. matrix_bot_baibot_config_agents_static_definitions_groq_config_api_key: ""
  229. matrix_bot_baibot_config_agents_static_definitions_groq_config_text_generation_enabled: true
  230. # For valid model choices, see: https://platform.groq.com/docs/models
  231. matrix_bot_baibot_config_agents_static_definitions_groq_config_text_generation_model_id: ""
  232. # The prompt text to use (can be null or empty to not use a prompt).
  233. # See: https://huggingface.co/docs/transformers/en/tasks/prompting
  234. matrix_bot_baibot_config_agents_static_definitions_groq_config_text_generation_prompt: "{{ matrix_bot_baibot_config_agents_static_definitions_prompt }}"
  235. # The temperature parameter controls the randomness of the generated text.
  236. # See: https://blogs.novita.ai/what-are-large-language-model-settings-temperature-top-p-and-max-tokens/#what-is-llm-temperature
  237. matrix_bot_baibot_config_agents_static_definitions_groq_config_text_generation_temperature: 1.0
  238. matrix_bot_baibot_config_agents_static_definitions_groq_config_text_generation_max_response_tokens: 4096
  239. matrix_bot_baibot_config_agents_static_definitions_groq_config_text_generation_max_context_tokens: 131072
  240. matrix_bot_baibot_config_agents_static_definitions_groq_config_speech_to_text_enabled: true
  241. matrix_bot_baibot_config_agents_static_definitions_groq_config_speech_to_text_model_id: whisper-large-v3
  242. ########################################################################################
  243. # #
  244. # /Groq agent configuration #
  245. # #
  246. ########################################################################################
  247. ########################################################################################
  248. # #
  249. # Mistral agent configuration #
  250. # #
  251. ########################################################################################
  252. matrix_bot_baibot_config_agents_static_definitions_mistral_enabled: false
  253. matrix_bot_baibot_config_agents_static_definitions_mistral_id: mistral
  254. matrix_bot_baibot_config_agents_static_definitions_mistral_provider: mistral
  255. 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) }}"
  256. matrix_bot_baibot_config_agents_static_definitions_mistral_config_yaml: "{{ lookup('template', 'templates/provider/mistral-config.yml.j2') }}"
  257. 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 {} }}"
  258. matrix_bot_baibot_config_agents_static_definitions_mistral_config_extension_yaml: |
  259. # Your custom YAML configuration for this provider's configuration goes here.
  260. # This configuration extends the default starting configuration (`matrix_bot_baibot_config_agents_static_definitions_mistral_config`).
  261. #
  262. # You can override individual variables from the default configuration, or introduce new ones.
  263. #
  264. # If you need something more special, you can take full control by
  265. # completely redefining `matrix_bot_baibot_config_agents_static_definitions_mistral_config_yaml`.
  266. #
  267. # Example configuration extension follows:
  268. #
  269. # text_generation:
  270. # temperature: 3.5
  271. matrix_bot_baibot_config_agents_static_definitions_mistral_config_base_url: https://api.mistral.ai/v1
  272. matrix_bot_baibot_config_agents_static_definitions_mistral_config_api_key: ""
  273. matrix_bot_baibot_config_agents_static_definitions_mistral_config_text_generation_enabled: true
  274. # For valid model choices, see: https://platform.mistral.com/docs/models
  275. matrix_bot_baibot_config_agents_static_definitions_mistral_config_text_generation_model_id: mistral-large-latest
  276. # The prompt text to use (can be null or empty to not use a prompt).
  277. # See: https://huggingface.co/docs/transformers/en/tasks/prompting
  278. matrix_bot_baibot_config_agents_static_definitions_mistral_config_text_generation_prompt: "{{ matrix_bot_baibot_config_agents_static_definitions_prompt }}"
  279. # The temperature parameter controls the randomness of the generated text.
  280. # See: https://blogs.novita.ai/what-are-large-language-model-settings-temperature-top-p-and-max-tokens/#what-is-llm-temperature
  281. matrix_bot_baibot_config_agents_static_definitions_mistral_config_text_generation_temperature: 1.0
  282. matrix_bot_baibot_config_agents_static_definitions_mistral_config_text_generation_max_response_tokens: 4096
  283. matrix_bot_baibot_config_agents_static_definitions_mistral_config_text_generation_max_context_tokens: 128000
  284. ########################################################################################
  285. # #
  286. # /Mistral agent configuration #
  287. # #
  288. ########################################################################################
  289. ########################################################################################
  290. # #
  291. # OpenAI agent configuration #
  292. # #
  293. ########################################################################################
  294. matrix_bot_baibot_config_agents_static_definitions_openai_enabled: false
  295. matrix_bot_baibot_config_agents_static_definitions_openai_id: openai
  296. matrix_bot_baibot_config_agents_static_definitions_openai_provider: openai
  297. 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) }}"
  298. matrix_bot_baibot_config_agents_static_definitions_openai_config_yaml: "{{ lookup('template', 'templates/provider/openai-config.yml.j2') }}"
  299. 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 {} }}"
  300. matrix_bot_baibot_config_agents_static_definitions_openai_config_extension_yaml: |
  301. # Your custom YAML configuration for this provider's configuration goes here.
  302. # This configuration extends the default starting configuration (`matrix_bot_baibot_config_agents_static_definitions_openai_config`).
  303. #
  304. # You can override individual variables from the default configuration, or introduce new ones.
  305. #
  306. # If you need something more special, you can take full control by
  307. # completely redefining `matrix_bot_baibot_config_agents_static_definitions_openai_config_yaml`.
  308. #
  309. # Example configuration extension follows:
  310. #
  311. # text_generation:
  312. # temperature: 3.5
  313. matrix_bot_baibot_config_agents_static_definitions_openai_config_base_url: https://api.openai.com/v1
  314. # The API key is intentionally not required. Some OpenAI-compatible APIs do not require a key.
  315. matrix_bot_baibot_config_agents_static_definitions_openai_config_api_key: ""
  316. matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_enabled: true
  317. # For valid model choices, see: https://platform.openai.com/docs/models
  318. matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_model_id: gpt-5.2
  319. # The prompt text to use (can be null or empty to not use a prompt).
  320. # See: https://huggingface.co/docs/transformers/en/tasks/prompting
  321. matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_prompt: "{{ matrix_bot_baibot_config_agents_static_definitions_prompt }}"
  322. # The temperature parameter controls the randomness of the generated text.
  323. # See: https://blogs.novita.ai/what-are-large-language-model-settings-temperature-top-p-and-max-tokens/#what-is-llm-temperature
  324. matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_temperature: 1.0
  325. matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_max_response_tokens: ~
  326. matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_max_completion_tokens: 128000
  327. matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_max_context_tokens: 400000
  328. # Built-in tools configuration (OpenAI only).
  329. # These tools extend the model's capabilities but are disabled by default following upstream defaults.
  330. # See: https://github.com/etkecc/baibot/blob/main/docs/features.md#%EF%B8%8F-built-in-tools-openai-only
  331. matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_tools_web_search: false
  332. matrix_bot_baibot_config_agents_static_definitions_openai_config_text_generation_tools_code_interpreter: false
  333. matrix_bot_baibot_config_agents_static_definitions_openai_config_speech_to_text_enabled: true
  334. matrix_bot_baibot_config_agents_static_definitions_openai_config_speech_to_text_model_id: whisper-1
  335. matrix_bot_baibot_config_agents_static_definitions_openai_config_text_to_speech_enabled: true
  336. matrix_bot_baibot_config_agents_static_definitions_openai_config_text_to_speech_model_id: tts-1-hd
  337. matrix_bot_baibot_config_agents_static_definitions_openai_config_text_to_speech_voice: onyx
  338. matrix_bot_baibot_config_agents_static_definitions_openai_config_text_to_speech_speed: 1.0
  339. matrix_bot_baibot_config_agents_static_definitions_openai_config_text_to_speech_response_format: opus
  340. matrix_bot_baibot_config_agents_static_definitions_openai_config_image_generation_enabled: true
  341. matrix_bot_baibot_config_agents_static_definitions_openai_config_image_generation_model_id: gpt-image-1.5
  342. matrix_bot_baibot_config_agents_static_definitions_openai_config_image_generation_style: null
  343. matrix_bot_baibot_config_agents_static_definitions_openai_config_image_generation_size: null
  344. matrix_bot_baibot_config_agents_static_definitions_openai_config_image_generation_quality: null
  345. ########################################################################################
  346. # #
  347. # /OpenAI agent configuration #
  348. # #
  349. ########################################################################################
  350. # Controls the `initial_global_config.handler.catch_all` configuration setting.
  351. #
  352. # This is an initial global configuration setting.
  353. # It only affects the first run of the bot. Configuration is later managed at runtime.
  354. matrix_bot_baibot_config_initial_global_config_handler_catch_all: null
  355. # Controls the `initial_global_config.handler.text_generation` configuration setting.
  356. #
  357. # This is an initial global configuration setting.
  358. # It only affects the first run of the bot. Configuration is later managed at runtime.
  359. matrix_bot_baibot_config_initial_global_config_handler_text_generation: null
  360. # Controls the `initial_global_config.handler.text_to_speech` configuration setting.
  361. #
  362. # This is an initial global configuration setting.
  363. # It only affects the first run of the bot. Configuration is later managed at runtime.
  364. matrix_bot_baibot_config_initial_global_config_handler_text_to_speech: null
  365. # Controls the `initial_global_config.handler.speech_to_text` configuration setting.
  366. #
  367. # This is an initial global configuration setting.
  368. # It only affects the first run of the bot. Configuration is later managed at runtime.
  369. matrix_bot_baibot_config_initial_global_config_handler_speech_to_text: null
  370. # Controls the `initial_global_config.handler.image_generation` configuration setting.
  371. #
  372. # This is an initial global configuration setting.
  373. # It only affects the first run of the bot. Configuration is later managed at runtime.
  374. matrix_bot_baibot_config_initial_global_config_handler_image_generation: null
  375. # Controls the `initial_global_config.user_patterns` configuration setting.
  376. #
  377. # A space-separated list of MXID patterns which specify who can use the bot.
  378. # By default, we let anyone on the homeserver use the bot.
  379. #
  380. # This is an initial global configuration setting.
  381. # It only affects the first run of the bot. Configuration is later managed at runtime.
  382. matrix_bot_baibot_config_initial_global_config_user_patterns:
  383. - "@*:{{ matrix_bot_baibot_config_homeserver_server_name }}"
  384. # Controls the `logging` configuration setting.
  385. #
  386. # This could take a single value (e.g. `warn`) to affect all tracing targets,
  387. # or individual libraries (e.g. `mxlink`, `baibot`) can be configured independently of the main level.
  388. #
  389. # Below, we configure the logging level for:
  390. # - the bot (baibot), via `matrix_bot_baibot_config_logging_level_baibot`
  391. # - the bot framework that the bot is based on (mxlink), via `matrix_bot_baibot_config_logging_level_mxlink`
  392. # - everything else (external libraries), via `matrix_bot_baibot_config_logging_level_other_libs`
  393. #
  394. # Valid values for each level are: `trace`, `debug`, `info`, `warn`, `error`.
  395. # Learn more here: https://stackoverflow.com/a/73735203
  396. 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 }}"
  397. # Adjust the logging level for other libraries used by the bot.
  398. matrix_bot_baibot_config_logging_level_other_libs: warn
  399. # Affects the logging level of the bot framework (mxlink) that the bot is based on.
  400. # Related to `matrix_bot_baibot_config_logging`
  401. matrix_bot_baibot_config_logging_level_mxlink: info
  402. # Affects the logging level of the bot itself.
  403. # Related to `matrix_bot_baibot_config_logging`
  404. matrix_bot_baibot_config_logging_level_baibot: info
  405. # Holds the final baibot configuration (a combination of the default and its extension).
  406. # You most likely don't need to touch this variable. Instead, see `matrix_bot_baibot_configuration_yaml` or `matrix_bot_baibot_configuration_extension_yaml`.
  407. matrix_bot_baibot_configuration: "{{ matrix_bot_baibot_configuration_yaml | from_yaml | combine(matrix_bot_baibot_configuration_extension, recursive=True) }}"
  408. # Default baibot configuration template which covers the generic use case.
  409. # You can customize it by controlling the various variables inside it.
  410. #
  411. # For a more advanced customization, you can extend the default (see `matrix_bot_baibot_configuration_extension_yaml`)
  412. # or completely replace this variable with your own template.
  413. matrix_bot_baibot_configuration_yaml: "{{ lookup('template', 'templates/config.yaml.j2') }}"
  414. matrix_bot_baibot_configuration_extension_yaml: |
  415. # Your custom YAML configuration for baibot goes here.
  416. # This configuration extends the default starting configuration (`matrix_bot_baibot_configuration_yaml`).
  417. #
  418. # You can override individual variables from the default configuration, or introduce new ones.
  419. #
  420. # If you need something more special, you can take full control by
  421. # completely redefining `matrix_bot_baibot_configuration_yaml`.
  422. #
  423. # Example configuration extension follows:
  424. #
  425. # user:
  426. # password: something
  427. 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 {} }}"
  428. # Additional environment variables to pass to the baibot container.
  429. #
  430. # Environment variables take priority over settings in the configuration file.
  431. #
  432. # Example:
  433. # matrix_bot_baibot_environment_variables_extension: |
  434. # BAIBOT_USER_PASSWORD=password
  435. matrix_bot_baibot_environment_variables_extension: ''
  436. # matrix_bot_baibot_restart_necessary controls whether the service
  437. # will be restarted (when true) or merely started (when false) by the
  438. # systemd service manager role (when conditional restart is enabled).
  439. #
  440. # This value is automatically computed during installation based on whether
  441. # any configuration files, the systemd service file, or the container image changed.
  442. # The default of `false` means "no restart needed" — appropriate when the role's
  443. # installation tasks haven't run (e.g., due to --tags skipping them).
  444. matrix_bot_baibot_restart_necessary: false