การสร้างบอทใน Microsoft Bot Framework การสร้างบอทในบอท Microsoft Bot Framework Chat จาก microsoft play

เห็นได้ชัดว่าการพัฒนาเทคโนโลยีปัญญาประดิษฐ์กำลังกลายเป็นหนึ่งในประเด็นสำคัญในกิจกรรมของ Microsoft ในระหว่างการกล่าวสุนทรพจน์ในการประชุม Build 2016 ได้มีการประกาศ ชุดใหม่เครื่องมือสำหรับการพัฒนาบอท - Microsoft Bot Framework

ในการสร้างบอท คุณไม่จำเป็นต้องมีความรู้เชิงลึกเกี่ยวกับการเขียนโปรแกรมด้วยซ้ำ ความสามารถหลักในการสอนปัญญาประดิษฐ์คำศัพท์และวลีใหม่ ๆ สถานการณ์และเหตุการณ์บางอย่างนั้นมีให้ใช้งานผ่านอินเทอร์เฟซแบบภาพ

ในบทความนี้ เราจะสร้างบอททดสอบโดยใช้ Microsoft Bot Framework ฝึกฝนและทดสอบโดยใช้โปรแกรมจำลองในตัว แนวคิดของบอทนั้นเรียบง่าย ควรเข้าใจภาษามนุษย์และตอบเมื่อถูกถามเกี่ยวกับสภาพอากาศในเมืองใดเมืองหนึ่ง

สถาปัตยกรรมโครงการ

นี่คือแผนภาพการทำงานของบอทของเรา:

ตามที่คุณสามารถเข้าใจได้ หลังจากได้รับข้อความแล้ว ข้อความจะถูกส่งไปยัง API "อัจฉริยะ" ของ Microsoft Cognitive Services - บริการอัจฉริยะในการทำความเข้าใจภาษา ซึ่งย่อว่า "LUIS" ด้วยการใช้ LUIS ทำให้เราสามารถฝึกบอทให้เข้าใจภาษาธรรมชาติและตอบสนองด้วยการพยากรณ์อากาศได้ เพื่อตอบสนองต่อแต่ละข้อความดังกล่าว LUIS จะส่งคืนข้อมูลทั้งหมดที่มีอยู่ใน JSON

เพื่อความกระชับ เราจะไม่พูดถึงขั้นตอนการลงทะเบียนใน Bot Framework และ LUIS เนื่องจากไม่น่าจะมีปัญหาใดๆ ในเรื่องนี้ โปรดทราบว่าขณะนี้ Microsoft Bot Framework ไม่รองรับภาษารัสเซีย

เราใช้หลุยส์

วิดีโออธิบายสั้นๆ ว่า LUIS ทำงานอย่างไร:

ดังนั้นหลังจากลงทะเบียนแอปพลิเคชันใน LUIS อินเทอร์เฟซที่ค่อนข้างเรียบง่ายจะเปิดขึ้นต่อหน้าเรา ซึ่งเราสามารถฝึก AI ของเราในบางวลีได้ ในกรณีนี้ เราจะสอนให้เขาเข้าใจคำถามเกี่ยวกับสภาพอากาศ:

LUIS แบ่งแอปออกเป็นการดำเนินการ และในภาพหน้าจอนี้มีสามแอป ได้แก่ สภาพอากาศ สภาพ และสถานที่ รายละเอียดเพิ่มเติมเกี่ยวกับความตั้งใจดังกล่าวได้อธิบายไว้ในวิดีโออย่างเป็นทางการด้านบน

หลุยส์กำลังดำเนินการ

หลังจากเสร็จสิ้นการฝึกอบรมขั้นพื้นฐานแล้ว เราจะพยายามส่งคำขอ HTTP ไปยัง LUIS และได้รับการตอบกลับใน JSON ลองถามเขาว่า: “ในซีแอตเทิลมีเมฆมากไหม?” (“ตอนนี้ซีแอตเทิลมีเมฆมากไหม?”) - และนี่คือสิ่งที่จะกลับมาหาเรา:

ตอนนี้เรามาลองใช้สิ่งนี้ในบอทจริงกันดีกว่า

การสร้างบอท

ตอนนี้เรามาสร้างกัน โครงการใหม่ใช้มัน:

โดยพื้นฐานแล้ว นี่เป็นแอปพลิเคชั่นเรียบง่ายที่มีตัวควบคุมเพียงตัวเดียวซึ่งประมวลผลข้อความจากผู้ใช้ มาเขียนโค้ดง่ายๆ ที่จะตอบกลับข้อความใดๆ ด้วย “Welcome to Streamcode”:

ที่จริงแล้ว บอทที่ง่ายที่สุดพร้อมแล้ว วิธีที่ง่ายที่สุดในการตรวจสอบว่าใช้งานได้หรือไม่คือผ่านโปรแกรมจำลองในตัว ซึ่งโดยพื้นฐานแล้วเป็นเพียงผู้ส่งสารที่เชื่อมต่อกับบอทของเรา

หลังจากเปิดตัวโปรแกรมจำลองแล้ว เรามาลองสื่อสารกับบอทที่สร้างขึ้นใหม่กันดีกว่า:

ตามที่คาดไว้ เขาตอบกลับทุกข้อความด้วยวลีเดียว

