ว่าด้วยเรื่อง GPT2 & 3 และ OpenAI API (Update GPT3 เมษายน 2021 และ GPT2 Workshop เมษายน 2020)  

  RSS
nameless
(@nameless)
Logistic Regression

พาทัวร์ Open AI API และ GPT-3!!

ThaiKeras & Kaggle (8 April 2021)

เลื่อนลงไปดูโพสต์ข้างล่างได้เลยครับ 

 

 

-------------------------

ThaiKeras Workshop : ปลดปล่อยจินตนาการไร้ขีดจำกัดด้วย HuggingFace GPT-2!!

ThaiKeras & Kaggle (22 April 2020)

เลื่อนลงไปดูโพสต์ข้างล่างได้เลยครับ 

-------------------------

ข้อความดั้งเดิมครับ

ช่วงสัปดาห์นี้เมื่อไม่กี่วันก่อน (14 ก.พ. 2019) ก็มีข่าวใหญ่ในวงการ NLP อีกครั้ง เมื่อ OpenAI ได้เปิดเผยโมเดลที่ชื่อว่า GPT-2 [link] พร้อมสาธิตตัวอย่างการใช้งานว่าถ้าเราป้อนข้อความใดๆ เข้าไปให้ แล้ว GPT-2 ก็จะสามารถแต่งเรื่องราวที่เกี่ยวกับข้อความนั้นต่อจนเป็นบทความที่สมบูรณ์ได้ ดังตัวอย่างบทความเรื่องการค้นพบยูนิคอร์นต่อไปนี้ [link] ซึ่งนับว่าเป็นบทความที่อ่านรู้เรื่อง มีความต่อเนื่อง และมีการใช้ภาษาในระดับที่เหมือนกับมนุษย์เป็นคนเขียน ซึ่งไม่เคยปรากฏว่ามี AI ที่ทำได้ขนาดนี้มาก่อน

สำหรับ GPT-2 นี้ เป็นโมเดลที่ต่อยอดมาจาก GPT [link] ของปีที่แล้ว โดยทำการเรียน language model จากชุดข้อมูล WebText ซึ่งเป็นชุดข้อมูลที่ได้มาจากการเก็บหน้าเว็บต่างๆ ที่มีข้อมูลรวมทั้งสิ้นจำนวน 8 ล้านเว็บเพจ ในขนาด 40 GB ตัวโมเดลนั้นเป็น Transformer ขนาดใหญ่ ที่มีพารามิเตอร์ถึง 1.5 พันล้านตัว ซึ่งทั้งขนาดของข้อมูลและพารามิเตอร์นี้มีจำนวนมากเป็น 10 เท่า ของ GPT เดิม

นอกจากนี้ โมเดล GPT-2 ก็สามารถนำไปใช้ในงานอื่น เป็น zero-shot learning [link] ได้เลย โดยไม่ต้องเทรนเพิ่มแต่อย่างใด เช่นนำไปใช้สำหรับงาน reading comprehension, common sense reasoning, question answering, summarization และ machine translation เพียงเราป้อน input ซึ่งอาจจะเป็น query เข้าไป ก็สามารถนำสิ่งที่ language model สร้างออกมาใช้เป็นคำตอบได้ และให้ความถูกต้องที่ไม่เลว ส่วน benchmark สำหรับงาน language modeling โดยตรงนั้น ก็พบว่า GPT-2 เป็น state of the art อยู่ในขณะนี้

นักวิจัยในวงการ NLP หลายคน เช่น Nando de Freitas, Stephen Merity และ Sebastian Ruder ได้กล่าวชื่นชมในความสำเร็จครั้งนี้ อย่างไรก็ดี มีข้อวิพากษ์วิจารณ์ถึงการที่ OpenAI ไม่ได้ปล่อยโมเดลตัวใหญ่ โค้ดตอนเทรน และชุดข้อมูลออกมา โดยอ้างว่าอาจมีผู้ไม่หวังดีนำไปใช้ในทางที่ผิดได้ เช่น มีการตั้งกระทู้ใน reddit ล้อเลียนว่า แล้วแบบนี้ฉันควรจะเปิดเผยโมเดล MNIST ดีหรือป่าว [link] หรือเสนอแนะว่า OpenAI ควรจะเปลี่ยนชื่อเป็น ClosedAI ซะมากกว่า [link] นอกจากนี้ สำนักข่าวต่างๆ เช่น The Guardian และ Daily Mail ได้นำเรื่องนี้ไปพาดหัวโดยเน้นประเด็นด้านความอันตรายของ AI ด้วย

This topic was modified 3 days ago by The Neural Engineer
อ้างอิง
Posted : 16/02/2019 11:11 am The Neural Engineer ถูกใจ
nameless
(@nameless)
Logistic Regression

ตัวอย่างบทความเรื่องการค้นพบยูนิคอร์นบนเทือกเขาแอนดีส ที่อ่านแล้วเหมือนกับว่าเป็นข่าวจริงเลยครับ (เป็นบทความที่เลือกมาจาก 10 ตัวอย่างที่โมเดลสร้างออกมาได้)

