Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.
[3.2][3.3] AI Labs с поддержкой Midjourney, ChatGPT, DALL-E (OpenAI) и Stable Diffusion (Stability AI)
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x/3.3.x | FAQ | Как задавать вопросы | Как устанавливать расширения
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ).
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x/3.3.x | FAQ | Как задавать вопросы | Как устанавливать расширения
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ).
[3.2][3.3] AI Labs с поддержкой Midjourney, ChatGPT, DALL-E (OpenAI) и Stable Diffusion (Stability AI)
Название расширения: AI Labs
Автор: https://privet.fun
Описание расширения:
Добавьте искусственный интеллект на свою конференцию phpBB и приготовьтесь к захватывающему опыту.
В настоящее время поддерживаются ChatGPT, DALL-E (OpenAI) и Stable Diffusion (Stability AI).
Поддержка Midjourney будет доступна скоро.
Демо URLs:
ChatGPT
ChatGPT, custom prompt
DALL-E
Stable Diffusion
Midjourney, coming soon
Stable Diffusion by Leonardo AI, coming soon так-же доступен в виде Telegram bot https://t.me/stable_diffusion_superbot
Скачать: https://github.com/privet-fun/phpbb_ailabs
Язык:
Русский
Английский
Автор: https://privet.fun
Описание расширения:
Добавьте искусственный интеллект на свою конференцию phpBB и приготовьтесь к захватывающему опыту.
В настоящее время поддерживаются ChatGPT, DALL-E (OpenAI) и Stable Diffusion (Stability AI).
Поддержка Midjourney будет доступна скоро.
Демо URLs:
ChatGPT
ChatGPT, custom prompt
DALL-E
Stable Diffusion
Midjourney, coming soon
Stable Diffusion by Leonardo AI, coming soon так-же доступен в виде Telegram bot https://t.me/stable_diffusion_superbot
Скачать: https://github.com/privet-fun/phpbb_ailabs
Язык:
Русский
Английский
-
- phpBB 2.0.4
- Сообщения: 435
- Стаж: 6 лет 6 месяцев
- Откуда: Россия
- Благодарил (а): 183 раза
- Поблагодарили: 15 раз
Re: [3.2][3.3] AI Labs с поддержкой ChatGPT, DALL-E (OpenAI) и Stable Diffusion (Stability AI)
PHPBB 3.3.5 PHP 7.4
Отправлено спустя 2 минуты 25 секунд:
Бот пишет и потом цитата с ошибкой
Отправлено спустя 2 минуты 25 секунд:
Бот пишет и потом цитата с ошибкой
Спорт - сила
-
- phpBB 2.0.7
- Сообщения: 566
- Стаж: 7 лет 5 месяцев
- Благодарил (а): 278 раз
- Поблагодарили: 65 раз
Re: [3.2][3.3] AI Labs с поддержкой ChatGPT, DALL-E (OpenAI) и Stable Diffusion (Stability AI)
1smerch1, должно работать. Это я правил, так как у меня антиквариат Что в логах PHP?
Отправлено спустя 37 минут 51 секунду:
privet, ещё один момент. Или я что-то пропустил в настройках или что-то не срабатывает. Или же нужно дописать. При цитировании ответа бота, ему передается только сам вопрос без текста его цитаты. Из-за чего теряется контекст обсуждения. Насколько я понял, в аналогичном модуле в xenforo:
fetchMessagesFromThread – Loads the context for the bot from the topic. Bot quotes are transformed into his messages for the correct context.
Отправлено спустя 37 минут 51 секунду:
privet, ещё один момент. Или я что-то пропустил в настройках или что-то не срабатывает. Или же нужно дописать. При цитировании ответа бота, ему передается только сам вопрос без текста его цитаты. Из-за чего теряется контекст обсуждения. Насколько я понял, в аналогичном модуле в xenforo:
fetchMessagesFromThread – Loads the context for the bot from the topic. Bot quotes are transformed into his messages for the correct context.
Код: Выделить всё
public function fetchMessagesFromThread(
Thread $thread,
int $stopPosition = null, // Thread post position to which to load the context
?User $assistant = null, // Bot user to mark his messages in context
bool $transformAssistantQuotesToMessages = true, // If false, bot message quote messages will not be transformed into his messages
int $startPosition = null, // Thread post position from which to load the context
bool $removeQuotesFromAssistantMessages = true // Removes user post quotes from bot posts
)
Re: [3.2][3.3] AI Labs с поддержкой ChatGPT, DALL-E (OpenAI) и Stable Diffusion (Stability AI)
Если вы отвечаете в тред из сообщении (делаете квотирование) то история сообщений тоже будет чтобы бот мог иметь весь контекст при ответе.
В такой ситуации приходится отслеживать момент когда число токенов станивится больше допустимого максимума (техническик лимит модели gpt 3.5 4096 токенов) плюс надо отвести место под ответ (1024 токенов выше).
Если вы будете использовать другие модели или например задать меньше лимит на размер ответа то вам надо будет подредактировать это цифы.
Не уверен что смогу обьяснить лучше документации https://platform.openai.com/docs/api-re ... hat/create
Re: [3.2][3.3] AI Labs с поддержкой ChatGPT, DALL-E (OpenAI) и Stable Diffusion (Stability AI)
Там есть код который вытаскивает сам ответ и цепочку предыдущих ответов ext/privet/ailabs/controller/chatgpt.php :
Код: Выделить всё
if ($this->job['post_mode'] == 'quote') {
$history = ['post_text' => $this->job['post_text']];
$pattern = '/<QUOTE\sauthor="' . $this->job['ailabs_username'] . '"\spost_id="(.*)"\stime="(.*)"\suser_id="' . $this->job['ailabs_user_id'] . '">/';
$this->log['history.pattern'] = $pattern;
$this->log_flush();
$history_tokens = 0;
$round = -1;
do {
$round++;
$matches = null;
preg_match_all(
$pattern,
$history['post_text'],
$matches
);
$history = null;
if ($matches != null && !empty($matches) && !empty($matches[1][0])) {
$postid = (int) $matches[1][0];
$sql = 'SELECT j.job_id, j.post_id, j.response_post_id, j.request, j.response, p.post_text, j.request_tokens, j.response_tokens ' .
'FROM ' . $this->jobs_table . ' j ' .
'JOIN ' . POSTS_TABLE . ' p ON p.post_id = j.post_id ' .
'WHERE ' . $this->db->sql_build_array('SELECT', ['response_post_id' => $postid]);
$result = $this->db->sql_query($sql);
$history = $this->db->sql_fetchrow($result);
$this->db->sql_freeresult($result);
if (!empty($history)) {
$count_tokens = $history['request_tokens'] + $history['response_tokens'];
$discard = $this->max_tokens < ($this->message_tokens + $history_tokens + $count_tokens);
$posts[] = [
'postid' => $postid,
'request_tokens' => $history['request_tokens'],
'response_tokens' => $history['response_tokens'],
'runnig_total_tokens' => $history_tokens + $count_tokens,
'discard' => $discard
];
if ($discard) {
$post_first_discarded = $postid;
break;
}
$post_first_taken = $postid;
$history_tokens += $count_tokens;
$post_messages = [
['role' => 'user', 'content' => trim($history['request'])],
['role' => 'assistant', 'content' => trim($history['response'])],
];
$messages = [
...$post_messages,
...$messages
];
}
}
} while (!empty($history));
if (!empty($posts)) {
$this->log['history.posts'] = $posts;
$this->log_flush();
}
}
Вот пример такого поста https://privet.fun/viewtopic.php?p=355631#p355631
Код: Выделить всё
[quote=ChatGPT post_id=355629 time=1685309119 user_id=804]
Последний раз редактировалось privet 01.06.2023 2:06, всего редактировалось 1 раз.
-
- phpBB 2.0.4
- Сообщения: 435
- Стаж: 6 лет 6 месяцев
- Откуда: Россия
- Благодарил (а): 183 раза
- Поблагодарили: 15 раз
Re: [3.2][3.3] AI Labs с поддержкой ChatGPT, DALL-E (OpenAI) и Stable Diffusion (Stability AI)
privet, почему ошибка при ответе, а лог пустой?
Спорт - сила
-
- phpBB 2.0.7
- Сообщения: 566
- Стаж: 7 лет 5 месяцев
- Благодарил (а): 278 раз
- Поблагодарили: 65 раз
Re: [3.2][3.3] AI Labs с поддержкой ChatGPT, DALL-E (OpenAI) и Stable Diffusion (Stability AI)
Тоже посмотрю. Понятно, у меня при цитировании кнопкой, когда тип сообщения 'quote' пишет ошибку:
PHP Warning: Cannot modify header information - headers already sent by (output started at /var/www/.../vendor/symfony/http-foundation/Response.php:383) in /var/www/.../includes/functions.php on line 1954
Там такая функция:
Код: Выделить всё
function send_status_line($code, $message)
{
if (substr(strtolower(@php_sapi_name()), 0, 3) === 'cgi')
{
// in theory, we shouldn't need that due to php doing it. Reality offers a differing opinion, though
header("Status: $code $message", true, $code);
}
else
{
$version = phpbb_request_http_version();
header("$version $code $message", true, $code);
}
}
Дело в другом, в основном у меня цитируют выделением текста мышью, "быстрый ответ", как здесь на форуме, тогда получающееся сообщение с цитатой тоже тип 'replay'. Бот на него отвечает, так как в тексте есть обращение к нему. Но свою цитату при ответе не захватывает, она удаляется. Потому что:
Код: Выделить всё
$message_parser->remove_nested_quotes(0;)
-
- phpBB 2.0.7
- Сообщения: 566
- Стаж: 7 лет 5 месяцев
- Благодарил (а): 278 раз
- Поблагодарили: 65 раз
Re: [3.2][3.3] AI Labs с поддержкой ChatGPT, DALL-E (OpenAI) и Stable Diffusion (Stability AI)
Вот логи цитирования одного и того же сообщения бота.
Сообщение выглядит так: вопрос пользователя "назови фильмы", выделенный цитатой, и ответ бота в виде списка.
Первый раз это сообщение цитируется через "быстрый ответ" мышью, как я и говорил 'replay':
Все нормально, бот читает ? и не знает, что ответить, так как цитаты со списком фильмов нет.
Второй раз это же сообщение цитируется по кнопке цитировать. Тип сообщения 'quote':
Здесь вроде цитата со списком куда-то попадает, но почему-то два раза в цикле. В итоге, вся конструкция выдает ошибку, а у меня в php варнинги с заголовками.
Короче, нужно решить и исправить вопрос с цитированием по кнопке (у меня, на моих старых версиях). А затем (глобально, для всех) дописать код, чтобы брало цитаты и при цитировании мышью в быстром ответе. Ну там if в посте 'replay' есть цитата от бота, то запускаем код как при цитировании кнопкой.
Сообщение выглядит так: вопрос пользователя "назови фильмы", выделенный цитатой, и ответ бота в виде списка.
Первый раз это сообщение цитируется через "быстрый ответ" мышью, как я и говорил 'replay':
Код: Выделить всё
{
"start": "2023-06-01 12:27:21",
"request.messages": [
{
"role": "user",
"content": "?"
}
],
"response": {
"id": "xxxxxxxxxxxxxxxxxxxx",
"object": "chat.completion",
"created": 1685611641,
"model": "gpt-3.5-turbo-0301",
"usage": {
"prompt_tokens": 9,
"completion_tokens": 25,
"total_tokens": 34
},
"choices": [
{
"message": {
"role": "assistant",
"content": "I'm sorry, I don't understand what you're asking. Can you please provide more information or ask a specific question?"
},
"finish_reason": "stop",
"index": 0
}
]
},
"response.codes": [
200
],
"finish": "2023-06-01 12:27:23"
}
Второй раз это же сообщение цитируется по кнопке цитировать. Тип сообщения 'quote':
Код: Выделить всё
{
"start": "2023-06-01 12:27:31",
"history.pattern": "/<QUOTE\\sauthor=\"ChatGPT\"\\spost_id=\"(.*)\"\\stime=\"(.*)\"\\suser_id=\"2490\">/",
"history.posts": [
{
"postid": 220810,
"request_tokens": "67",
"response_tokens": "266",
"runnig_total_tokens": 333,
"discard": false
}
],
"request.messages": [
[
{
"role": "user",
"content": "[ref]ChatGPT[/ref], Напиши список из 30 фильмов, которые ты советуешь посмотреть, которые вышли за последние 15 лет."
},
{
"role": "assistant",
"content": "1. Inception (2010)\n2. The Dark Knight (2008)\n3. Mad Max: Fury Road (2015)\n4. Interstellar (2014)\n5. Whiplash (2014)\n6. La La Land (2016)\n7. Birdman (2014)\n8. The Grand Budapest Hotel (2014)\n9. Inside Out (2015)\n10. The Social Network (2010)\n11. Roma (2018)\n12. Boyhood (2014)\n13. The Revenant (2015)\n14. Drive (2011)\n15. Arrival (2016)\n16. Her (2013)\n17. Moonlight (2016)\n18. The Handmaiden (2016)\n19. Parasite (2019)\n20. A Separation (2011)\n21. The Babadook (2014)\n22. The Witch (2015)\n23. Get Out (2017)\n24. Lady Bird (2017)\n25. Three Billboards Outside Ebbing, Missouri (2017)\n26. The Shape of Water (2017)\n27. Phantom Thread (2017)\n28. Blade Runner 2049 (2017)\n29. Dunkirk (2017)\n30. Call Me by Your Name (2017)"
}
],
{
"0": [
{
"role": "user",
"content": "[ref]ChatGPT[/ref],Напиши список из 30 фильмов, которые ты советуешь посмотреть, которые вышли за последние 15 лет."
},
{
"role": "assistant",
"content": "1. Inception (2010)\n2. The Dark Knight (2008)\n3. Mad Max: Fury Road (2015)\n4. Interstellar (2014)\n5. Whiplash (2014)\n6. La La Land (2016)\n7. Birdman (2014)\n8. The Grand Budapest Hotel (2014)\n9. Inside Out (2015)\n10. The Social Network (2010)\n11. Roma (2018)\n12. Boyhood (2014)\n13. The Revenant (2015)\n14. Drive (2011)\n15. Arrival (2016)\n16. Her (2013)\n17. Moonlight (2016)\n18. The Handmaiden (2016)\n19. Parasite (2019)\n20. A Separation (2011)\n21. The Babadook (2014)\n22. The Witch (2015)\n23. Get Out (2017)\n24. Lady Bird (2017)\n25. Three Billboards Outside Ebbing, Missouri (2017)\n26. The Shape of Water (2017)\n27. Phantom Thread (2017)\n28. Blade Runner 2049 (2017)\n29. Dunkirk (2017)\n30. Call Me by Your Name (2017)"
}
],
"role": "user",
"content": "?"
}
],
"response": {
"error": {
"message": "[{'role': 'user', 'content': '[ref]ChatGPT[/ref], Напиши список из 30 фильмов, которые ты советуешь посмотреть, которые вышли за последние 15 лет.'}, {'role': 'assistant', 'content': '1. Inception (2010)\\n2. The Dark Knight (2008)\\n3. Mad Max: Fury Road (2015)\\n4. Interstellar (2014)\\n5. Whiplash (2014)\\n6. La La Land (2016)\\n7. Birdman (2014)\\n8. The Grand Budapest Hotel (2014)\\n9. Inside Out (2015)\\n10. The Social Network (2010)\\n11. Roma (2018)\\n12. Boyhood (2014)\\n13. The Revenant (2015)\\n14. Drive (2011)\\n15. Arrival (2016)\\n16. Her (2013)\\n17. Moonlight (2016)\\n18. The Handmaiden (2016)\\n19. Parasite (2019)\\n20. A Separation (2011)\\n21. The Babadook (2014)\\n22. The Witch (2015)\\n23. Get Out (2017)\\n24. Lady Bird (2017)\\n25. Three Billboards Outside Ebbing, Missouri (2017)\\n26. The Shape of Water (2017)\\n27. Phantom Thread (2017)\\n28. Blade Runner 2049 (2017)\\n29. Dunkirk (2017)\\n30. Call Me by Your Name (2017)'}] is not of type 'object' - 'messages.0'",
"type": "invalid_request_error",
"param": null,
"code": null
}
},
"response.codes": [
400,
400,
400
]
}
Короче, нужно решить и исправить вопрос с цитированием по кнопке (у меня, на моих старых версиях). А затем (глобально, для всех) дописать код, чтобы брало цитаты и при цитировании мышью в быстром ответе. Ну там if в посте 'replay' есть цитата от бота, то запускаем код как при цитировании кнопкой.
-
- phpBB 2.0.4
- Сообщения: 440
- Стаж: 6 лет 8 месяцев
- Благодарил (а): 100 раз
- Поблагодарили: 30 раз
Re: [3.2][3.3] AI Labs с поддержкой ChatGPT, DALL-E (OpenAI) и Stable Diffusion (Stability AI)
Не сочтите за дерзость.
А хорошо бы если бы к сообщению которое отправляется в ChatGPT ещё можно бы ло бы добавлять промт (может неправильно выразился).
Например:
Ответь как эксперт, по цветочным делам.
Сообщение
p/s цитаты тоже не работают.
Да и ещё, никак не пойму
Укажите форумы, на которых AI будет отвечать на новые сообщения - В уже созданной теме на новые сообщения ChatGPT отвечает?(у меня почему то только на первое сообщение отвечает)
А хорошо бы если бы к сообщению которое отправляется в ChatGPT ещё можно бы ло бы добавлять промт (может неправильно выразился).
Например:
Ответь как эксперт, по цветочным делам.
Сообщение
p/s цитаты тоже не работают.
Да и ещё, никак не пойму
Укажите форумы, на которых AI будет отвечать на новые сообщения - В уже созданной теме на новые сообщения ChatGPT отвечает?(у меня почему то только на первое сообщение отвечает)
-
- phpBB 2.0.4
- Сообщения: 423
- Стаж: 6 лет 3 месяца
- Благодарил (а): 152 раза
- Поблагодарили: 34 раза
Re: [3.2][3.3] AI Labs с поддержкой ChatGPT, DALL-E (OpenAI) и Stable Diffusion (Stability AI)
Не сочтите за дерзость.
А скажите, зачем это нужно?
Для написания эксклюзивного материала?
Так ИИ ещё не на том уровне, чтобы создавать такой контент без 100%-х подсказок и разъяснение ему что от него конкретно хотят.
Тут и профи не всегда интересный контент написать могут.
За время разъяснений и разжёвываний для ИИ можно и самому интересную статью написать!
Что это? Ещё одна игрушка? Эксперимент направленный на ЧТО?
Форумы, по-моему, тем и интересны, что на них идёт именно ЖИВОЕ общение!
Или и тут есть желание заменить всё и всех "роботами"?
А скажите, зачем это нужно?
Для написания эксклюзивного материала?
Так ИИ ещё не на том уровне, чтобы создавать такой контент без 100%-х подсказок и разъяснение ему что от него конкретно хотят.
Тут и профи не всегда интересный контент написать могут.
За время разъяснений и разжёвываний для ИИ можно и самому интересную статью написать!
Что это? Ещё одна игрушка? Эксперимент направленный на ЧТО?
Форумы, по-моему, тем и интересны, что на них идёт именно ЖИВОЕ общение!
Или и тут есть желание заменить всё и всех "роботами"?
Re: [3.2][3.3] AI Labs с поддержкой ChatGPT, DALL-E (OpenAI) и Stable Diffusion (Stability AI)
Vlad__,
Поправил все что вы написали - попробуйте 1.0.2 https://github.com/privet-fun/phpbb_ailabs ?
Должно работать с php 7.1 и phpBB 3.2 без всяких модификаций
Список изменений https://github.com/privet-fun/phpbb_ailabs#changelog
Отправлено спустя 4 минуты 11 секунд:
Поправил все что вы написали - попробуйте 1.0.2 https://github.com/privet-fun/phpbb_ailabs ?
Должно работать с php 7.1 и phpBB 3.2 без всяких модификаций
Список изменений https://github.com/privet-fun/phpbb_ailabs#changelog
Отправлено спустя 4 минуты 11 секунд:
ChatGPT подхватит такой явный промпт из самого текста, ничего особенного делать не надо.
Исправлено в 1.0.2
В настройкай конфигурации бота задайте имена форумов в "Ответ при цитировании", у вас там скорее всего пусто?
-
- phpBB 2.0.4
- Сообщения: 440
- Стаж: 6 лет 8 месяцев
- Благодарил (а): 100 раз
- Поблагодарили: 30 раз
Re: [3.2][3.3] AI Labs с поддержкой ChatGPT, DALL-E (OpenAI) и Stable Diffusion (Stability AI)
У меня форум специалистов работающих по международному стандарту (аккредитованные лаборатории). В мире полно информации по этой теме.
Бота хотел использовать для помощи руководителей (много писанины приходится придумывать, всякие инструкции), а промтом хотел поэкспериментировать указать из какой конкретно области вопрос.
Сам кстати для работы пользовался ChatGPT нормально.
Re: [3.2][3.3] AI Labs с поддержкой ChatGPT, DALL-E (OpenAI) и Stable Diffusion (Stability AI)
Надо смотреть в логах серцера и php, какая у вас версия php/phpBB/SQL?
Попробуйте последний релиз с 1.0.2 https://github.com/privet-fun/phpbb_ailabs , там довольно много поправлено.
-
- phpBB 2.0.4
- Сообщения: 440
- Стаж: 6 лет 8 месяцев
- Благодарил (а): 100 раз
- Поблагодарили: 30 раз
Re: [3.2][3.3] AI Labs с поддержкой ChatGPT, DALL-E (OpenAI) и Stable Diffusion (Stability AI)
Ответ при цитировании и Ответ на сообщение выбрано, пробовал отключать быстрый ответ перезагрузка, вот ещё думаю что может мешать.
Re: [3.2][3.3] AI Labs с поддержкой ChatGPT, DALL-E (OpenAI) и Stable Diffusion (Stability AI)
Попробуйте 1.0.2 - там поправлена ошибка с reply
-
- phpBB 2.0.4
- Сообщения: 440
- Стаж: 6 лет 8 месяцев
- Благодарил (а): 100 раз
- Поблагодарили: 30 раз
Re: [3.2][3.3] AI Labs с поддержкой ChatGPT, DALL-E (OpenAI) и Stable Diffusion (Stability AI)
C 1.0.2 работает только первое сообщение
PHP 7.4.33
MySQL(i) 5.7.21
Версия phpBB: 3.3.3
Отвечает только на первое сообщение в теме. В следующих надпись "Al отвечает", что то даже не появляется.
PHP 7.4.33
MySQL(i) 5.7.21
Версия phpBB: 3.3.3
Отвечает только на первое сообщение в теме. В следующих надпись "Al отвечает", что то даже не появляется.