Matrix Docker Ansible eploy
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
 
 

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