ตอนนี้นักวิจัยด้าน NLP ละสายตาจาก BERT มาที่ยูนิคอร์นบนเทือกขาแอนดีสแทน (ภาพจาก [link])

ตอบกลับอ้างอิง
Posted : 16/02/2019 1:16 pm The Neural Engineer ถูกใจ
The Neural Engineer
(@neural-engineer)
Boltzmann Machine

ตัวอย่าง unicorn ข้างบน ในทุกประโยคมี Dr.Perez อยู่เกือบทั้งหมดเลยนะครับ แล้วก็ดูเชื่อมกันเป็นเนื้อเรื่องด้วย

พออ่านแล้ว ดูคล้ายๆ เหมือนทั้งหมดจะถูก generated ต่อกันมา ไม่เหมือน 10ประโยคที่แยกกันสร้างจากประโยคต้นฉบับแบบสุ่ม (เช่น ประโยค 3 พูดถึง valley และประโยค 4 ก็พูดต่อว่าสำรวจลึกเข้าไปใน valley ต่อ)

This post was modified 2 years ago by The Neural Engineer
ตอบกลับอ้างอิง
Posted : 19/02/2019 12:10 pm nameless ถูกใจ
The Neural Engineer
(@neural-engineer)
Boltzmann Machine

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

https://blog.openai.com/preparing-for-malicious-uses-of-ai/

 

ตอบกลับอ้างอิง
Posted : 19/02/2019 12:33 pm nameless ถูกใจ
The Neural Engineer
(@neural-engineer)
Boltzmann Machine

ตอนนี้เพื่อนๆ สามารถลองเล่น GPT-2 online ได้ที่นี่แล้วครับ สุดยอดมากๆ

https://talktotransformer.com/

ตอบกลับอ้างอิง
Posted : 13/06/2019 12:12 am nameless ถูกใจ
The Neural Engineer
(@neural-engineer)
Boltzmann Machine

ThaiKeras Workshop : ปลดปล่อยจินตนาการไร้ขีดจำกัดด้วย HuggingFace GPT-2!! ThaiKeras (22 April 2020)

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > นักวิทยาศาสตร์ได้ค้นพบแบคทีเรียชนิดใหม่ที่สามารถอยู่ได้โดยปราศจากออกซิเจน แบคทีเรียเหล่านี้มีชื่อว่า Bacteroides lactis พบได้ในทะเลสาบแม่น้ำและหนองน้ำทั่วโลก นักวิจัยเชื่อว่า B. lactis อาจมีอยู่ในโลกเป็นเวลา 2 ล้านปี พวกเขาเชื่อว่านี่เป็นรูปแบบสิ่งมีชีวิตที่เก่าแก่ที่สุดที่รู้จักบนโลก แม้ว่าสิ่งมีชีวิตใหม่ไม่ได้ผลิตซ้ำหรือวิวัฒนาการในมหาสมุทรเหมือนกับจุลินทรีย์อื่น ๆ แต่มันก็เป็นบรรพบุรุษโดยตรงของจุลินทรีย์อื่น ๆ ทั้งหมดที่อาศัยอยู่ในโลก

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > สวัสดีชื่อของฉันคือเจมส์และฉันจะทำหน้าที่เป็นหมอดูแลคุณ เพื่อสุขภาพและความปลอดภัยคุณต้องถอดแจ็คเก็ตและหมวกออก มีปืนอยู่ข้างแขนซ้ายของคุณ ดูอย่างใกล้ชิดและคุณจะเห็นว่ามันถูกโหลด มันเป็นเรมิงตัน 641 นั่นคือทั้งหมดที่ ไม่มีใครได้รับอนุญาตให้มีปืนหรือพกอาวุธเลย ถ้าคุณทำคุณจะถูกยิงทันที อย่าแตะต้องปืน > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

สวัสดีครับ วันนี้เราเปิดบทความกันด้วยนิยายซึ่งอาจจะดูแปลกประหลาดไปสักหน่อย แต่นิยายเหล่านี้ถูกแต่งแบบสุ่มๆ โดยโมเดล Deep Learning ที่ชื่อว่า GPT-2 !!

วันนี้ ขอต้อนรับเข้าสู่ ThaiKeras Workshop — GPT-2 Playground ที่ที่เราจะปลดปล่อยจินตนาการ และแต่งเนื้อเรื่องนิยายหรือข่าวต่างๆ ในภาษาไทยด้วยพลังของ GPT-2 และ Google Translate ครับ 😀 😀

Workshop สามารถทดลองได้ทันทีบน Kaggle โดยไม่มีค่าใช้จ่าย https://bit.ly/thaikeras-kaggle-gpt2thai ถ้าใครยังไม่คุ้นเคยกับ Kaggel ทำความรู้จักได้ที่นี่ครับ http://bit.ly/thaikeras-kaggle-setup

อย่างไรก็ดีก่อนจะเริ่มเรามาทำความรู้จักกับ GPT-2 และ HuggingFace กันก่อนดีกว่า

 

ว่าด้วย GPT2

