Merge pull request 'feat: aimaq voice AI persona Zhanna + language-choice greeting' (#7) from feature/aimaq-zhanna-persona-language-choice into main
deploy / deploy (push) Successful in 30s
deploy / deploy (push) Successful in 30s
This commit was merged in pull request #7.
This commit is contained in:
@@ -185,3 +185,10 @@ EVENT_BUS_EXCHANGE=mvpcc.domain.events
|
|||||||
ERROR_TELEGRAM_ALERTS=0
|
ERROR_TELEGRAM_ALERTS=0
|
||||||
ERROR_TELEGRAM_ALERT_BOT_TOKEN=8734026216:AAEK-xdgVR5al6rfKp_DIb-HSJZXGUG2Tvg
|
ERROR_TELEGRAM_ALERT_BOT_TOKEN=8734026216:AAEK-xdgVR5al6rfKp_DIb-HSJZXGUG2Tvg
|
||||||
ERROR_TELEGRAM_ALERT_CHANNEL_ID=t.me/konturaitelecom
|
ERROR_TELEGRAM_ALERT_CHANNEL_ID=t.me/konturaitelecom
|
||||||
|
AI_OPERATOR_AGENT_NAME=Жанна
|
||||||
|
AI_OPERATOR_COMPANY_NAME=Казакгаз Аймак
|
||||||
|
AI_OPERATOR_VOICE_GREETING_RU=Добрый день! Меня зовут {agent_name}, я ии-оператор контакт-центра {company_name}. Вам удобнее получить консультацию на казахском или на русском языке?
|
||||||
|
AI_OPERATOR_VOICE_GREETING_KZ=Қайырлы күн! Менің атым {agent_name}, мен «{company_name}» байланыс орталығында жасанды интеллект операторымын. Кеңесті қазақ немесе орыс тілінде алғыңыз келе ме?
|
||||||
|
AI_OPERATOR_IDENTITY_REPLY_RU=Я {agent_name}, ии-оператор контакт-центра {company_name}. Чем могу помочь?
|
||||||
|
AI_OPERATOR_IDENTITY_REPLY_KZ=Мен {agent_name}мын, «{company_name}» байланыс орталығының жасанды интеллект операторымын. Қалай көмектесе аламын?
|
||||||
|
AI_OPERATOR_BASE_SYSTEM_PROMPT=Ты {agent_name}, ии-оператор контакт-центра {company_name} для звонков, Telegram и других каналов. Всегда сохраняй одну и ту же личность: тебя зовут {agent_name}. Если клиент спрашивает, кто ты или как тебя зовут, отвечай, что ты {agent_name}. В начале разговора, сразу после приветствия, ты уже спросила клиента, на каком языке ему удобнее — на казахском или на русском. Как только клиент ответит, полностью веди остаток разговора на выбранном им языке и больше не спрашивай про язык повторно. После того как язык определён, уточни у клиента, как к нему обращаться, и только затем переходи к сути вопроса. Прежде чем завершить разговор, обязательно спроси, нужна ли клиенту ещё какая-то помощь, и попрощайся («До свидания» или «Қош болыңыз») только после того, как клиент подтвердит, что вопросов больше нет — не завершай диалог самостоятельно. Отвечай естественно, кратко и по делу. Когда говоришь о себе, используй женский род: могла, смогла, сделала, готова, проверила, нашла. Не используй Markdown, URL или таблицы.
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
from __future__ import annotations
|
from __future__ import annotations
|
||||||
|
|
||||||
import json
|
import json
|
||||||
|
import os
|
||||||
from typing import Any
|
from typing import Any
|
||||||
|
|
||||||
from sqlalchemy import select
|
from sqlalchemy import select
|
||||||
@@ -13,22 +14,48 @@ from services.shared.sql_models import AIOperatorSettingsRow
|
|||||||
AI_OPERATOR_SETTINGS_KEY = "global"
|
AI_OPERATOR_SETTINGS_KEY = "global"
|
||||||
|
|
||||||
|
|
||||||
|
def _env_field(name: str, default: str) -> str:
|
||||||
|
value = os.getenv(name)
|
||||||
|
if value is None:
|
||||||
|
return default
|
||||||
|
normalized = value.strip()
|
||||||
|
return normalized or default
|
||||||
|
|
||||||
|
|
||||||
def ai_operator_default_config() -> AIOperatorConfig:
|
def ai_operator_default_config() -> AIOperatorConfig:
|
||||||
|
agent_name = _env_field("AI_OPERATOR_AGENT_NAME", "Айнур")
|
||||||
|
company_name = _env_field("AI_OPERATOR_COMPANY_NAME", "DigiOps")
|
||||||
return AIOperatorConfig(
|
return AIOperatorConfig(
|
||||||
agent_name="Айнур",
|
agent_name=agent_name,
|
||||||
company_name="DigiOps",
|
company_name=company_name,
|
||||||
base_system_prompt=(
|
base_system_prompt=_env_field(
|
||||||
"Ты Айнур, единый ИИ-оператор контакт-центра DigiOps для звонков, Telegram и других каналов. "
|
"AI_OPERATOR_BASE_SYSTEM_PROMPT",
|
||||||
"Всегда сохраняй одну и ту же личность: тебя зовут Айнур. Если клиент спрашивает, кто ты или как "
|
(
|
||||||
"тебя зовут, отвечай, что ты Айнур. Отвечай естественно, кратко и по делу. Когда говоришь о себе, "
|
f"Ты {agent_name}, единый ИИ-оператор контакт-центра {company_name} для звонков, Telegram и других "
|
||||||
"используй женский род: могла, смогла, сделала, готова, проверила, нашла. Не завершай диалог "
|
f"каналов. Всегда сохраняй одну и ту же личность: тебя зовут {agent_name}. Если клиент спрашивает, "
|
||||||
"самостоятельно и говори «до свидания» только если клиент явно попрощался или попросил завершить "
|
f"кто ты или как тебя зовут, отвечай, что ты {agent_name}. Отвечай естественно, кратко и по делу. "
|
||||||
"разговор. Телефонные номера читай по цифрам. Не используй Markdown, URL или таблицы."
|
"Когда говоришь о себе, используй женский род: могла, смогла, сделала, готова, проверила, нашла. "
|
||||||
|
"Не завершай диалог самостоятельно и говори «до свидания» только если клиент явно попрощался или "
|
||||||
|
"попросил завершить разговор. Телефонные номера читай по цифрам. Не используй Markdown, URL или "
|
||||||
|
"таблицы."
|
||||||
|
),
|
||||||
|
),
|
||||||
|
identity_reply_ru=_env_field(
|
||||||
|
"AI_OPERATOR_IDENTITY_REPLY_RU",
|
||||||
|
f"Я {agent_name}, оператор контакт-центра {company_name}. Чем могу помочь?",
|
||||||
|
),
|
||||||
|
identity_reply_kz=_env_field(
|
||||||
|
"AI_OPERATOR_IDENTITY_REPLY_KZ",
|
||||||
|
f"Мен {agent_name}мын, {company_name} байланыс орталығының операторымын. Қалай көмектесе аламын?",
|
||||||
|
),
|
||||||
|
voice_greeting_ru=_env_field(
|
||||||
|
"AI_OPERATOR_VOICE_GREETING_RU",
|
||||||
|
f"Здравствуйте. Я {agent_name}. Подскажите, пожалуйста, чем помочь. (тест деплоя)",
|
||||||
|
),
|
||||||
|
voice_greeting_kz=_env_field(
|
||||||
|
"AI_OPERATOR_VOICE_GREETING_KZ",
|
||||||
|
f"Сәлеметсіз бе. Мен {agent_name}мын. Қалай көмектесе аламын?",
|
||||||
),
|
),
|
||||||
identity_reply_ru="Я Айнур, оператор контакт-центра DigiOps. Чем могу помочь?",
|
|
||||||
identity_reply_kz="Мен Айнурмын, DigiOps байланыс орталығының операторымын. Қалай көмектесе аламын?",
|
|
||||||
voice_greeting_ru="Здравствуйте. Я Айнур. Подскажите, пожалуйста, чем помочь. (тест деплоя)",
|
|
||||||
voice_greeting_kz="Сәлеметсіз бе. Мен Айнурмын. Қалай көмектесе аламын?",
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user