mirror of
https://github.com/spantaleev/matrix-docker-ansible-deploy.git
synced 2024-11-18 13:14:52 +00:00
ce893c1b22
The new version is very broken. It has at least 2 issues. The first one is: ``` Error: maxPromptTokens + max_tokens (3097 + 1024 = 4121) must be less than or equal to maxContextTokens (4097) at ChatGPTClient.setOptions (file:///usr/src/app/node_modules/@waylaidwanderer/chatgpt-api/src/ChatGPTClient.js:72:19) at new ChatGPTClient (file:///usr/src/app/node_modules/@waylaidwanderer/chatgpt-api/src/ChatGPTClient.js:23:14) at main (file:///usr/src/app/dist/index.js:62:21) at file:///usr/src/app/dist/index.js:94:1 at ModuleJob.run (node:internal/modules/esm/module_job:218:25) at async ModuleLoader.import (node:internal/modules/esm/loader:329:24) at async loadESM (node:internal/process/esm_loader:28:7) at async handleMainPromise (node:internal/modules/run_main:113:12) ``` Likely related to: - https://github.com/matrixgpt/matrix-chatgpt-bot/issues/246 - https://github.com/matrixgpt/matrix-chatgpt-bot/pull/248 It can be tweaked around by overriding some default environment variables (`roles/custom/matrix-bot-chatgpt/templates/env.j2`) in order to tweak them: ``` CHATGPT_MAX_CONTEXT_TOKENS=4097 CHATGPT_MAX_PROMPT_TOKENS=2500 ``` This leads us to another issue: ``` node:internal/process/promises:289 triggerUncaughtException(err, true /* fromPromise */); ^ [Error: Failed to deserialize or serialize a JSON value missing field `version` at line 1 column 6704] { code: 'GenericFailure' } Node.js v20.11.1 error Command failed with exit code 1. ``` ... whatever that means.
107 lines
5.4 KiB
YAML
107 lines
5.4 KiB
YAML
---
|
|
# chatgpt is a bot for chatting to openAI chatgpt matrix bot
|
|
# Project source code URL: https://github.com/matrixgpt/matrix-chatgpt-bot
|
|
|
|
matrix_bot_chatgpt_enabled: true
|
|
|
|
# renovate: datasource=docker depName=ghcr.io/matrixgpt/matrix-chatgpt-bot
|
|
matrix_bot_chatgpt_version: 3.1.4
|
|
|
|
matrix_bot_chatgpt_container_image_self_build: false
|
|
matrix_bot_chatgpt_container_image_self_build_repo: "https://github.com/matrixgpt/matrix-chatgpt-bot"
|
|
matrix_bot_chatgpt_container_image_self_build_repo_version: "{{ 'main' if matrix_bot_chatgpt_version == 'latest' else matrix_bot_chatgpt_version }}"
|
|
|
|
matrix_bot_chatgpt_container_image: "{{ matrix_bot_chatgpt_container_image_name_prefix }}matrixgpt/matrix-chatgpt-bot:{{ matrix_bot_chatgpt_container_image_tag }}"
|
|
matrix_bot_chatgpt_container_image_name_prefix: "{{ 'localhost/' if matrix_bot_chatgpt_container_image_self_build else matrix_bot_chatgpt_container_image_registry_prefix }}"
|
|
matrix_bot_chatgpt_container_image_tag: "{{ matrix_bot_chatgpt_version }}"
|
|
matrix_bot_chatgpt_container_image_force_pull: "{{ matrix_bot_chatgpt_container_image.endswith(':latest') }}"
|
|
matrix_bot_chatgpt_container_image_registry_prefix: ghcr.io/
|
|
|
|
matrix_bot_chatgpt_base_path: "{{ matrix_base_data_path }}/chatgpt"
|
|
matrix_bot_chatgpt_config_path: "{{ matrix_bot_chatgpt_base_path }}/config"
|
|
matrix_bot_chatgpt_data_path: "{{ matrix_bot_chatgpt_base_path }}/data"
|
|
matrix_bot_chatgpt_container_src_path: "{{ matrix_bot_chatgpt_base_path }}/container-src"
|
|
|
|
# Controls how long to wait for the container to stop gracefully before killing it.
|
|
# We use a small value here, because this container does not seem to handle the SIGTERM signal.
|
|
matrix_bot_chatgpt_container_stop_grace_time_seconds: 1
|
|
|
|
matrix_bot_chatgpt_container_network: ""
|
|
|
|
matrix_bot_chatgpt_container_additional_networks: "{{ matrix_bot_chatgpt_container_additional_networks_auto + matrix_bot_chatgpt_container_additional_networks_custom }}"
|
|
matrix_bot_chatgpt_container_additional_networks_auto: []
|
|
matrix_bot_chatgpt_container_additional_networks_custom: []
|
|
|
|
# A list of extra arguments to pass to the container
|
|
matrix_bot_chatgpt_container_extra_arguments: []
|
|
|
|
# List of systemd services that matrix-bot-chatgpt.service depends on
|
|
matrix_bot_chatgpt_systemd_required_services_list: "{{ matrix_bot_chatgpt_systemd_required_services_list_default + matrix_bot_chatgpt_systemd_required_services_list_auto + matrix_bot_chatgpt_systemd_required_services_list_custom }}"
|
|
matrix_bot_chatgpt_systemd_required_services_list_default: ['docker.service']
|
|
matrix_bot_chatgpt_systemd_required_services_list_auto: []
|
|
matrix_bot_chatgpt_systemd_required_services_list_custom: []
|
|
|
|
# List of systemd services that matrix-bot-chatgpt.service wants
|
|
matrix_bot_chatgpt_systemd_wanted_services_list: []
|
|
|
|
# ChatGPT Settings
|
|
matrix_bot_chatgpt_openai_api_key: ''
|
|
matrix_bot_chatgpt_api_model: 'gpt-3.5-turbo'
|
|
matrix_bot_chatgpt_context: 'thread' # CHATGPT_CONTEXT="thread"
|
|
|
|
matrix_bot_chatgpt_keyv_backend: 'file'
|
|
matrix_bot_chatgpt_keyv_url: ''
|
|
matrix_bot_chatgpt_keyv_bot_encryption: false
|
|
matrix_bot_chatgpt_keyv_bot_storage: true
|
|
|
|
# Matrix Static Settings (required, see notes)
|
|
# Defaults to "https://matrix.org"
|
|
matrix_bot_chatgpt_matrix_homeserver_url: "" # MATRIX_HOMESERVER_URL=
|
|
# With the @ and :DOMAIN, ie @SOMETHING:DOMAIN, needs to be set, created manually beforehand.
|
|
matrix_bot_chatgpt_matrix_bot_username_localpart: 'bot.chatgpt'
|
|
matrix_bot_chatgpt_matrix_bot_username: "@{{ matrix_bot_chatgpt_matrix_bot_username_localpart }}:{{ matrix_domain }}" # MATRIX_BOT_USERNAME=
|
|
# Set `MATRIX_BOT_PASSWORD` the bot will print an `MATRIX_ACCESS_TOKEN` to the terminal
|
|
# or https://webapps.stackexchange.com/questions/131056/how-to-get-an-access-token-for-element-riot-matrix
|
|
matrix_bot_chatgpt_matrix_access_token: '' # MATRIX_ACCESS_TOKEN=
|
|
# Once `MATRIX_BOT_ACCESS_TOKEN` is set this is no longer used.
|
|
matrix_bot_chatgpt_matrix_bot_password: '' # MATRIX_BOT_PASSWORD=
|
|
|
|
# Matrix Configurable Settings Defaults (optional)
|
|
matrix_bot_chatgpt_matrix_default_prefix: "!chatgpt " # MATRIX_DEFAULT_PREFIX= Leave prefix blank to reply to all messages, trailing space matters
|
|
matrix_bot_chatgpt_matrix_default_prefix_reply: false # MATRIX_DEFAULT_PREFIX_REPLY=
|
|
|
|
# Matrix Access Control (optional)
|
|
#
|
|
# Lists of space-separated entries. Example:
|
|
# matrix_bot_chatgpt_matrix_whitelist: ":{{ matrix_domain }} :second-domain.com :third-domain.com"
|
|
matrix_bot_chatgpt_matrix_blacklist: ''
|
|
matrix_bot_chatgpt_matrix_whitelist: ':{{ matrix_domain }}'
|
|
|
|
# Matrix Feature Flags (optional)
|
|
matrix_bot_chatgpt_matrix_autojoin: true # MATRIX_AUTOJOIN=true
|
|
matrix_bot_chatgpt_matrix_encryption: true # MATRIX_ENCRYPTION=true
|
|
matrix_bot_chatgpt_matrix_threads: true # MATRIX_THREADS=true
|
|
matrix_bot_chatgpt_matrix_rich_text: true # MATRIX_RICH_TEXT=true
|
|
|
|
|
|
# A list of admins
|
|
# Example set of rules:
|
|
# matrix_bot_chatgpt_admins:
|
|
# - @someone:example.com
|
|
# - @another:example.com
|
|
# - @bot.*:example.com
|
|
# - @*:another.com
|
|
# matrix_bot_chatgpt_admins: "{{ [matrix_admin] if matrix_admin else [] }}"
|
|
|
|
# Additional environment variables to pass to the chatgpt container
|
|
#
|
|
# You can discover additional environment variables from:
|
|
# https://github.com/matrixgpt/matrix-chatgpt-bot/blob/main/src/env.ts
|
|
#
|
|
# Example:
|
|
# matrix_bot_chatgpt_environment_variables_extension: |
|
|
# chatgpt_TEXT_DONE=Done
|
|
matrix_bot_chatgpt_environment_variables_extension: ''
|
|
|
|
matrix_bot_chatgpt_matrix_bot_prompt_prefix: 'Instructions:\nYou are ChatGPT, a large language model trained by OpenAI.'
|