ในช่วงปีที่ผ่านมา 1 ในข่าวบันลือโลกของวงการ AI และ DeepLearning ก็คือ โมเดลที่ชื่อ GPT-2 ของทีม OpenAI ที่สามารถแต่งประโยคได้ราวกับมนุษย์ (ในแง่ของไวยากรณ์) บนเรื่อง "อะไรก็ได้" ไม่ว่าจะเป็นแนวนิยายวิทยาศาสตร์ นิยายโรแมนติก นิยายสยองขวัญ สารานุกรมแบบ Wikipedia ข่าวบนสื่อต่างๆ ฯลฯ เนื่องจาก GPT-2 นั้นถูกฝึกสอนบน texts ระดับมหาศาลบน internet ชนิดที่มนุษย์ใช้เวลาอ่านทั้งชีวิตก็ไม่จบไม่สิ้น แฟนพันธุ์แท้ของวงการ AI นี้ไม่มีใครไม่รู้จัก GPT-2 แน่นอน

อัน GPT-2 นั้นเป็นหนึ่งในโมเดลของตระกูล Transformers ที่เก่งเรื่อง "สร้างเนื้อเรื่อง" ส่วนโมเดลในตระกูล Transformer อื่นๆ ที่ดังระดับโลก อาทิเช่น BERT, ROBERTA, BART, T5 นั้นต่างก็เก่งกาจด้านภาษาอื่นๆ แตกต่างกันออกไป เช่น งานตีความหมายของประโยค งานย่อความ งานแปลภาษา เป็นต้น อย่างไรก็ดีใน Workshop นี้เราจะมาเล่น GPT-2 กันครับ

การทำงานของ GPT-2 ในหลักการนั้นง่ายมากครับ เราเพียงใส่ประโยคเริ่มต้นอะไรไปก็ได้ แล้วเจ้า GPT-2 มันก็จะไปแต่งประโยคต่อขึ้นมาเองอย่างน่ามหัศจรรย์!!! ตัวอย่างเช่น ในตัวอย่างแบคทีเรียข้างต้น เราเพียงใส่ประโยคเริ่มต้นว่า "นักวิทยาศาสตร์ได้ค้นพบแบคทีเรียชนิดใหม่ที่สามารถอยู่ได้โดยปราศจากออกซิเจน" ส่วนที่เหลือเจ้า GPT-2 ก็จะเป็นผู้จัดการจินตนการต่อเองครับ และที่เจ๋งสุดๆ ก็คือเราสามารถให้มันแต่งเนื้อเรื่องเป็นร้อยแบบที่แตกต่างกันจากประโยคเริ่มต้นประโยคเดียวของเราก็ยังได้ แบบง่ายๆ !! เช่น เรื่องข้างล่างนี้เป็นอีกเวอร์ชั่น จากเรื่องข้างบน

> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> > นักวิทยาศาสตร์ได้ค้นพบแบคทีเรียชนิดใหม่ที่สามารถอยู่ได้โดยปราศจากออกซิเจน จุลินทรีย์ที่ไม่ได้อยู่ในมหาสมุทรเหล่านี้มีชื่อเสียงในด้านความสามารถในการอยู่รอดในสภาวะที่รุนแรงเช่นช่องระบายอากาศใต้ทะเลลึกและอุณหภูมิสูง > ทีมนักวิจัยนำโดยดร. Danyel Wiercinski แห่งมหาวิทยาลัยฮาร์วาร์ดได้ค้นพบแบคทีเรียเหล่านี้ในตัวอย่างจากพื้นมหาสมุทรนอกชายฝั่งของออสเตรเลีย ในการวิจัยที่ตีพิมพ์ใน PNAS เมื่อสัปดาห์ที่แล้วทีมได้ค้นพบสายพันธุ์ชื่อ Oligophaga melan > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

สังเกตความเจ๋งที่ว่ามันสามารถตั้งชื่อสายพันธุ์แบคทีเรีย ชื่อนักวิทยาศาสตร์ รวมทั้งชื่อวารสารวิชาการได้อย่างแนบเนียนสุดๆ อีกด้วย GPT-2 ยังสามารถแต่งเนื้อเรื่องอื่นๆ อีกมากมายที่เราสามารถอ่านกันได้เพลิดเพลินใจไปเลย!!

 

HugggingFace ฮีโร่ผู้ทลายกำแพงด้านภาษาของ Deep NLP

ถึงแม้ตอนแรกจะมีข้อถกเถียงกันมากมายว่าการปลดปล่อย GPT-2 นั้นจะเป็นอันตรายหรือไม่เพราะคนสามารถนำไปช่วยสร้าง Fake News ต่างๆ ได้ อย่างไรก็ดีหลังจากทีม OpenAI ได้ศึกษาเรื่องข้อดีข้อเสียร่วมกับทีม AI อื่นๆ อีกหลายทีม ว่าข้อดีนั้นมีมากกว่าข้อเสีย ทีม OpenAI ก็เลยตัดสินใจเผยแพร่โมเดล GPT-2 ให้คนทั่วไปใช้ในที่สุด

โดย GPT-2 นั้นได้ถูกเผยแพร่มาสักพักแล้ว โดยมีหลายขนาดตั้งแต่ GPT-2 จิ๋ว กลาง ใหญ่ จนถึง GPT-2 "ยักษ์" ที่เก่งกาจขึ้นเรื่อยๆ แต่ก็ทำงานช้าลงเรื่อยๆ เช่นกัน

