ในโลกหลายภาษาในปัจจุบันความสามารถในการโต้ตอบกับผู้ใช้ในภาษาแม่ของพวกเขาเป็นคุณสมบัติหลักสําหรับแชทบอทใด ๆ
Botpress เสนอการแปลอัตโนมัติสําหรับแชทบอทของคุณในกว่า 100 ภาษา — แต่ถ้าคุณสนใจที่จะตั้งค่าความสามารถในการแปลแบบกําหนดเอง
ในบทความนี้ เราจะเจาะลึกอินพุตการเข้ารหัสเฉพาะที่จําเป็นในการปรับแต่งการแปลของคุณ
การแปลแชทบอททํางานอย่างไร
กลยุทธ์ของเราเกี่ยวข้องกับการสกัดกั้นข้อความจากผู้ใช้ระบุภาษาของพวกเขาและแปลข้อความเหล่านี้ไปและกลับจากภาษาปฏิบัติการของบอท
กระบวนการนี้เกี่ยวข้องกับ:
- การจัดเก็บภาษาที่ตรวจพบ
- การแปลข้อความของผู้ใช้เป็นภาษาของบอท
- การประมวลผลข้อความ จากนั้น
- แปลการตอบสนองของบอทกลับเป็นภาษาของผู้ใช้
ตัวอย่างเช่น หากผู้ใช้ส่งข้อความเป็นภาษาสเปน บอทจะเก็บ "es" เป็นตัวแปรภาษา ซอฟต์แวร์จะแปลข้อความเป็นภาษาอังกฤษสําหรับบอทจากนั้นแปลการตอบสนองของบอทกลับเป็นภาษาสเปนก่อนที่จะส่งไปยังผู้ใช้
เลือกเครื่องมือของคุณ
การตั้งค่าของเราจะใช้บริการ DeepL Translation ซึ่งเป็นที่รู้จักในด้านความแม่นยําและประสิทธิภาพ
เราจะสาธิตการผสานรวมนี้กับบอทเสียงสะท้อนอย่างง่ายที่ตอบสนองต่อผู้ใช้โดยการมิเรอร์ข้อความของพวกเขา เราจะใช้ Axios สําหรับการเรียก API ของเรา เนื่องจากเป็นการผสานรวมอัตโนมัติของ Botpress.
สร้างตัวแปรที่จําเป็น
ประการแรกเราต้องแนะนําตัวแปรผู้ใช้ชื่อ 'ภาษา' เพื่อจัดเก็บภาษาเริ่มต้นหรือภาษาที่ตรวจพบ
DeepL อํานวยความสะดวกในกระบวนการนี้โดยการตรวจจับและส่งคืนภาษาของข้อความที่ป้อนทําให้งานของเราง่ายขึ้นเป็นคําขอ API เดียว
สร้างตะขอสกัดกั้น
ก่อนขอข้อความขาเข้า
เพื่อสกัดกั้นและแปลข้อความของผู้ใช้ก่อนที่จะถึง Botpressเราขอแนะนําตะขอ "ก่อนข้อความขาเข้า" เราจะตั้งชื่อตะขอนี้ว่า "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
});
หมายเหตุ: ใช้เสมอ Botpress ตัวแปรการกําหนดค่า เมื่อรวมคีย์ API ของคุณ
ก่อนขอข้อความขาออก
สําหรับท่อนฮุก "Before Outgoing Message" เราจะตั้งชื่อว่า "Translation-Out" มันจะสกัดกั้นการตอบสนองของบอทเพื่อแปลกลับเป็นภาษาของผู้ใช้ เพื่อให้แน่ใจว่าการสนทนายังคงเป็นภาษาที่ผู้ใช้ต้องการ
การใช้งานเกี่ยวข้องกับการแทนที่ข้อความขาออกด้วยข้อความที่แปลแล้ว:
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, เฟซบุ๊ก Messengerหรือเว็บไซต์ของคุณ
เริ่มต้นวันนี้ มันฟรี.
ข้อมูลอ้างอิงเพิ่มเติม
สารบัญ
ติดตามข่าวสารล่าสุดเกี่ยวกับตัวแทน AI
แบ่งปันสิ่งนี้บน: