Discourse Chatbot 🤖

Огромное спасибо за вашу помощь и обновление @merefield

1 лайк

Тем не менее, в этом выпуске есть ошибка. Я исправлю её и обновлю информацию здесь. Пока не обновляйтесь.

Это исправлено: FIX: do not exlude single user prompts in submission by merefield · Pull Request #120 · merefield/discourse-chatbot · GitHub

Спасибо за ваше терпение.

3 лайка

Я обновил плагин. Проблем с ответами чат-бота нет. Но теперь чат-бот выдаёт ошибку, что не может увидеть содержимое изображения. Хочу сообщить вам об этом. Моя настройка зрения: напрямую.

1 лайк

Спасибо за отчет. Я посмотрю.

1 лайк

Это должно быть исправлено начиная с:

Однако в ходе тестирования я заметил кое-что интересное.

В Discourse есть небольшая задержка, прежде чем изображения полностью отразятся в данных сообщения. Поэтому, если бот отвечает слишком быстро, он может не заметить наличие изображения.

Решение — увеличить значение:

chatbot reply job time delay — я тестировал значения 0 и 2; 0 часто оказывается слишком быстрым, поэтому немного замедлите работу.

Если вы всегда ссылаетесь на изображение из предыдущего сообщения, проблем не возникнет. Проблема возникает только в том случае, если вы загружаете изображение и сразу же ссылаетесь на него в том же сообщении, например: «опиши это изображение».

1 лайк

Это значение было установлено на 1, теперь я изменил его на 2. Я обновлю и попробую. Спасибо за исправление.

1 лайк

Я установил значение по умолчанию на 2, а максимальное — на 5, на случай если некоторым форумам Discourse потребуется больше времени для обработки изображений.

1 лайк

Я обновил плагин и протестировал 4 изображения, но ошибок не возникло. Спасибо за быстрое исправление.

1 лайк

Чтобы прояснить, что я имею в виду, вот пример:

Я не хочу вываливать весь этот хаос, когда задержка ответа равна 0 :smiley:

2 лайка

Привет! Есть ли планы добавить поддержку o1? Она была выпущена для клиентов уровня 4 сегодня. По крайней мере, одна из проблем, на которую жалуется o1, касается следующего:

Чат-бот: Возникла проблема с завершением чата: статус: 400, сообщение: Не поддерживаемое значение: ‘messages[0].role’ не поддерживает ‘system’ для этой модели.

1 лайк

Эта модель — сплошная головная боль :sweat_smile:

https://platform.openai.com/docs/guides/reasoning/beta-limitations

Вы уверены, что она будет полезна без инструментов, без персонализированного персонажа (так как нет системного промпта) и при такой высокой стоимости?

1 лайк

Добавлена поддержка o1-preview и o1-mini.

Вы обязаны выбрать тип бота basic (поскольку инструменты пока не поддерживаются OpenAI!).

Например:

Примечание: на момент написания для доступа к этим бета-моделям необходим уровень Tier 4. Следите за своей электронной почтой, чтобы узнать, когда они станут доступны вам.

2 лайка

Большое спасибо!

О, безусловно. Многие наши варианты использования связаны с помощью в решении научных вопросов и задач, и o1 значительно превосходит 4o. Фактически, мы никогда не переходили с 4 на 4o, несмотря на то, что последняя дешевле, потому что она явно хуже справляется с научными задачами.

1 лайк

@hiddenseal (и всем, кто любит научные темы)

Нашел обходной путь для использования математических уравнений с o1 без необходимости в системном промпте:

Например:

Если x в пятой степени минус 1 равно нулю, чему равен x?

Используйте следующий формат для ответа:

$$
уравнения и формулы
$$

Обычно такую информацию о форматировании указывают в системном промпте (если ваш сайт регулярно использует ботов для математики). Но у o1 пока нет такой возможности (пока?), поэтому нужно явно указывать это в самом запросе. Похоже, что это работает :rocket:

2 лайка

После последнего обновления я получаю следующую ошибку. Хотел сообщить вам.

Чат-бот: Произошла проблема с завершением чата: статус: 400, сообщение: Неизвестный аргумент запроса: max_completion_tokens

Ещё раз: вы должны следить за последней версией API

Параметр max_tokens устарел и заменяется на max_completion_tokens

Примечание: o1-mini вообще не работает с max_tokens.

Убедитесь, что у вас установлена последняя версия Azure API.

Если это невозможно, создайте ветку в вашем форке, соответствующую коммиту до внесения изменений, и клонируйте этот форк и ветку в app.yml.

2 лайка

Я только что протестировал Chatbot с новой по умолчанию моделью 3B llama3.2 локально и должен сказать, что это НЕВЕРОЯТНО.

Инструменты работают, и это очень быстро.

Отличная работа, Meta!

Это фантастический вариант для разработки или экспериментов с низкими затратами или при ограниченном доступе к интернету.

Настройки:

(В этом случае выпадающий список моделей игнорируется, так как вы указали опцию пользовательской модели)

У вас должен быть установлен и запущен ollama.

4 лайка

@merefield

Спасибо за этот отличный плагин! Я работаю над версией нашего сайта с самостоятельным размещением, чтобы поэкспериментировать с ней. Моя цель — повторить то, что вы сделали здесь: Building a technical support chatbot

