Current generation large language models are generally transformer neural networks that are trained on a large corpus of text. The text is split into "tokens", which are sequences of characters that are usually seen together, e.g.:

`["Div", "ided", " up", " like", " this", "."]`

And the tokens are given a number, with lower numbers being more common:

`[24095, 1384, 510, 588, 428, 13]`

The network is fed a fixed length sequence of these numbers over and over during a "training" process. Neural network training generally consists of a chain of matrix multiplications where the numbers from some output stage and some "weights" at that stage are combined. The weights start off as random numbers and are adjusted continually to meet some goal. The overall shape of the network, how the stages are connected is called the model's "architecture", different architectures have different properties but the general idea is to have an architecture that allows some form of incremental adjustment of the weights to meet a training goal.

As mentioned, current LLMs use a transformer architecture. Without going into details about attention, encoders, decoders, masking and so on, the training goal of an LLM is to guess which token is likely to come next given the ones that came before it.

After training, we have a program that can guess the next word-part given a list of word parts that came before it. By feeding in something like this:

 ```
This is a conversation between a friendly AI and a human.

Human: hello
AI: Hello, how can I help you?
Human: 
```

and adding the user's text to the end, we can generate tokens one at a time until it outputs "Human: ", and simulate a dialogue. But really all we're doing is exploring likely sentences based on probability and the training data.

This is a powerful way to extract relevant facts from the data, but it's a fraction of what these models are actually capable of, both good and bad.
โมเดลภาษาขนาดใหญ่รุ่นปัจจุบันโดยทั่วไปแล้วจะเป็นเครือข่ายประสาทเทียมที่ได้รับการฝึกฝนบนคลังข้อความขนาดใหญ่ ข้อความแบ่งออกเป็น "โทเค็น" ซึ่งเป็นลำดับของอักขระที่มักจะเห็นร่วมกัน เช่น: `["Div", "ided", " up", " like", " this", "."]` และ โทเค็นจะได้รับตัวเลข โดยตัวเลขที่ต่ำกว่าจะพบได้บ่อยกว่า: `[24095, 1384, 510, 588, 428, 13]` เครือข่ายได้รับการป้อนลำดับความยาวคงที่ของตัวเลขเหล่านี้ซ้ำแล้วซ้ำอีกในระหว่างกระบวนการ "ฝึกอบรม" โดยทั่วไปการฝึกอบรมโครงข่ายประสาทเทียมประกอบด้วยลูกโซ่ของการคูณเมทริกซ์ โดยนำตัวเลขจากระยะเอาท์พุตและ "น้ำหนัก" บางส่วนในขั้นตอนนั้นมารวมกัน น้ำหนักเริ่มต้นเป็นตัวเลขสุ่มและมีการปรับเปลี่ยนอย่างต่อเนื่องเพื่อให้บรรลุเป้าหมาย รูปร่างโดยรวมของเครือข่าย วิธีการเชื่อมต่อขั้นตอนต่างๆ เรียกว่า "สถาปัตยกรรม" ของแบบจำลอง สถาปัตยกรรมที่แตกต่างกันมีคุณสมบัติที่แตกต่างกัน แต่แนวคิดทั่วไปคือการมีสถาปัตยกรรมที่ช่วยให้สามารถปรับน้ำหนักแบบเพิ่มหน่วยบางรูปแบบเพื่อให้บรรลุเป้าหมายการฝึกอบรมได้ ตามที่กล่าวไว้ LLM ปัจจุบันใช้สถาปัตยกรรมหม้อแปลงไฟฟ้า เป้าหมายการฝึกอบรมของ LLM คือการเดาว่าโทเค็นใดมีแนวโน้มที่จะมาต่อจากโทเค็นที่อยู่ก่อนหน้า โดยไม่ต้องลงรายละเอียดเกี่ยวกับความสนใจ ตัวเข้ารหัส ตัวถอดรหัส การมาสก์ และอื่นๆ หลังจากฝึกแล้ว เรามีโปรแกรมที่สามารถเดาคำศัพท์ส่วนถัดไปได้ โดยจะมีรายการคำศัพท์ที่อยู่ก่อนหน้านั้น โดยการป้อนอะไรแบบนี้: ``` นี่คือการสนทนาระหว่าง AI ที่เป็นมิตรกับมนุษย์ มนุษย์: สวัสดี AI: สวัสดี มีอะไรให้ช่วยไหม? มนุษย์: ``` และเพิ่มข้อความของผู้ใช้ต่อท้าย เราสามารถสร้างโทเค็นได้ทีละรายการจนกระทั่งเอาต์พุตเป็น "มนุษย์: " และจำลองบทสนทนา แต่จริงๆ แล้ว ทั้งหมดที่เรากำลังทำคือสำรวจประโยคที่น่าจะเป็นไปได้ โดยพิจารณาจากความน่าจะเป็นและข้อมูลการฝึกอบรม นี่เป็นวิธีที่มีประสิทธิภาพในการดึงข้อเท็จจริงที่เกี่ยวข้องออกจากข้อมูล แต่เป็นเพียงเศษเสี้ยวของความสามารถจริงของโมเดลเหล่านี้ ทั้งดีและไม่ดี
spam fails_task lang_mismatch pii not_appropriate hate_speech sexual_content quality toxicity humor helpfulness creativity violence