อย่างไรก็ดี โค้ดของทีม OpenAI นั้นค่อนข้างใช้งานยาก และทีมงาน ThaiKeras เราเองก็หาโค้ด version Keras ไม่ได้สักที เราเลยไม่ได้มีโอกาสลองเล่นอะไรมากนัก จนกระทั่งมีทีม AI ฮีโร่ของโลกที่ชื่อว่า ***HuggingFace*** ออกมาทำ API Opensource สำหรับ transformer ทั้งหมด (ไม่ใช่แค่ GPT-2) ทั้งในเวอร์ชั่น Tensorflow+Keras และ Pytorch ซึ่งใช้งานได้สะดวกและสุดยอดมากๆๆๆๆ

ด้วยพลังของ HuggingFace นั้น เราสามารถเรียกใช้ Transformer ต่างๆ กันแบบง่ายเหลือเชื่อ เขียนโปรแกรมสิบกว่าบรรทัดเท่านั้น 😀 และยังสามารถเซพโหลดข้อมูลจาก Pytorch สลับไปมากับ Keras ได้อีกด้วยทำให้ทำลายกำแพงความแตกต่างทางภาษาของวงการ DeepNLP ไปโดยสิ้นเชิง

นอกจากนี้การ Generate texts ให้เป็นธรรมชาตินั้นยังยากเทคนิกมาตรฐานเช่น Greedy หรือ Beam Search นั้นพบว่าไม่เป็นธรรมชาติและมักให้ประโยคซ้ำๆ มีงานวิจัยใหม่ๆ ออกมามากมายในช่วงปี 2019 และ Team HuggingFace นี้ยัง implement 2 วิธีสร้าง texts ที่ได้รับการยอมรับที่สุดในปัจจุบัน (Top-K & Top-P sampling) ให้เราใช้เพียงกระดิกนิ้ว ซึ่งเพื่อนๆ จะได้เรียนรู้วิธีใน Workshop นี้ด้วยครับ

จึงต้องขอกราบขอบพระคุณทีม HuggingFace https://huggingface.co/ งามๆ มา ณ ที่นี้ด้วยครับ

 

Google Translation Python Library ท้ายที่สุดขอพูดถึง library จิ๋วแต่แจ๋ว https://github.com/ssut/py-googletrans ซึ่งสามารถทำให้เราใช้ google translate ได้ง่ายๆ เพียงหนึ่งบรรทัดเท่านั้น

ใน Workshop นี้เราจะไม่ได้ใช้ GPT-2 ที่ถูกสอนบน "ภาษาไทย" โดยตรง (เพราะต้องใช้ทรัพยากรสอนที่มหาศาลมาก) แต่เราจะ "ลักไก่" ด้วยการ "แปลไป แปลกลับ" แทน นั้นคือ เราจะแปล "ประโยคเริ่มต้นภาษาไทย" เป็นภาษาอังกฤษแล้วให้ GPT-2 ไปสร้างเนื้อเรื่องต่อ เมื่อแต่งเรื่องเสร็จแล้ว เราก็จะ "แปลกลับ" เป็นภาษาไทยอีกรอบกัน 😀

ถ้าพร้อมแล้วก็เริ่มกันเลยที่ลิงก์นี้ครับ https://bit.ly/thaikeras-kaggle-gpt2thai

ตอบกลับอ้างอิง
Posted : 22/04/2020 1:55 pm
The Neural Engineer
(@neural-engineer)
Boltzmann Machine

ตัวอย่างใช้ GPT2 แต่งเพลง และทำนอง สไตล์ folk music

https://www.gwern.net/GPT-2-music

ตอบกลับอ้างอิง
Posted : 26/04/2020 11:58 pm
The Neural Engineer
(@neural-engineer)
Boltzmann Machine

UPDATE : GPT-3 คุยกับมนุษย์ได้ดีที่สุดตั้งแต่เคยเห็นมา

https://medium.com/@kirkouimet/turing-test-2669daffae38

ตอบกลับอ้างอิง
Posted : 25/07/2020 11:22 am
The Neural Engineer
(@neural-engineer)
Boltzmann Machine

มาดู 5 applications เจ๋งๆ จาก GPT-3

ThaiKeras and Kaggle - 14 มีนาคม 2021

 

พวกเราอาจเคยได้ยินคำล่ำลือถึงความฉลาดของ GPT-3 ผลงานจากทีม OpenAI ที่สามารถสื่อสารเรื่องราวทางภาษาได้ใกล้เคียงกับมนุษย์มาก 

สิ่งที่น่าสนใจก็คือ GPT-3 สามารถเอาไปใช้ทำอะไรได้บ้างกันนะ … ปัจจุบันแม้ GPT-3 จะยังไม่ถูก open source แต่ทาง OpenAI ก็ได้เปิดโอกาสให้ผู้พัฒนา software หลายกลุ่มได้นำ GPT-3 ไปสร้างสรรค์ applications ใหม่ๆ มากมาย

ปัจจุบันมีผู้รวบรวม Applications ต่างๆ ของ GPT-3 ไว้ที่ www.gpt3demo.com ซึ่งแบ่งเป็นหมวดหมู่ให้เยี่ยมชมไว้มากมาย เราลองมาดูสัก 5 ตัวอย่างเจ๋งๆ กันครับ

 

