Тексты
This commit is contained in:
@@ -33,63 +33,22 @@ from src.database import (
|
|||||||
)
|
)
|
||||||
from src.decorators import answer_callback, require_state, with_user_and_session
|
from src.decorators import answer_callback, require_state, with_user_and_session
|
||||||
from src.logger import logger
|
from src.logger import logger
|
||||||
from src.scenarios import find_available_track
|
from src.messages import (
|
||||||
|
ACCEPT_TEXT,
|
||||||
# === Тексты сообщений ===
|
ASK_REPLICA_NUMBER_TEXT,
|
||||||
|
CONFIRM_RESTART_TEXT,
|
||||||
INTRO_TEXT = """👋 Добро пожаловать!
|
CONFIRM_SAVE_TEXT,
|
||||||
|
FIRST_REPLICA_INSTRUCTIONS,
|
||||||
Это бот для сбора датасета озвученных реплик совещаний.
|
INTRO_TEXT,
|
||||||
|
INVALID_INTRO_RESPONSE,
|
||||||
Вы будете озвучивать реплики участников совещаний.
|
NO_MORE_SCENARIOS_TEXT,
|
||||||
Каждая дорожка — это реплики одного участника в рамках одного совещания.
|
REPEAT_REPLICA_TEXT,
|
||||||
|
SHOW_REPLICA_TEXT,
|
||||||
📋 Отправляя голосовые сообщения, вы соглашаетесь с тем, что они будут
|
SPECIFY_GENDER_TEXT,
|
||||||
использованы в исследовательских целях для обучения моделей машинного обучения.
|
TRACK_SAVED_TEXT,
|
||||||
|
VOICE_EXPECTED_TEXT,
|
||||||
|
|
||||||
Для продолжения отправьте сообщение:
|
|
||||||
|
|
||||||
```
|
|
||||||
Принимаю условия
|
|
||||||
```
|
|
||||||
"""
|
|
||||||
|
|
||||||
ACCEPT_TEXT = "Принимаю условия"
|
|
||||||
INVALID_INTRO_RESPONSE = (
|
|
||||||
f'❌ Для продолжения нажмите кнопку или отправьте: "{ACCEPT_TEXT}"'
|
|
||||||
)
|
)
|
||||||
|
from src.scenarios import find_available_track
|
||||||
SPECIFY_GENDER_TEXT = """👤 Укажите ваш пол.
|
|
||||||
|
|
||||||
Это необходимо для подбора подходящих сценариев для озвучивания."""
|
|
||||||
|
|
||||||
NO_MORE_SCENARIOS_TEXT = """📭 Пока нет доступных сценариев для озвучивания.
|
|
||||||
|
|
||||||
Вы получите уведомление, когда появятся новые сценарии."""
|
|
||||||
|
|
||||||
FIRST_REPLICA_INSTRUCTIONS = """🎙 Начинаем запись дорожки!
|
|
||||||
|
|
||||||
Отправляйте голосовые сообщения с озвучкой реплик. Говорите чётко и естественно."""
|
|
||||||
|
|
||||||
SHOW_REPLICA_TEXT = "📝 Реплика {num}/{total}:"
|
|
||||||
|
|
||||||
CONFIRM_RESTART_TEXT = """⚠️ Вы уверены, что хотите начать заново?
|
|
||||||
|
|
||||||
Все текущие записи этой дорожки будут удалены.
|
|
||||||
|
|
||||||
💡 Подсказка: после завершения записи можно будет перезаписать отдельные реплики."""
|
|
||||||
|
|
||||||
CONFIRM_SAVE_TEXT = """✅ Дорожка полностью озвучена!
|
|
||||||
|
|
||||||
Сохранить результат?"""
|
|
||||||
|
|
||||||
INVALID_INPUT_TEXT = "❌ Пожалуйста, отправьте голосовое сообщение."
|
|
||||||
|
|
||||||
ASK_REPLICA_NUMBER_TEXT = "🔢 Введите номер реплики для перезаписи (1-{max}):"
|
|
||||||
|
|
||||||
REPEAT_REPLICA_TEXT = "🔄 Перезапись реплики {num}/{total}:"
|
|
||||||
|
|
||||||
|
|
||||||
# === Клавиатуры ===
|
# === Клавиатуры ===
|
||||||
|
|
||||||
@@ -527,14 +486,11 @@ async def handle_save_track(
|
|||||||
duration_str = format_duration(duration)
|
duration_str = format_duration(duration)
|
||||||
|
|
||||||
# Формируем сообщение с благодарностью и статистикой
|
# Формируем сообщение с благодарностью и статистикой
|
||||||
thanks_msg = f"""✅ Дорожка сохранена!
|
thanks_msg = TRACK_SAVED_TEXT.format(
|
||||||
|
total_replicas=stats["total_replicas"],
|
||||||
🙏 Спасибо за вашу работу!
|
completed_tracks=stats["completed_tracks"],
|
||||||
|
duration=duration_str,
|
||||||
📊 Ваша статистика:
|
)
|
||||||
• Озвучено реплик: {stats["total_replicas"]}
|
|
||||||
• Завершено дорожек: {stats["completed_tracks"]}
|
|
||||||
• Общее время записи: {duration_str}"""
|
|
||||||
|
|
||||||
track = find_available_track(user.id)
|
track = find_available_track(user.id)
|
||||||
|
|
||||||
@@ -1040,9 +996,6 @@ async def handle_admin_document(
|
|||||||
# === Fallback handlers ===
|
# === Fallback handlers ===
|
||||||
|
|
||||||
|
|
||||||
VOICE_EXPECTED_TEXT = "❌ Пожалуйста, отправьте голосовое сообщение с озвучкой реплики."
|
|
||||||
|
|
||||||
|
|
||||||
@with_user_and_session
|
@with_user_and_session
|
||||||
async def handle_unexpected_text(
|
async def handle_unexpected_text(
|
||||||
update: Update,
|
update: Update,
|
||||||
|
|||||||
75
src/messages.py
Normal file
75
src/messages.py
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
# ruff: noqa
|
||||||
|
|
||||||
|
INTRO_TEXT = """👋 Добро пожаловать!
|
||||||
|
|
||||||
|
Это бот для сбора аудионабора данных для задачи автоматического протоколирования совещаний.
|
||||||
|
|
||||||
|
Суть его работы предельно проста. Вам будет отправлен набор реплик из вымышленного совещания, каждую из которых вы сможете озвучить, отправив обыкновенное голосовое сообщение. Реплики не будут содержать никакой личной, чувствительной или оскорбительной информации, все имена, адреса и прочие конкретные данные, если такие встретятся, являются вымышленными.
|
||||||
|
|
||||||
|
📋 Отправляя голосовые сообщения, вы соглашаетесь с тем, что записи вашего голоса могут быть сохранены, обработаны и включены в набор данных.
|
||||||
|
|
||||||
|
Подразумевается, что данный набор данных будет использоваться для обучения моделей машинного обучения и оценки их качества.
|
||||||
|
|
||||||
|
Набор данных может быть опубликован в открытом доступе под свободной лицензией.
|
||||||
|
|
||||||
|
Если вы передумаете, вы можете отозвать согласие, написав мне:
|
||||||
|
— либо в Telegram: @TheArity
|
||||||
|
— либо на электронную почту: artem@tishenko.dev
|
||||||
|
И я удалю все ваши записи из набора данных.
|
||||||
|
|
||||||
|
Для продолжения отправьте сообщение:
|
||||||
|
```
|
||||||
|
Принять и продолжить
|
||||||
|
```
|
||||||
|
"""
|
||||||
|
|
||||||
|
ACCEPT_TEXT = "Принять и продолжить"
|
||||||
|
|
||||||
|
INVALID_INTRO_RESPONSE = f'❌ Для продолжения отправьте сообщение: "{ACCEPT_TEXT}"'
|
||||||
|
|
||||||
|
SPECIFY_GENDER_TEXT = """👤 Пожалуйста, укажите ваш пол.
|
||||||
|
|
||||||
|
Это необходимо для подбора подходящих реплик для озвучивания, так как речь в них ведётся от первого лица."""
|
||||||
|
|
||||||
|
NO_MORE_SCENARIOS_TEXT = """📭 Пока нет доступных реплик для озвучивания.
|
||||||
|
|
||||||
|
Вы получите уведомление, когда появятся новые сценарии совещаний."""
|
||||||
|
|
||||||
|
FIRST_REPLICA_INSTRUCTIONS = """🎙 Начинаем запись дорожки!
|
||||||
|
|
||||||
|
Бот будет отправлять вам реплики одну за одной и ждать от вас голосовые сообщения с их озвучкой. Вы можете остановиться в любой момент и вернуться к боту в удобное время. Результат будет добавлен в набор данных только когда все реплики из сценария будут озвучены.
|
||||||
|
|
||||||
|
— При отправке голосовых сообщений старайтесь избегать фоновых шумов и других посторонних звуков.
|
||||||
|
— Старайтесь говорить естественно, как будто вы действительно просто общаетесь с другими людьми.
|
||||||
|
— Постарайтесь не произносить слова, которых нет в реплике.
|
||||||
|
— При этом дополнительные звуки, как, например, "эээ", "ммм", "эх" и подобные, вполне допустимы, так как делают речь более естественной.
|
||||||
|
|
||||||
|
А теперь запишите аудиосообщение с текстом вашей первой реплики!
|
||||||
|
"""
|
||||||
|
|
||||||
|
SHOW_REPLICA_TEXT = "📝 Реплика {num} из {total}:"
|
||||||
|
|
||||||
|
CONFIRM_RESTART_TEXT = """⚠️ Вы уверены, что хотите начать заново?
|
||||||
|
|
||||||
|
Все текущие записи этой дорожки будут удалены.
|
||||||
|
|
||||||
|
💡 После завершения записи можно будет перезаписать отдельные реплики."""
|
||||||
|
|
||||||
|
CONFIRM_SAVE_TEXT = """✅ Дорожка полностью озвучена!
|
||||||
|
|
||||||
|
Сохранить результат?"""
|
||||||
|
|
||||||
|
ASK_REPLICA_NUMBER_TEXT = "🔢 Введите номер реплики для перезаписи (1-{max}):"
|
||||||
|
|
||||||
|
REPEAT_REPLICA_TEXT = "🔄 Перезапись реплики {num}/{total}:"
|
||||||
|
|
||||||
|
VOICE_EXPECTED_TEXT = "❌ Пожалуйста, отправьте голосовое сообщение с озвучкой реплики."
|
||||||
|
|
||||||
|
TRACK_SAVED_TEXT = """✅ Дорожка сохранена!
|
||||||
|
|
||||||
|
🙏 Спасибо большое за вашу помощь! Если у вас есть желание и возможность, вы можете озвучить ещё несколько дорожек!
|
||||||
|
|
||||||
|
📊 Ваша статистика:
|
||||||
|
• Озвучено реплик: {total_replicas}
|
||||||
|
• Завершено дорожек: {completed_tracks}
|
||||||
|
• Общее время записи: {duration}"""
|
||||||
Reference in New Issue
Block a user