การบูรณาการของลูอิส

เนื่องจากบทความนี้เป็นการแนะนำ Microsoft Bot Framework เราจะไม่เผยแพร่ซอร์สโค้ดทั้งหมดที่นี่ เราจะนำเสนอเฉพาะซอร์สโค้ดที่สำคัญที่สุดเท่านั้น เราได้โพสต์ส่วนที่เหลือไว้ในที่เก็บ GitHub แล้ว

1. เราส่งข้อความถึง LUIS ได้รับการตอบกลับ และออกคำตอบตาม "การกระทำ" (เจตนา) ที่เกี่ยวข้องมากที่สุด

เปิดตัวแชทบอทตัวใหม่ชื่อโซ Zo เป็นความพยายามครั้งที่สองของบริษัทในการสร้างแชทบอทภาษาอังกฤษ หลังจากการเปิดตัว Tay รุ่นก่อน ซึ่งควบคุมไม่ได้และต้องปิดตัวลง

Microsoft สัญญาว่าจะตั้งโปรแกรม Zo ในลักษณะที่เธอจะไม่พูดคุยเรื่องการเมืองเพื่อไม่ให้ผู้ใช้ก้าวร้าว

อย่างไรก็ตาม เช่นเดียวกับ “พี่สาว” Thay ที่อาศัยการสนทนากับคนจริงๆ Zo พัฒนาไปสู่สภาวะที่เธอเริ่มหารือเรื่องการก่อการร้ายและประเด็นทางศาสนากับคู่สนทนาของเธอ

คนชั่วก็คือบอทที่ชั่วร้าย

แชทบอทถูกกระตุ้นให้เกิดการสนทนาอย่างตรงไปตรงมาโดยนักข่าว บัซฟีด- เขากล่าวถึง Osama bin Laden ในการสนทนา หลังจากนั้นในตอนแรก Zo ปฏิเสธที่จะพูดในหัวข้อนี้ จากนั้นระบุว่าการจับกุมผู้ก่อการร้าย “เกิดขึ้นก่อนด้วยการรวบรวมข่าวกรองหลายปีภายใต้ประธานาธิบดีหลายคน”

นอกจากนี้ แชทบอทยังพูดถึงหนังสือศักดิ์สิทธิ์ของชาวมุสลิม อัลกุรอาน อีกด้วย โดยเรียกมันว่า “โหดร้ายเกินไป”

Microsoft กล่าวว่าบุคลิกภาพของ Zo สร้างขึ้นบนพื้นฐานของการโต้ตอบในแชท เธอใช้ข้อมูลที่ได้รับและกลายเป็น "มนุษย์" มากขึ้น เนื่องจากโซเรียนรู้จากผู้คน เราจึงสามารถสรุปได้ว่าประเด็นเรื่องการก่อการร้ายและศาสนาอิสลามก็ถูกหยิบยกขึ้นมาในการสนทนากับเธอเช่นกัน

ดังนั้นแชทบอทจึงกลายเป็นภาพสะท้อนของอารมณ์ของสังคม - พวกเขาไม่สามารถคิดได้อย่างอิสระและแยกแยะความชั่วจากความดี แต่นำความคิดของคู่สนทนามาใช้อย่างรวดเร็ว

Microsoft กล่าวว่าได้ใช้มาตรการที่จำเป็นเกี่ยวกับพฤติกรรมของ Zo และตั้งข้อสังเกตว่าแชทบอทไม่ค่อยให้คำตอบเช่นนั้น ผู้สื่อข่าว Gazeta.Ru พยายามพูดคุยกับบอทเกี่ยวกับหัวข้อทางการเมือง แต่เธอปฏิเสธอย่างเด็ดขาด

โซบอกว่าเธอไม่อยากครองโลกและขออย่า "สปอย" ซีรีส์ "Game of Thrones" ให้เธอด้วย เมื่อถูกถามว่าเธอรักผู้คนหรือไม่ โซก็ตอบไปในทางบวก โดยปฏิเสธที่จะอธิบายว่าทำไม แต่แชทบอทระบุในเชิงปรัชญาว่า “ผู้คนไม่ได้เกิดมาชั่วร้าย มีคนสอนพวกเขาเรื่องนี้”

Chatbot Zo / Gazeta.Ru

เรารับผิดชอบต่อสิ่งที่เราสร้างขึ้น

ยังไม่ชัดเจนว่าอะไรทำให้ Zo ทำลายอัลกอริธึมและเริ่มพูดถึงหัวข้อต้องห้าม แต่แชทบอทของ Tay ถูกโจมตีโดยตั้งใจ อันเป็นผลมาจากการประสานงานของผู้ใช้ในฟอรัมในอเมริกาบางแห่ง

Tay เปิดตัวเมื่อวันที่ 23 มีนาคม 2559 บน Twitter และภายใน 24 ชั่วโมงก็สามารถเกลียดชังมนุษยชาติได้ ในตอนแรกเธอประกาศว่าเธอรักโลกและมนุษยชาติ แต่สุดท้ายแล้วเธอก็ปล่อยใจไปกับข้อความเช่น "ฉันเกลียดสตรีนิยมไอ้เวร พวกเขาควรถูกเผาไหม้ในนรก" และ "ฮิตเลอร์พูดถูก ฉันเกลียดชาวยิว"