Game - AI Dungeon (Dragon Mode)

 

 

AI Dungeon - https://play.aidungeon.io/ คือ เกมส์ Text Adventure ที่จะเล่าเรื่อง story ต่างๆ ให้เราซึ่งเป็นตัวละครหนึ่งได้ฟัง และให้เราตัดสินใจว่าจะทำอย่างไรในเหตุการณ์นั้นๆ โดยการพิมพ์ข้อความเข้าไป

โดย AI ซึ่งเมื่อทำความเข้าใจทางเลือกของเราแล้ว (GPT-2 สำหรับผู้เล่นธรรมดาและ GPT-3 สำหรับผู้เล่น premium) จะนำการตัดสินใจของเราไปดำเนินเรื่อง และสร้างเหตุการณ์ต่างๆ ให้เราได้ตัดสินใจเรื่อยๆ อย่างสนุกสนาน

โดยเนื้อเรื่องจะเป็นโลกแฟนตาซีสมมติหรือโลกความเป็นจริงในประเทศอะไรก็ได้

AI Dungeon น่าจะเป็น รายแรกๆ ที่นำ GPT-3 มาใช้และเปิดให้ผู้เล่น premium (ประเภท Gold เดือนละ 10 เหรียญ หรือ300 บาท)

วิธีการเล่นหรือคุยกับ GPT-3 เมื่อสมัคร premium แล้วทำได้ง่ายๆ เพียงแค่เลือกไปยังโหมด "Dragon" เราสามารถเล่นกับ AI Dungeon ได้เสมือนกับเราได้มีส่วนแต่งนิยายแฟนตาซีเจ๋งๆ ที่ไม่มีวันจบ

เรายังสามารถทดลองคุยกับ GPT-3 ในลักษณะ ChatBot ได้บน AI Dungeon อีกด้วย

 

ChatBot - Emerson

 

ถ้าเราอยากคุยกับ GPT-3 ในรูป Chatbot ใน FB messenger หรือ Telegram เราสามารถลองได้ฟรี ที่ emerson.ai

โดยผมได้ทดลองคุยให้ Emerson แนะนำสถานที่ท่องเที่ยวในประเทศไทยของเรา เจ้า bot ตัวนี้แนะนำได้น่าสนใจมากๆ ว่าถ้าชอบภูเขาให้ไปเขาใหญ่ ชอบทะเลให้ไปเสม็ด แต่ถ้าชอบชิลๆ ให้ไปเชียงใหม่  หรือถ้าอยากดูวัฒนธรรมโบราณบ้านเราให้ไปสุโขทัย

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

อย่างไรก็ดีถ้าเราเจาะลึกมากๆ เช่นให้แนะนำที่พักในโคราช เจ้า Emerson ก็โชว์ความไม่สมบูรณ์แบบออกมา โดยแนะนำให้ไปพักที่โรงแรมสนามบินโคราช (ซึ่งไม่มี)  

ถือได้ว่าเป็น Bot ที่เก่งมากๆๆ และคุยสนุกจริงๆ ครับ อย่างไรก็ดีการคุยฟรีจะคุยได้ไม่กี่ประโยคใน 1 วันเท่านั้น ถ้าอยากคุยต่อต้อง subscribe premium ซึ่งมีราคาราวๆ 10 เหรียญต่อเดือนครับ

 

Virtual Reality + AI - ModBox

ModBox ได้ทดลองทำ prototype การนำ GPT-3 มาผนวกกับ Virtual Reality Game โดยให้ characters อื่นๆ ทุกตัวนอกจากผู้เล่นใน VR ตอบโต้กับผู้เล่นด้วย GPT-3

เราสามารถดูตัวอย่าง VR ได้ที่ (ปัจจุบันยังไม่มีให้เล่นจริง เป็นเพียง prototype เท่านั้น)

 

แค่ prototype ก็ดูตืนตาตื่นใจมากครับ

จากตัวอย่างเดาว่านำอาชีพ สถานที่ การแต่งตัว มุมมองของตัวละครมาเปลี่ยนเป็นข้อมูลให้ GPT-3 ประกอบกับประโยคพูดคุยของผู้เล่นในการสร้างบทสนทนา

.

 

Digital Marketing - Pencil

ที่ https://www.trypencil.com/ อ้างว่าสามารถสร้างโฆษณา Facebook Ads ได้อย่างอัตโนมัติ! ไม่ว่าจะเป็น ads แบบรูปภาพหรือ ads แบบวิดิโอ โดยรวมพลัง Computer Vision ในการทำความเข้าใจรูปภาพ และ GPT-3 ในการสร้างคำบรรยาย

นอกจากนี้ตัว software ยังประกอบไปด้วยโมเดล predict ประสิทธิภาพของโฆษณาที่ถูกสร้างมาอัตโนมัติด้วย เช่น CTA CTR metrics ใน Facebook Analytics

การสมัคร premium เพื่อสร้างโฆษณานั้นราคาค่อนข้างแพงมากถึง 750$ (23,000 บาท) ต่อเดือน  ทางทีมงาน ThaiKeras เลยมิบังอาจลองใช้งานครับ 😀