Я следую инструкциям и добавил

- git clone https://github.com/merefield/discourse-chatbot.git

в свой файл app.yml.

Однако при выполнении ./launcher rebuild app возникает ошибка:

Gem::LoadError: can’t activate multipart-post-2.2.3, already activated multipart-post-2.4.0 (Gem::LoadError)

Полные сообщения об ошибках

I, [2024-10-04T14:03:14.844712 #1] INFO – : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf

I, [2024-10-04T14:03:14.846521 #1] INFO – : > sleep 10

2259:C 04 Oct 2024 14:03:14.854 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo

2259:C 04 Oct 2024 14:03:14.854 # Redis version=7.0.7, bits=64, commit=00000000, modified=0, pid=2259, just started

2259:C 04 Oct 2024 14:03:14.854 # Configuration loaded

2259:M 04 Oct 2024 14:03:14.855 * monotonic clock: POSIX clock_gettime

2259:M 04 Oct 2024 14:03:14.855 # Warning: Could not create server TCP listening socket *:6379: bind: Address already in use

2259:M 04 Oct 2024 14:03:14.855 # Failed listening on port 6379 (TCP), aborting.

I, [2024-10-04T14:03:24.849199 #1] INFO – :

I, [2024-10-04T14:03:24.849755 #1] INFO – : > cd /var/www/discourse && su discourse -c ‘bundle exec rake db:migrate’

rake aborted!

Gem::LoadError: can’t activate multipart-post-2.2.3, already activated multipart-post-2.4.0 (Gem::LoadError)

/var/www/discourse/lib/plugin_gem.rb:25:in `load’

/var/www/discourse/lib/plugin/instance.rb:824:in `gem’

/var/www/discourse/plugins/discourse-zendesk-plugin/plugin.rb:13:in `activate!’

/var/www/discourse/lib/plugin/instance.rb:767:in `instance_eval’

/var/www/discourse/lib/plugin/instance.rb:767:in `activate!’

/var/www/discourse/lib/discourse.rb:348:in `block in activate_plugins!’

/var/www/discourse/lib/discourse.rb:345:in `each’

/var/www/discourse/lib/discourse.rb:345:in `activate_plugins!’

/var/www/discourse/config/application.rb:232:in `block in class:Application

/var/www/discourse/lib/plugin.rb:6:in `initialization_guard’

/var/www/discourse/config/application.rb:232:in `class:Application

/var/www/discourse/config/application.rb:75:in `module:Discourse

/var/www/discourse/config/application.rb:74:in `<top (required)>’

/var/www/discourse/Rakefile:7:in `<top (required)>’

/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/exe/rake:27:in `<top (required)>’

/usr/local/bin/bundle:25:in `load’

/usr/local/bin/bundle:25:in `’

(See full trace by running task with --trace)

I, [2024-10-04T14:03:33.989382 #1] INFO – :

I, [2024-10-04T14:03:33.989950 #1] INFO – : Terminating async processes

I, [2024-10-04T14:03:33.989982 #1] INFO – : Sending INT to HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main pid: 36

I, [2024-10-04T14:03:33.990027 #1] INFO – : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 104

104:signal-handler (1728050613) Received SIGTERM scheduling shutdown…

2024-10-04 14:03:33.990 UTC [36] LOG: received fast shutdown request

2024-10-04 14:03:33.991 UTC [36] LOG: aborting any active transactions

2024-10-04 14:03:33.996 UTC [36] LOG: background worker “logical replication launcher” (PID 51) exited with exit code 1

2024-10-04 14:03:33.997 UTC [46] LOG: shutting down

104:M 04 Oct 2024 14:03:34.007 # User requested shutdown…

104:M 04 Oct 2024 14:03:34.007 * Saving the final RDB snapshot before exiting.

2024-10-04 14:03:34.023 UTC [36] LOG: database system is shut down

104:M 04 Oct 2024 14:03:34.025 * DB saved on disk

104:M 04 Oct 2024 14:03:34.025 # Redis is now ready to exit, bye bye…

FAILED


Pups::ExecError: cd /var/www/discourse && su discourse -c ‘bundle exec rake db:migrate’ failed with return #<Process::Status: pid 2262 exit 1>

Location of failure: /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups/exec_command.rb:132:in `spawn’

exec failed with the params {“cd”=>“$home”, “tag”=>“migrate”, “hook”=>“db_migrate”, “cmd”=>[“su discourse -c ‘bundle exec rake db:migrate’”]}

bootstrap failed with exit code 1

** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.

./discourse-doctor may help diagnose the problem.

289408d3c0350809f88a235d9c3ae0b23074f4e1a727748bbc3ab3b205e18115

==================== END REBUILD LOG ====================

Failed to rebuild app.

Есть ли какие-то идеи, связано ли это с плагином?

1 лайк

Чат-бот зависит от gem multipart-post-2.4.0.

Похоже, ваш плагин для Zendesk устарел?

Я бы связался с автором и попросил его обновить его или создать pull request для плагина Zendesk :slight_smile:

В качестве альтернативы вы можете сделать форк Chatbot и проверить, работает ли он с более ранней версией.