오늘날과 같은 다국어 세상에서 사용자와 모국어로 소통할 수 있는 기능은 모든 챗봇의 핵심 기능입니다.
Botpress 는 100개 이상의 언어로 챗봇을 위한 자동 번역을 제공하지만, 사용자 지정 번역 기능을 설정하고 싶으시면 저희가 도와드릴 수 있습니다.
이 문서에서는 번역을 사용자 지정하는 데 필요한 구체적인 코딩 입력에 대해 자세히 설명합니다.
챗봇 번역은 어떻게 작동하나요?
저희의 전략은 사용자의 메시지를 가로채고, 사용자의 언어를 식별하고, 이러한 메시지를 봇의 운영 언어로 번역하는 데 중점을 둡니다.
이 과정에는 다음이 수반됩니다:
- 감지된 언어 저장하기
- 사용자의 메시지를 봇의 언어로 번역하기
- 메시지를 처리한 다음
- 봇의 응답을 사용자의 언어로 다시 번역하기
예를 들어 사용자가 스페인어로 메시지를 보내면 봇은 언어 변수로 "es"를 저장합니다. 소프트웨어는 봇을 위해 메시지를 영어로 번역한 다음 봇의 응답을 다시 스페인어로 번역하여 사용자에게 보냅니다.
도구 선택
정확성과 효율성으로 유명한 번역 서비스인 DeepL 번역 서비스를 사용합니다.
메시지를 미러링하여 사용자에게 응답하는 간단한 에코 봇으로 이 통합을 시연해 보겠습니다. Botpress 의 자동 통합이므로 API 호출에 Axios를 사용하겠습니다.
필요한 변수 만들기
먼저, 초기 또는 감지된 언어를 저장하기 위해 'language'라는 사용자 변수를 도입해야 합니다.
DeepL 은 입력 텍스트의 언어를 감지하고 반환하여 작업을 단일 API 요청으로 간소화함으로써 이 프로세스를 용이하게 합니다.
차단 후크 만들기
수신 메시지 후크 전
사용자의 메시지가 Botpress 에 도달하기 전에 가로채서 번역하기 위해 "Before Incoming Message" 훅을 도입합니다. 이 훅의 이름을 "Translation-In"으로 지정하여 수신 메시지를 영어로 번역하고 원본 메시지를 재정의하여 Botpress 에서 마치 영어로 된 것처럼 처리할 수 있도록 합니다.
이 훅의 코드는 다음과 같습니다:
await axios
.post(
'https://api-free.deepl.com/v2/translate',
{
text: [event.preview],
target_lang: 'EN'
},
{
headers: {
Authorization: 'DeepL-Auth-Key {{your key here}}',
'Content-Type': 'application/json'
}
}
)
.then((response) => {
event.payload.text = response.data.translations[0].text
event.preview = response.data.translations[0].text
event.state.user.language = response.data.translations[0].detected_source_language
})
.catch(function (error) {
// Error handling
});
중요 참고: API 키를 통합할 때는 항상 Botpress 구성 변수를 사용하세요.
발신 메시지 후크 전
"발신 메시지 전" 후크의 이름을 "번역-아웃"으로 지정합니다. 이 후크는 봇의 응답을 가로채서 사용자의 언어로 다시 번역하여 대화가 사용자가 선호하는 언어로 유지되도록 합니다.
이 구현에는 발신 메시지를 번역된 메시지로 재정의하는 것이 포함됩니다:
await axios
.post(
'https://api-free.deepl.com/v2/translate',
{
text: [outgoingEvent.preview],
target_lang: event.state.user.language
},
{
headers: {
Authorization: 'DeepL-Auth-Key {{your key here}}',
'Content-Type': 'application/json'
}
}
)
.then((response) => {
outgoingEvent.payload.text = response.data.translations[0].text
outgoingEvent.preview = response.data.translations[0].text
})
.catch(function (error) {
// Error handling
});
시작하기
AI 챗봇을 사용하면 얻을 수 있는 가장 큰 이점 중 하나는 다국어 지원 능력입니다. Botpress 와 같은 플랫폼을 사용하면 100개 이상의 언어로 사용자와 소통하도록 챗봇을 빠르게 설정할 수 있습니다.
접근성이 뛰어나고 사용자 친화적인 챗봇을 원한다면 번역 서비스를 Botpress 과 원활하게 통합할 수 있습니다. 채널 통합을 통해 다음 채널에 챗봇을 배포할 수 있습니다. WhatsApp, Facebook Messenger, 또는 웹사이트에 챗봇을 배포할 수 있습니다.
지금 바로 시작하세요. 무료입니다.