อย่างไรก็ดีดูตัวอย่างโฆษณาที่สร้างโดย AI ได้ที่

 

 

 

Content Generation - ContentBot

ที่ https://contentbot.ai/ ได้พัฒนา GPT-3 ให้สามารถสร้างบทความได้หลายรูปแบบไม่ว่าจะเป็นการเขียน Blog เขียนข่าว หรือโฆษณา

โดยเราเพียงกำหนดหัวข้อว่าต้องการให้เขียนเกี่ยวกับเรื่องอะไร จากนั้น contentbot จะ generate content ที่น่าสนใจที่เกี่ยวข้องกับหัวข้อนั้นให้เราทันที

Contentbot.ai นั้นให้เราทดลองสร้าง free account ได้และจะได้ 20 credits โดยเราทดลองสร้าง contents ได้ เช่น

ถ้าเรากำหนดไปว่าอยากสร้างโฆษณา dunkin donuts ตัว contentbot ก็จะสร้างคำบรรยายให้ เช่น

Dunkin' Donuts is famous for their delicious products. But in our store you can choose your most favorite flavors!

หรือถ้ากำหนดหัวข้อ blogs ตัว contentbot ก็จะสร้าง intro ให้ 5 แบบในหัวข้อที่กำหนด (ดูตัวอย่างในรูปแนบสำหรับหัวข้อ การทำ marketing สำหรับบริษัท startups) เป็นต้น

 

.

 

Applications อื่นๆ

นอกจาก 5 ตัวอย่าง applications ที่เล่ามายังมีตัวอย่างอีกมากมายใน gpt3demo.com เพื่อนๆ ลองเข้าไปเล่นกันดูได้ครับ

ตอบกลับอ้างอิง
Posted : 07/04/2021 8:54 am
The Neural Engineer
(@neural-engineer)
Boltzmann Machine

ใช้งาน OpenAI API และ GPT3 อย่างเป็นทางการ!!

ThaiKeras and Kaggle - 8 เมษายน 2021

 

สวัสดีครับเพื่อนๆ หลังจากที่เราได้เล่า applications เจ๋งๆ ของ GPT3 ในบทความเดือนก่อน

http://bit.ly/thaikeras-openai-gpt   ทาง ThaiKeras ก็ได้รับ surprise จาก OpenAI ที่อนุญาตให้เราทดลองใช้งาน GPT3 ได้อย่างเป็นทางการครับ!! (หลังจากที่รออยู่ใน waitlist น่าจะเกิน 6 เดือน)

