 Hai, semua. Kita mulai. Saya ialah Eugene, dan ini Harrison. Kita berdua dari Team RWKB, yang adalah model AI yang pertama untuk digunakan di fundasi Linux. Pajet 2, dan perkara unik ini adalah ia adalah transforma linear, bermakna 10-100X yang lebih rendah. Jadi, ia adalah energi yang tinggi, efisien, dan potensi konteks yang luar biasa. Ada banyak perkara yang sangat menakjubkan untuk kita dan mungkin menghubungi di mana-mana di dunia, yang Harrison akan menyebabkan. Ya, jadi kenapa transforma linear? Jadi, ada perhatian apa yang anda perlukan? Ada banyak orang berkata, banyak orang berkata, beberapa orang berkata tidak, dan apapun yang tidak ada perhatian, itu bukan apa yang anda perlukan. Problemnya, transforma ada perlukan. Seperti kita tahu, dengan perlukan quadratik, dan perlukan kvcash, dan semua perkara yang menakjubkan. Apabila anda mulai membuat penghubungi, ia mengambil lebih banyak masa, dan kemudian, ia berlaku ke tempat yang tidak mempunyai untuk menghasilkan lebih banyak masa. Dan ada banyak kerja yang berlaku untuk mengalibatkan beberapa problem ini, dan ini adalah salah satu solusi. Dengan transforma linear, kita mempunyai cost linear untuk berkomputasi dan mempunyai, dan ini membuat kita berjalan sangat cepat di CPU, GPU, dan mungkin, even FGPAs di masa depan. Rukav, disebabkan ini, adalah juga salah satu model AI yang terbaik semasa juals per-tokun yang berlaku adalah salah satu yang terbaik. Kita ada beberapa orang yang cantik. Benchmark, sesungguhnya ini, anda boleh lihat di sana. Sesungguhnya ini berlaku sepenuhnya sebabnya ia berlaku sangat cepat. Rukav adalah yang berlaku untuk mengalami pemeriksaan yang terbaik semasa juals per-tokun yang berlaku dan pemeriksaan yang diperlukan semasa juals itu menunjukkan ia berlaku pada pemeriksaan yang terbaik. Bagaimana Rukav dapat mengalihkan semua ini? Kita sudah menghubungi dipenangkan kepadaan LSTM. Semua model membuat beberapa pemeriksaan membuat pemeriksaan yang diperlukan dan membuat beberapa pemeriksaan yang diperlukan. Dalam LSTM, anda mengambil pemeriksaan yang diperlukan dan anda mengambil pemeriksaan yang diperlukan dan dalam cara yang membuat kita belajar membuat kita memperkenalkan informasi. Tidaknya, ini sangat mudah untuk berlaku untuk memperkenalkan pemeriksaan sehingga semuanya perlu memperkenalkan pemeriksaan yang diperlukan sebelumnya untuk memperkenalkan pemeriksaan yang diperlukan. Apa yang kita lakukan adalah kita telah mengubah pemeriksaan yang diperlukan dan ini membuat kita membuat banyak pemeriksaan yang lebih memperkenalkan. Dan seperti anda boleh lihat nanti, juga pemeriksaan. Jadi, seperti anda boleh lihat, di sini segera, kita boleh melakukan semua ini sepanjang-panjang. Bukankah itu memperkenalkan? Tidak, tidak benar. Pemeriksaan LSTM tersebut apabila anda tidak mempunyai informasi yang berlaku di belakang. Jadi, apa yang kita lakukan adalah kita memperkenalkan dengan dengan sebuah yang baru, saya akan mengatakan New York yang dua tahun lalu, dengan sistem kawasan kawasan kawasan receptif dan kita dapat melihat semua pemeriksaan LSTM yang diperkenalkan, tetapi sebenarnya kita ambil beberapa transformasi dalam pemeriksaan. Kita memperkenalkan mereka sepanjang-panjang masa di sana semasa kita memperkenalkan. Kita juga memperkenalkan mereka dengan sebuah kawasan kawasan. Pada masa depan, ini akan menjadi mempunyai pemeriksaan data, tetapi pemeriksaan LSTM kita hanya memperkenalkan mereka dan dengan pemeriksaan LSTM kita memperkenalkan mereka sepanjang masa. Kita juga mempunyai pemeriksaan LSTM yang diperkenalkan, sehingga FFN itu selalu memperkenalkan mereka. Jadi, saya tidak akan memperkenalkan pemeriksaan LSTM kerana itu memperkenalkan pada saat ini. Kita akan melihat itu nanti. Jadi, bagaimana ia memperkenalkan? Kita mempunyai pemeriksaan token, timbiksaan, dan itu membuat kita berada dalam pemeriksaan yang panjang dan panjang. Jadi, pemeriksaan token ini membuat pemeriksaan panjang pemeriksaan. Di sini, pemeriksaan dapat memperkenalkan dalam pemeriksaan diagonal dan ini membuat pemeriksaan yang convulsif semasa pemeriksaan panjang dapat memperkenalkan dalam timbiksaan. Apa yang terjadi? Kita hanya memperkenalkan pemeriksaan 1 trillion token. Kita sekarang dalam masa memperkenalkan lebih banyak, tetapi bahkan model V4 mempunyai pemeriksaan yang lain yang sama dalam pemeriksaan. Seperti yang mereka katakan, model AI ingin memperkenalkan. Apa yang memperkenalkan kita? Kita akan memperkenalkan GPU. Kita memperkenalkan memperkenalkan computer bersama untuk memperkenalkan pemeriksaan yang lebih besar. Pemeriksaan Pemeriksaan kita memperkenalkan oleh AI Luthor dan AI Stabiliti. Bagaimana kita sekarang? Kerana, tentu saja, itu adalah pemeriksaan obsolit. Apa yang kita buat sekarang? Kita masih memperkenalkan. Walaupun sekarang, semua ini, kita masih memperkenalkan pemeriksaan lebih banyak yang memperkenalkan lebih baik dan lebih baik daripada pemeriksaan. Kita juga juga, kerana ini adalah kecuali saya adalah kerana kecuali yang terlalu ramai pada KV Cash, kita dapat membuat memperkenalkan dan memperkenalkan pada pemeriksaan yang lebih besar yang lebih besar. Ada kecuali yang lain untuk pembedahan yang saya boleh memperkenalkan projek VLLM. Dan ini, dengan memperkenalkan memperkenalkan, memperkenalkan memperkenalkan pemeriksaan diperkenalkan pemeriksaan dalam membuat memperkenalkan memperkenalkan memperkenalkan. Jadi, seperti yang anda lihat, satu pada 3090 di rumah, pada model 7B, pada GTX 4090, seorang seorang yang menggunakan untuk seorang seorang seorang agent atau chatbot dapat memperkenalkan 25 tokan sekejap. Tapi dengan 144 orang yang memperkenalkan memperkenalkan sama masyarakat, mereka semua dapat 10 tokan sekejap, yang pada sekeliling memperkenalkan total 1750 tokan sekejap. Sekarang, anda mungkin fikir, kenapa kita perlukan banyak keperluan? Well, ada tiga perkara yang saya boleh fikir yang berguna. Kali untuk keperluan, anda akan menggunakan model yang sama untuk memperkenalkan banyak-banyak keperluan datang. Dan di rumah, bagi bermakna perangsaan multiasi, seperti NPC-nya, memperkenalkan mereka secara kebanyakan dan berguna untuk berdata-data generasi. Jadi jika anda membuat berdata-data generasi dan anda ingin secara kebanyakan dan memperkenalkan seluruh data set pada suatu hari, maka ia sangat berguna untuk perkara ini. Dan kita sekarang di tengah-tengah telur, kerana dengan sebuah GPU, kita boleh telur seluruh data set selama beberapa jam. Jadi apa yang terangkan tentang armen dan Kami menyebabkan RwKB. Mereka berbeza. Sebenarnya, apa yang kami mahu, apa yang kami cuba membuat, adalah model AI yang berbeza dalam ekonomi yang berbeza. Kami bercakap tentang 10-100X lebih kecil daripada model AI. Maksudnya, kami boleh memperbaiki mereka pada pukul berat atau pada pukul berat. Kami ingin memperbaiki pukul berat dan memperbaiki model besar untuk kecuali pukul berat juga. Jadi, bagaimana terbaik untuk mengajakannya adalah sebuah demo yang kami ada adalah demo AI. Dan ini adalah sebuah minigame yang anda dapat mempunyai agensi AI yang bercakap dengan satu sama lain. Dan anda dapat sebenarnya mempunyai sebuah kecil daripada 100 agensi. Maksudnya, mereka bercakap dengan satu sama lain dalam masin ini dan masih tidak memperbaiki sistem ini. Kerana saya tidak membuat permainan ini, permainan ini sebenarnya untuk lebih kecil daripada model, kami hanya memperbaiki sistem kita dan saya bekerja dengan mereka. Kami memperbaiki pukul berat pada pukul berat dalam sistem ini. Maafkan saya. Helo. Ya. Ia berjalan sekarang? Ia berjalan sekarang? Ya. Jadi, kami memperbaiki pukul berat untuk memperbaiki pukul berat dalam sistem ini. Dan botonek tidak lagi adalah AI. Itu sebabnya, itu sebabnya anda dapat melihat semua mereka terdengar. Adakah ia terdengar lagi? Ya. Jadi, saya hanya akan menyebabkan itu sebagai kembali. Helo? Ya. Ya. Dan ia sedar-sedar untuk melihatnya berbicara. Biar saya bercakap dengan seseorang. Saya rasa yang ini... Saya tidak tahu kenapa dia berbicara pada korea, tetapi ia okey. Anda dapat melihat mereka, hanya berbicara dengan orang lain. Dan ini apa yang kita bermakna dengan memperbaiki pukul berat. Ia dapat memperbaiki kemungkinan semula simulasi game semasa anda mempunyai pukul berat. Dan ini hanya menggunakan model 3D yang kita dapat memperbaiki lebih banyak kemungkinan modern. Jadi, anda dapat melihat kemungkinan dan kemungkinan itu. Jadi, jika anda ingin mencuba, anda dapat melihat kemungkinan... Maaf? Oh, okey. Ya. Anda dapat melihat kemungkinan pada Rwiki.com dan anda dapat memberikan demo public kita untuk berjumpa dengan kita. Jangan berharap untuk memuatkan kemungkinan kemungkinan untuk memilih AI. Tetapi, ia boleh menjadi sebuah demo kemungkinan. Dan ia adalah sesuatu yang kita cuba memperbaiki lebih banyak kemungkinan sehingga model ini adalah pukul berat. Tidak ada kemungkinan kemungkinan. Dan kami berjalan bersama dengan beberapa provider komputer bersama dengan kondisi pelajar untuk membantu memperbaiki lebih besar dan lebih besar. Dan kemungkinan juga memperbaiki kemungkinan kemungkinan untuk memperbaiki kemungkinan. Untuk para yang lebih suka memahami kota kota kota, anda dapat juga memahami RwKB yang sangat kecil. Hanya sekitar 200 kota. Dan ia hanya akan berjalan ke kota kota. Saya akan bekerja untuk kota kota kita pada wiki. Ya, beberapa kata-kata. Jadi ya, jika anda melihat kota kota original, kita sebenarnya membuat dua kota kembali ke belakang kerana kita sebenarnya ingin menyebabkan dua kota. Satu adalah mengenai kemungkinan RwKB kemungkinan, yang Harrison menyebabkan. Dan sebagainya, RwKB World Tokenizer. Sebabnya, saya cuba memperbaiki kemungkinan kemungkinan kemungkinan. Parti sebabnya, kota kembali kemungkinan adalah terutamanya global bukan kerana kota kita. Dan ia mempunyai kota kembali kembali kemungkinan membantu kita berjaya dengan cepat di Asia dan di dunia dunia, kerana ia memperbaiki kemungkinan kemungkinan dan kota kembali kemungkinan. Tetapi, apa yang lebih penting kepada mereka adalah bahawa ia membantu kemungkinan mereka. Jadi sekarang, kota kembali kemungkinan, kerana saya tidak mempunyai kemungkinan kemungkinan, ia lebih seperti 40% di China, 30% di Jepang, India, South-East Asia, 20% di Eropa. Sebenarnya, kota kembali kemungkinan kemungkinan kemungkinan di North dan South America. Sebab itu, ada banyak model ASI yang sebenarnya di region ini yang lebih daripada kemungkinan mereka. Sebenarnya, setelah itu, seperti yang saya beritahu, kita bergabung dengan baik, terutamanya kemungkinan multilingu. Sebab itu, kerana kemungkinan kemungkinan kita menjadi sebuah pelanggan yang sangat berbeza. Dalam kemungkinan kemungkinan yang sama, sebagainya, sebagainya, sebagainya, sebagainya, sebagainya, jika anda bergabung dengan BlinkDL, kreator originan dari China, kita ada beberapa orang dari UK, Eropa, dan kemungkinan kemungkinan di Asia juga. Dan, salah satu perkara yang datang awal di RWKB, V3, dan V4 adalah sebab kita mempunyai sebuah pelanggan yang sangat berbeza, dan sebuah pelanggan yang sangat multilingu. Kami membutuhkan model ASI untuk mendukung kemungkinan kita, dan pada masa itu, pada awal tahun, apabila kita mengubah model ASI, cek membuat yang enam, sedap dengan banyak kemungkinan, di sebuah pembentangan, ada sedap yang menggabung kemungkinan european, sebagainya, kemungkinan karakteraaaa. Dan... sebab kemungkinan itu, kami sangat langsung memanjur kemungkinan ini sebelum kami menggunakan pedal esok. Tapi dalam proses itu, saya akan mimpi apa yang saya k板ak menggunakan pembentangan kandungan Melayu yang menyebut So what do I mean by that is that for our current generation of RWKV model, we use a completely different tokenizer, which we call the world tokenizer. And this allows us to actually push the model much further as well. We also train it on multilingual data. So if you look at the RWKV V5 1.5B, well we have very comparable results to the top 1.5B model where we win some, we lose some, pretty much a tie depending on how you want to view it. We pretty much did one up against all the model in multilingual test. But in my opinion, this is not because of architecture. This is because we included the datasets to support those languages. We supported over 100 languages on our platform, on our model, and that's just because we did that as a first in approach. So why did we need a new tokenizer? Why did we make that change? This is back to the dead. A tokenizer at the end of the day is what decides when a text comes in and embedded comes out. But traditionally, we use a tokenizer to optimise the training and learning process. It was to make our AI models learn faster because a tokenizer by its very original nature was supposed to be, let's say, if you have the, if let's say, COMP, and then you have a UTER, let's say there are two tokens. Because the tokenizers are basically statistical model of how the text appear, they were supposed to help the AI models learn those relationships. That's what we did, that's what we did tokenizers. However, that was below one billion parameters. Now that we are in the era of multi-billion parameters models, if you realise, you can just take any AI model and completely mess up the tokenizer. In this case, I'm just doing one character per token, and the AI model still understands it. Or, and understands it enough to just refuse to talk to you. And this is, and the problem with this original tokenizer is that when we did that, when we originally did that in the past, is that we basically focus on English and we inherit the statistical model for English. And in that way, you can just view it as, but one way to view how AI models work, is that you can view all these numbers and pretty much you can kind of guess, like 1523 is down, let you down, yeah. You can think of it as, if you see this sequence of numbers, the AI model will try to output that number. That's how AI models work, and that's why we use tokenizers. And however, because AI models can already learn on an individual letter basis even if it need be, no matter how we mess up the tokenizer, it's still able to learn. These days, when we build the tokenizer, it is not about getting the models to learn those relationships anymore. It's arguably more about for efficiency reasons. A model with a fixed parameter and architecture has the same compute cost per token. So if you ask chat GPT or any AI model to help you with a complex problem, or you ask it to give you a dead joke, it costs the data center the same amount of energy pretty much. And ideally, you want to reduce the amount of tokens that is required for efficiency reason. And once again, this is more significant actually for transformers because of the QKV. But yeah, I digress. So why not build a super-large tokenizer then to support every language in the world or to support every possibility of text is that if you do a super-large tokenizer, one of the problems that you will face is that each token may not appear often enough for the AI model learn. And because of that, we informally right now have a sweet spot between 2 to a power 15 to 2 to a power 16 for tokenizer. This number range was basically settled based on research on smaller models. So I'll clarify that there's actually certainly more research that need to be done to figure out what is the optimal point for tokenizers. And yeah, I give basically a short crash course on tokenizer. But then it's like, back to the main topic, it's like, what was the problem with it? Why did we need to change it? And why did we need to change it for our world model? And because today, everyone uses BPE tokenizer, byte pair encoding. And this is for almost every existing model You see the problem with those like what I covered briefly is that fundamentally it takes up lots of tokens. You've probably seen some of the memes on some of the tweets and some of the criticism For character languages, we are talking about 3 to 4 tokens each per character. And for European and Nordic words, we are talking about 3 tokens. For English word for each, it's 1.5 around there. And that means, for AI model based on English-based BPE tokenizers, it takes 2 to 4 times more effort to infer and train in non-English languages. And some of it is literally really broken assumptions that we had. Like for example, spaces are hard-coded into the BPE tokenizer as one of the delimiter that it needs to look out for. And frankly, if you look through the list of languages, not every languages uses spaces. Not every languages do left to right either. So there's a lot of assumptions that are broken in this format. And even though I highlighted character languages, it's easy to sometimes or it's Chinese symbols or Japanese symbols, obviously those are hard. But the problem, that is the extreme. Even in the middle, let's just say French. And French is spoken in Canada and Canada is your neighbour. It's like deja vu, a very common phrase if you pluck it in, is eating as many tokens as they are characters. So, yeah. The same thing happens to a lot of European languages, frankly. So what did we do? Because we are a team that wanted AI models to support the world for the people in the world and everyone to use it in the world. That's why we call it the world model. We basically dropped it. The BPE and decided to keep it simple. But we keep it simple just because as we covered, AI models have grown to the point where it no longer needs a BPE tokeniser and we could just use any format of tokeniser as long as it helps improve efficiency. So, that brings us to the Arabiki World Tokeniser which is basically 65,000 tokens. And this is modeled after 100 plus languages in the world, including English, including Chinese, Japanese, Korean, and so on. And this was mostly built using the text from all the various languages on Wikipedia. It is significantly easier to implement because one of the I didn't go into too deeply but BPE requires a very complicated statistical modelling to actually complete the output. Well, the world tokeniser is just about just finding the longest match and then just matching it accordingly. And what this means is that we still have the same amount of performance for English approximately 1.5, but we substantially lower the cost for non-English language. So, that's about 1.5 to 2.5 per character language and so on. And this tokeniser is already available on our repo and pending a PR for hugging phase transformer will be available for any AI model to use or train. The downside is you will need to train a new model from scratch unfortunately. So, as an AI model builder, should you be using our tokeniser? Frankly, I think you should be exploring it, especially if you are building it for multi-lingual or even code use cases because we did some optimisation for that as well. But, less so if you want to do English based models. And it's our tokeniser that we brought out final. It's ready to use. We'll probably create a new one because for some reason I forgot Braille and I received complaints about that. I'm so sorry. We might adjust the ratio to de-paratise English furthermore to support more languages. And like I mentioned, we probably want to experiment with a larger range of token count and see whether that negatively affects the models. But, I think more importantly is that the reason why I wanted to talk about this was that I want all of us to really be having that conversation in AI and thinking about or working on it about what it means to support and grow AI in the ecosystem or around us especially beyond English and especially beyond Chinese. Because right now the status quo is English there's an English AV side of the world where there's the English based tokeniser. China being the other obvious growing superpower for AI models as well has their own set of Chinese tokeniser. And then where's the rest of the world? We live in a very large world. So I want us to actually be embracing that and have that conversation. Open for questions. Is there a context of a tokeniser for audio and video and images? And if so how would you how would you this work? So the tokeniser I cover is purely for text. Correct. There is there is like models that converts images and audio into token embeddings. And that is used to merge with other text models. In that case we will we use those respective I guess tokenising embedding models and it's not really one statistical mapping. So it's basically a mini AI model to generate an embedding rather than calling it a tokeniser. That's right. But it would have similar challenges that if it's only trained on like a US dataset versus a Chinese dataset it could have problems especially audio, right? So there's there's an audio tokeniser available. I forgot the name of it off the top of my head but it's only really good for speech but if you wanted to do audio then you end up having to do stuff like converting it into into the image and then doing like image conversion to the tokeniser as well. I mean for audio specifically you can even extend it to musical instruments. So it's not it's longer just words. On the Rook of Model I hope I'm saying that right. I saw some reports that it doesn't it doesn't deal with long long history, long context as efficiently as transformers. I'm not talking about efficiency in terms of yes the quadratic the quadratic cost of attention for for normal transformers but that it it wasn't as effective as using at using the context going farther back it decayed too quickly. Can you comment on that? We actually have a slight specifically for that. So with our V4 model which was which is currently the the most available and like the most visible of our models it we found that we only had an effective context length of 800 tokens on the 14b model and this is because the okay so for a bit of history the effective context length that we're talking about here is the ability for it to understand exact tokens given a particular context length so we we evaluated this by having it repeat tokens exactly from randomized data and we did these architecture experiments on V4 and found that it had very low very low effective context length whereas with our new architectures which we've which we've created has a lot better at the effective context length as you can see here. Ya, so we don't have we didn't put in the 3b models effective context length here but the 3b model context length is already able to support 8k to 16k at approximately there effective context length and that brings it into transformer range and we expect that as we scale the model larger you can find that this context length is able to handle things perfectly in memory will scale as well according to the model size and it potentially could actually directly compete with transformers in this range the way I'll view this like perfect memory context length is view it as worst case scenario the sliding window where the model anything beyond that is where it has lucy memories which is the problem that you cited and however as long as this window is as big as or matches transformers that means within that size we should expect equivalent results another thing to note is that we intentionally benchmark base on the worst case scenario or randomized data mostly because AI models are extremely efficient at compressing data so there are people who use V4 models and have ran 2K, 3K, 4K context length and it still work mostly because if you give it a question or you give it a piece of text that was in the training data it could literally just compress that to a handful of tokens and that happens a lot more often than we give it credit to so the only way for us to reliably test memories was random data because it couldn't be predicted Any other questions? Hi, I was just going to ask so I'm trying to understand how this works so you've replaced the key value cache with a single vector that you're compress, you're quantizing all the previous vectors into like one vector based on like a time scale Ya, so in our V4 model it was a it was in the V4 model it was two vectors we needed two vectors and it was compressed on an addition and decay format with V5 it's a matrix state value where we actually have each each state of each layer is a matrix state so up to 64x the embedding size and this is what gives us the much bigger context length in the V5 and V6 going forward also take note that each layers has its own set of vectors and memory space so so that's part of the scaling as well, ya I think there's another question So just going back to its memory so you mentioned that it could theoretically be infinite memory but do you see like a trend where it's just like the like it forgets mostly the oldest part of like the farthest out part of the context window or or is it just like like for some of the most recent models it's like it forgets in the middle right like some of the stuff from you know Claude or other models where they find like maybe a drop off in the middle and it remembers the beginning and end do you see the same sort of pattern where there's a dip in the middle or does it kind of like lose information or memory farther out in the beginning parts of whatever's in your context window ya so for the so the way we train it is that we try to make sure that it remembers everything within a specific target window and then from then onwards it will trail off and in that sense right especially for the V5 onwards where we try to push into the direction where it's data dependent the AI model will start to choose what to forget so in the very same way I you can ask me the question is do I remember what I add for breakfast and the answer might be no because my model in my head choose to forget that by now and that's how the AI model will will decide respectively but at the same time may choose to remember certain things so this part is curious like more theoretical in nature and one of the things that we are trying to train it firmly on is to actually ensure that it remembers system prompts even in extreme context window lengths way beyond what was what is its ideal range and because the rationale is that we should train it to remember important things more importantly and discard things that it thinks is not important and and that's the rough idea there is data dependent decay and interrogation work but this requires more testing yeah any more questions then thank you very much and if anyone wants RWKB stickers we actually do have them