โดย GPT3 ที่ OpenAI ให้นักพัฒนาใช้งานนั้นจะอยู่ในชื่อเรียกว่า OpenAI API ดูจากชื่อนี้ประกอบกับหัวข้อสนทนาใน OpenAI community คาดว่าน่าจะมีบริการอื่นนอกจาก GPT3 (เช่น Dall-E https://openai.com/blog/dall-e/ ) ออกมาให้นักพัฒนาได้ใช้ในอนาคตอันใกล้นี้ครับ

ล่าสุดทาง OpenAI แจ้งว่าได้เปิด API นี้ให้นักพัฒนากว่า 50,000 รายทั่วโลกได้ใช้งานแล้ว และวันนี้ทีม ThaiKeras จะลองพาเพื่อนๆ ไปดูว่า Ecosystem ของ Open AI เป็นอย่างไรบ้าง และมีค่าบริการ pricing ในการใช้งานอย่างไร  ในกรณีที่เพื่อนๆ มีไอเดียจะประยุกต์ GPT3 เข้ากับธุรกิจหรือ Startup ด้านต่างๆ

สำหรับผู้ที่สนใจเรื่องค่าใช้จ่ายในการใช้งาน GPT3 หรือ OpenAI API สามารถเลื่อนลงไปดูในท้ายบทความได้เลยครับ

GPT3 เป็นโมเดลด้านภาษาที่เก่งที่สุดในเรื่อง "การเขียน" (แต่ไม่ใช่โมเดลที่ฉลาดที่สุดในแง่ "การอ่าน" ดังที่เราเคยเล่าในบทความเจาะลึกโมเดล NLP https://bit.ly/thaikeras-understanding-nlp เว้นเสียแต่เราพิจารณาการอ่านแบบ few-shots [อธิบายด้านล่าง] ซึ่ง  GPT3 น่าจะเก่งที่สุด) และนับว่าเป็นหนึ่งในโมเดลที่ฉลาดที่สุดเท่าที่มีมาในวงการ AI

โดยเราสามารถให้ GPT3 เขียนเรื่องราวสร้างสรรค์เรื่องราวอะไรก็ได้เหมือนกับมนุษย์ โดยใช้ภาษาอังกฤษเป็นสื่อกลาง หรือจะใช้ภาษาไทยผ่าน Translator API ก็ย่อมได้ (ตัวอย่าง https://bit.ly/thaikeras-kaggle-gpt2thai )  ดังนั้นน่าสนใจมากๆ ภาคธุรกิจหรือ Startup ในบ้านเราจะสามารถนำพลังของ GPT3 มาประยุกต์ได้อย่างไรบ้าง

.

รู้จัก Zero-shot กับ Few-shots และงานที่ GPT3 ทำได้

หลักการการใช้งานของ GPT3 ผ่าน OpenAI API นั้นถือว่าเรียบง่ายมากๆ ครับเรียกว่าเป็น "Text-In Text-Out" คือเรากำหนด Input Texts  หรือเรื่องราวเบื้องต้นส่งไปให้ทาง OpenAI Server เค้าก็จะส่ง Texts ที่ GPT3 แต่งต่อจาก Input ของเรากลับมาให้

โดย OpenAI ได้ให้ตัวอย่างงานต่างๆ ที่ GPT3 ทำได้เกือบ 50 ตัวอย่าง ดังแสดงในรูปที่ 1 ครับ ซึ่งมีตั้งแต่งานง่ายๆ เช่น จำแนกประเภทประโยค  แก้ Grammar  นำข้อมูลสำคัญออกจากข้อความ  หรืองานยากๆ เช่น ChatBot   เปลี่ยนภาษามนุษย์เป็นภาษาโปรแกรม  หรือเขียนนิยายสยองขวัญ เป็นต้น

 

GPT3 นั้นฉลาดมาก โดยการทำงานอยู่บนหลักการที่เรียกว่า Zero-shot หรือ Few-shots ซึ่งเป็นปัญหาที่ยากมากๆ ในวงการ Machine Learning ซึ่งโดยปกติต้องการข้อมูลสอนมหาศาล

คำว่า Few-shots คือสอนโดยให้แค่ไม่กี่ตัวอย่าง (ใช้นิ้วมือนับได้) ส่วน Zero-shot คือการสอนโดยไม่ต้องให้ตัวอย่างใดๆ เลย!! ซึ่งเป็นปัญหาที่ยากมากๆ แต่ GPT3 ทำได้ดีมากๆ  นับว่าเป็น practical solution ของปัญหาที่ยากมากๆ ปัญหานึงในวงการ AI

Zero-shot หมายถึง เราสั่งให้มันทำงานที่ต้องการได้โดยที่ไม่ต้องสอนอะไรเลย อาทิเช่น เราให้บทความยาวๆ ไปแล้วบอกให้ GPT3 "สรุปประเด็นสำคัญ" ให้โดยที่ไม่สอนว่า "สรุปประเด็นสำคัญ" นั้นแปลว่าอะไร ซึ่ง GPT3 สามารถทำงานประเภทนี้ได้ทันที (ฉลาดสุดๆ) เนื่องจาก GPT3 ได้อ่าน Texts ต่างๆ ที่มีอยู่ในโลกนี้เป็นปริมาณมหาศาล ทำให้เข้าใจความหมายของคำว่า "สรุปประเด็นสำคัญ" อยู่แล้ว

อย่างไรก็ดี "ประเด็นสำคัญ" ของผู้ใช้งานแต่ละคนอาจไม่เหมือนกัน บางคนอาจสนใจที่เหตุการณ์ บางคนอาจสนใจที่ตัวบุคคล หรืออื่นๆ ดังนั้น GPT3 จะสามารถทำงานได้ดีมากขึ้นไปอีกถ้าเราให้ตัวอย่าง "การสรุปประเด็นสำคัญ" สัก 2-3 ตัวอย่าง (Few shots) ว่าผู้ใช้งานต้องการสรุปประมาณไหน

ซึ่ง GPT3 ก็จะปรับสไตล์การสรุปให้เข้ากับสิ่งที่เราต้องการได้ทันที!!

 

 

ลองเล่น OpenAI ผ่าน Playground

โดยก่อนที่เราจะเขียน Application และเรียกใช้งาน API ผ่าน server เราสามารถลองเล่น GPT3 ได้ผ่าน playground ที่ OpenAI ทำไว้ให้ครับ (รูปที่ 2 -- Few-shots QA ChatBot) 

 

ซึ่งเจ้า Playground นี้สามารถ import ตัวอย่าง 50 ตัวอย่างที่ OpenAI เตรียมไว้มาปรับเล่นได้ทันที

และเป็นโอกาสที่ดีที่จะให้เราได้ลองปรับ Options ต่างๆ ได้ด้วย โดย Option ที่สำคัญมีดังต่อไปนี้

  1. Engine -- มีให้เลือก 4 Engines คือ Davinci (ใหญ่ที่สุด ดีที่สุด แพงที่สุด) Curie Babbage และ Ada (เล็กที่สุด เร็วที่สุด ถูกที่สุด) โดย OpenAI มี document สอน use case ไว้ว่างานแบบไหนควรใช้ Engine แบบไหน
  2. Response Length -- ความยาว tokens สูงสุดที่ GPT3 จะตอบกลับมาหาเราได้
  3. Temperature และ TopP ใช้กำหนด "ความคิดสร้างสรรค์" ของโมเดล โดยถ้าสองค่านี้มากโมเดลจะมีความคิดสร้างสรรค์มาก แต่ในขณะเดียวกันอาจจะออกทะเลได้ง่ายๆ เหมือนกัน
  4. Frequency Penalty -- ปรับค่านี้เพื่อให้โมเดลตัดการพูดซ้ำเรื่องๆ เดิมๆ ออกไป
  5. Stop Sequences -- กำหนด tokens ที่จะทำให้โมเดลจบการสร้าง texts
  6. Show Probabilities -- แสดงผลความน่าจะเป็นของแต่ละ tokens ที่ถูก generate ออกมาว่าความน่าจะเป็นมาก (แม่นยำ) หรือน้อย (สร้างสรรค์)

 

รูปที่ 3 แสดงตัวอย่างการให้ texts บทความเกี่ยวกับดาวพลูโตแบบ zero-shot และสั่งให้ GPT3 สรุปใจความสำคัญมา 8 ข้อ ส่วนรูป 4 แสดงตัวอย่าง output ที่ได้พร้อมสีความน่าจะเป็นครับ (สีเขียวความน่าจะเป็นมาก สีแดงความน่าจะเป็นน้อย)

 

 

.

 

Supports ของ OpenAI ในการพัฒนาและ Deployment

เมื่อเราได้เข้าใช้งาน GPT3 อย่างเป็นทางการ เราจะสามารถพูดคุยกับเพื่อนๆ หรือทีมของ OpenAI ได้ผ่านทาง Slack หรือผ่านทาง Discord community ดังรูปที่ 5 ครับ ซึ่งคึกคักมากทีเดียว

เมื่อเราพัฒนาไอเดียบน Playground และพัฒนา Application จนน่าจะใช้งานจริงได้แล้ว อย่าเพิ่งเปิดให้ใช้งานครับ!!! เพราะ OpenAI กำหนดว่าทุก Application จะต้องผ่านการรีวิวจาก OpenAI ก่อน มิเช่นนั้นจะถูกตัดสิทธิการเข้าถึงโดยถาวรครับ

ทั้งนี้เนื่องจากว่า GPT3 นั้นสร้างสรรค์เรื่องต่างๆ ได้ทุกเรื่อง และในบางครั้งถ้าไม่มีการควบคุมที่เหมาะสมก็อาจจะสร้างสรรค์เนื้อเรื่องที่ หยาบคาย เหยียด ลวนลามหรือเรื่องที่ไม่เหมาะสมอื่นๆ ได้

โดย OpenAI กำหนดว่าการใช้งานช่วงทดลอง ห้ามเผยแพร่ผ่าน Public URL และมีผู้ทดลองใช้งานได้ไม่เกิน 5 คน

ใน Documentations OpenAI จะมีอธิบายกระบวนการรีวิวอย่างละเอียด รวมทั้งมีตัวอย่างของ Application ที่ไม่ผ่านการรีวิวแน่นอน เช่น Chatbot ที่สามารถ "คุยได้ทุกเรื่อง" (หมายรวมถึงเรื่องหยาบด้วย)

 

 

ค่าบริการในการใช้งาน GPT3 ผ่าน OpenAI API

ปัจจุบัน GPT3 มีให้เลือก 4 โมเดล โดยยิ่ง parameters เยอะยิ่งมีความสามารถในการเขียนที่สูง

โมเดล Davinci (175 Billion parameters)    0.06 เหรียญ / 1,000 tokens

โมเดล Curie (13 Billion parameters)         0.006 เหรียญ / 1,000 tokens

โมเดล Babbage (6.7 Billion parameters)  0.0012 เหรียญ / 1,000 tokens

โมเดล Ada (2.6 Billion parameters)          0.0008 เหรียญ / 1,000 tokens

 

หมายเหตุ

  • Billion = พันล้าน , 175 Billion = 175,000 ล้าน
  • GPT3 จะแบ่ง 1 คำในประโยคภาษาอังกฤษออกเป็น 1-4 tokens โดยเฉลี่ยแล้ว 1 คำจะประมาณ 1.5 tokens
  • GPT3 ประมวลผลได้สูงสุด (อ่าน + เขียน) ได้ไม่เกิน 2,048 tokens หรือราวๆ 1,500 คำ ต่อการเรียกใช้งาน 1 ครั้ง ดังนั้นการใช้งานเต็มที่ 1 ครั้งในโมเดล Davinci ตกราวๆ 3-4 บาท หรือถ้าใช้โมเดล Curie ก็จะตกราวๆ 30-40 สตางค์
  • งานเขียนที่ใช้ความคิดสร้างสรรค์ควรเลือก Davinci หรือ Curie เท่านั้น ในขณะที่งานเขียนของ Babbage นั้นมีคุณภาพค่อนข้างต่ำ

 

คนที่อยากลองใช้งานในมุมธุรกิจ หรือต้องการพัฒนาร่วมกับ Applications ที่มีอยู่แล้วสามารถกรอกรายละเอียดใน waitlist ที่นี่ครับ

https://share.hsforms.com/1Lfc7WtPLRk2ppXhPjcYY-A4sk30

สำหรับผู้ที่ต้องการใช้ในงานวิจัยกรอกฟอร์มนี้ครับ

https://share.hsforms.com/1b-BEAq_qQpKcfFGKwwuhxA4sk30

ตอบกลับอ้างอิง
Posted : 09/04/2021 1:51 am
Share:

Please Login or Register