- Видео 30
- Просмотров 240 588
The Art Of The Terminal
Германия
Добавлен 9 ноя 2023
Rediscovering *nix tech
How Much VRAM My LLM Model Needs?
Will that LLM model from ollama library fit in your GPU card's memory?
I explain how to use an online tool (huggingface.co/spaces/Vokturz/can-it-run-llm) to calculate VRAM requirements and what is quantization.
I explain how to use an online tool (huggingface.co/spaces/Vokturz/can-it-run-llm) to calculate VRAM requirements and what is quantization.
Просмотров: 897
Видео
Best Self-Hosted Alternatives to ChatGPT & Midjourney
Просмотров 828Месяц назад
🤔 Why pay for GenAI subscriptions to get censored or biased content? 🤔 Why risk uploading personal documents to companies having troubles defining what's "open" and "safe"? 🤔 Why not embrace the fun of using dynamically evolving open source tools? Take back the driver's seat! 🤯 Demos of my easy to use multimodel LLM workflows, querying local PDFs (simple RAG) and websites. I show which open LLM...
Webassembly Is NOT What You Think!
Просмотров 16 тыс.3 месяца назад
🤔 Is wasm just another hype bubble or is it about time to retire docker and kubernetes? 🤔 What all these words mean: WAT, WIT, WASI, WARG?.. 🤔 Why on Earth did wasm jump from its original niche to the server-side? 🤯 Quick demos of ngx_wasmx, Extism, Podman for wasm, Spin, Wasmcloud 🧠 Rust is the most popular language for webassembly! Codecrafters is a platform to learn programming by working on...
Why Python Packaging is Such a MESS?
Просмотров 7045 месяцев назад
Why Python Packaging is Such a MESS?
Games Only Developers Will Understand
Просмотров 6468 месяцев назад
Games Only Developers Will Understand
Essential CLI Tools For Code Projects
Просмотров 4,4 тыс.Год назад
Essential CLI Tools For Code Projects
very useful video. Thank you
Thanks for the feedback!
Wow! Very helpful tool, thank you!
This is one of the best programming videos ive ever seen, so well researched
Thank you so much for the feedback!
this video is good
At some point you have to ask whether it is good idea to stuff this new feature in DB. HTML rendering? Does it make it easier or faster?
My point with this video was to show that postgresql is not a database anymore, it's a platform. Whether to use it for HTML rendering or not is for the users to decide.
@@TheArtOfTheTerminal Absolutely, great video btw.
@@ivanmaglica264 Thank you
34:56 - your comment in the sidebar about NEVER running curl | bash just earned you a subscription. I HATE that that's so common these days!!! (Interesting video overall, too. A bit off target for what I was hoping to learn today, but super interesting!)
Thank you for the feedback! Yeah, basic shell hygiene somehow got out of fashion lately.
Great video! Would you recommend the hardware you used or would you buy something else now that you have tested it for a while? I want to build a AI machine too, but I'm struggeling with the hardware selection. I will definitely come back to this video.
If you're into tinkering and prefer linux -- you can look at my specs ruclips.net/video/ywgJJ4X_kpY/видео.html and build something similar. Or, if you're into Apple products, people are saying good things about the new mac minis.
llama is not open source, if u read the tos they redefined open source which has most people just taking them at their word ... it is not open source
I agree, it's really tricky when it comes to *model* licenses and open weights vs open source discussion. What I meant is that the ollama software is open source ("the docker of LLM models").
Very nice video! Thanks for going in detail.
i use invoke ai now for last two years and the new flux models on my 4090 is perfect ! But ollama models still don't come close to o1 ! I tested the new qwen2.5-coder:32b-instruct-q4_0 and i must say that open source is getting there. But unfortunately o1 is still the best for my use case but i think for others qwen2.5-coder:32b-instruct-q4_0 is perfect .My plan is to buy 2 x 3090 and run better models(72b)
It's great to see a full workflow and build like this! Thanks, I'll have to try InvokeAI. It looks a lot friendlier than Automatic1111.
Docker is the worst technology ever, please don't bring them to IOT
Why is that?
I really need to become your friend! PostGreSQL is my favorite and has been for a long time. But I'm just a beginner. And I'm working on a new type of complex relationship that will enable AI to become fully conscious and "human like". This relationship has no similarity to the "four rules of database normalization". Please try to contact me. Don't know how else to reach you. Arthur Baldwin
I understand what it means, but to folks getting introduced to your channel for the first time, IOT is an unexplained acronym. It's always a good idea to explain what used acronyms stand for initially otherwise people will get frustrated and swipe away. For those wondering, IOT = Internet Of Things aka smart devices, like your Google Home, Smart Plug, smart vacuum cleaner, etc.
Agree. Thank you for taking the time to share that and help other viewers! I appreciate your feedback.
A video that had to be made! Each of the tools created for package management were created to fix the problems the previous one created: In the golden age of python, we just downloaded and unzipped extensions into our project directory, where they were automatically on our pythonpath. Some extensions had C requirements, it was good if these used distutils, since then you had a standard interface to build them. This did mean a lot of duplication and waste of disk space. You could use symlinks if you were dedicated, but few did. Linux distributions started including python packages in their repos, for the benefit of python programs they wanted to provide. This caused a little friction: it was considered bad practice to break an API, but a few libraries did so, to the point where the need to have two different versions installed at once might be necessary. Setuptools (and hence easy_install) was born in this environment, allowing the user to install two different versions of a library into the system packages and configure which one the program should point at. The problem with setuptools was that if programs failed to be explicit in which version was to be loaded (and indeed, most programs did not correctly specify their library versions), installing something new with easy_install would break your existing programs. pip was a solution in that it would actually do the dependency graph, rather than just solving for immediate needs. I think pip predates virtualenvs, if not in terms of release date, certainly in terms of entering the python developer zeitgeist; but because pip was also great an breaking installed programs, virtualenvs sprung up pretty quickly. I'm not sure why having two different versions of a library installed needs to be so difficult. Maven had this problem absolutely solved for Java in the early 00s. Having a program specify which packages should provide which modules is just not that onerous, but that's not the path we went down. I also have trouble understanding why, if something builds and installs today, it can fail tomorrow because of some dependency changing their API. We shouldn't really be breaking APIs at all - but in the event it happens, a package installer should identify this and prevent the upgrade. These days, if I can use Nix to set up a python environment, I'll do that every time. It's so much more reliable, and it works for non-python dependencies, too. I don't think Nix is the best solution long term, in particular I want something like lavamoat or emakers so that I can be completely safe from supply-chain attacks. But it's definitely better than what we've been doing up until this point. I'd also like to stop needing to specify the language runtime version, it should just be assumed that if a program worked on python version N, it should work on N + M. Python worked this way up until version 3.
If you are confused, SMGS is asm.js
Right :)
we need some tutorials to understand it better
On which topics exactly: table inheritance, types or extensions I've demoed?
Thank you genuinely for making this video! I did a small amount of research into WASM and decided AGAINST pursuing it further due to my own misconceptions. Thank you for making this video. You've completely changed my mind about WASM. You probably literally changed my life by making this video. Thanks so much!
Thank you for the feedback! :)
I did not know I needed this. Then this 1hr novel made me check twice if I'm subsribed. Thx brother, a mountain of respect and kudos to you for your work.
Thank you so much for your feedback :)
Read up on wasm gc. It's a newer extension only barely supported, but it will allow gc'd languages to use the host runtime's garbage collector.
Needs to be a webassembly os
zellij is written in rust and supports webassembly plugins, wonder if it could act more like os than multiplexer?
i'll take anything that "replace" containers/K8S, but what kind of idiot think that wasm would ? wasm ain't bad though, it's just another VM.
probably the same idiots who thought that docker was a good idea ... (well, wasm is a good idea)
Why don't we use LLVM for this, I know LLVM is used to compile to machine code but we can still make a runtime for LLVM byte code
Good question for which I don't have an answer :).
to summarize, WebAssembly for server-side is basically a JVM for C/C++/Rust
In part, yes.
@@nitsanbh and java byte code can be compiled into wasm. It truly is the compile once run everywhere. We are just counting on a good posix compliant runtime so we can use the standard library
I literally just learned about Nginx and what it does - and now I'm here, somehow (thanks algorithm). This is all very intimidating. How does a person ever understand enough to build this stuff in the first place? Great video. Very impressive presentation. Thanks!
Thank you for the feedback! Nginx is an amazing piece of technology. Have you also checked openresty? Back in the day I've built a file sharing service with expiring download links using just openresty and lua. It was fun and performed really well.
by learning how to think and learn every single time there is either or both: a new attempt to get familiar with new theory, either in breadth or depth( 🤔 ) or *whilst in some fuge state drenched delusions of simplicity*, we experiment with, or attempt to, put theory into practice under new rules, conditions, or some other imaginary construct that makes what we are calling trying the out be unique or not-unique to what we understand our prior experience to be, in whole or in its parts, even if it absolutely is or is not or otherwise that's how. good luck!
This is almost a few months of intense learning and a few years of passive reading and assimilation condensed into an hour. Thank you, I take a bow. 🙏
Seeing comments like yours really make all the efforts and the suffering (writer's blocks, self-doubt etc.) worth it. Thank you!
41:52 Idioms mixed: "Right off the bat." "Right out of the box."
Yes, you're right, thanks for noticing!
They are working on a WASM GC. It's still young and unripe. It will be distilled once WASM APIs become the norm. And I'm pretty certain it will take over IOT, then mandatory HW vendor based dev env will only be relevant to implement the WASI standards.
Yeah, WASM GC will be a mega feature!
Great video. Very thorough and educative. Thank you.
Thank you for the feedback!
Excellent explanation!
tell me please, what font do you use
Terminal font is space mono.
Fuck energy efficient!
Well for some devices you have no choice
How do you even debug stored procedures? Also, table inheritance is the devil. Honestly my head is full with the usual sql stuff, I don't want to remember which table is inherited from which and where my data actually lives.
Stored procedures should be as granular as possible -- just like good methods in your class -- doing just one thing. You wouldn't have to debug them. If you do need to debug a stored procedure, IMO it's a design problem. Re: inheritance. Do you always need to keep in your head the full inheritance chain of a class you're working with? If yes -- again, it's a design problem.
@@TheArtOfTheTerminal thank you for answer
Really great video appreciate your efforts to explore and show case the use cases.🎉
Thank you for the feedback!
Highly recommend Extism. They only support well agreed upon standards and have the most portability and simplest developer experience.
Great video, thanks. I think something good has happened to uv since your video though, I do your crash test (on windows) in about 20 seconds now with clean caches and good bandwidth, about 4 seconds with cached packages.
TLDR?
Whars the background music?
All music is AI-generated.
I stable across your video at 2 am and here am I at the end of it: I learned so much with you and I will test some stuff out! You have my deepest gratitude and appreciate to all the resources and research you made! I'm subscribing and liked your video! Hope other people find your work! Amazing! Keep going!
Thank you so much for the feedback! :)
A capability is an unforgeable reference that can be used to access a resource. Unforgeable in the sense that the only way to get one is to be given a reference (here, via the configuration). Capability systems have easy to audit security properties - we've been using them in high assurance environments for nearly 60 years.
Yes, good ideas never disappear, they resurface in their new "incarnations".
Excellent video
Thank you
We all thought JS was gone. Plot twist: Webassembly is just a trojan horse for JS taking over servers once and for all
Haha, looks like it.
Who thought js was gone?
It isn't really a virtual CPU or a virtual machine, as the JVM has described it... it is machine code for a virtual CPU architecture.
You can put it that way too, yes.
after watching the video I don't think Flash was killed because of security. I feel it was killed cause it wasn't able to be used in business settings. It was made as a tool for making cool things like games and animations. It was never made for the purpose that Adobe wanted to make it be. Creativity is being locked behind paywalls. This is similar to why Skype was killed it wasn't made for the purpose that Microsoft wanted it put it to. It was a quirky, fun messaging application.
Well, yes, I do agree there were other contributing factors like, say, HTML5 advancements. And of course, the financial dept at Adobe didn't see flash performing well. But I think that the bad rep caused by security issues hyperaccelerated all of that and eventually put this tech to sleep.
Great video. I cannot wait for wasm ecosystem to mature.
They really took the script out of JavaScript
Wait that already exists
Liked, subscribed and saved the video to my favorites.
This is the most concise, detailed and deep explanation of WebAssembly that I ever heard!
Thank you so much for the feedback! Glad you liked it :)
There is one fatal flaw in webassembly - it does not allow irreducible CFG. This alone renders it just a fancy toy.
By "irreducible CFG." I gather you mean that web assembly does not allow creation of the kind of spaghetti code one can make with GOTO. On the face of it that sounds like a good idea and I'm sure the creators have good reasons for not allowing that. Please explain how this makes web assembly a "fancy toy"?
@Heater-v1.0.0 take a few small methods - nice, perfectly procedural CFG. They call each other. Oopsie, once you consider the global control flow it is already likely not procedural. Then try to inline the methods. You get irreducible CFG. And your high level compiler may have a lot more information on what to inline, so you cannot defer it to the webassembly engine to do it in the last moment. Second example - any sufficiently complex FSM is irreducible. Any bytecode engine. Any parser or even a regular expression. Want to implement them efficiently? You won't, unless your underlying engine supports irreducible control flow, or, even better, computed goto. Want a threaded code VM? No chance without a computed goto (i.e., indirect jumps).
I think I could have understood you, if you didn't speak in alien. Also, to express certain things you might need to write a blog post or a book, instead of a comment.
@nandoflorestan huh? Graph reducibility is a concept everyone must know from an introductory course on compilers. To explain it simpler: WebAssembly is limited to the constraints of procedural programming, and does not allow any control flow that cannot be expressed as a combination of if-then, for, while, do and such.
@@vitalyl1327 Everyone must know? Don't forget that 99.999% of all humans and precious few software engineers have taken an introductory course on compilers. You are right WebAssembly retracts itself to those structured blocks. Back in the day we called it "structured programming" rather than "procedural programming" but never mind. I suspect that this that designed WebAssembly have indeed taken introductory courses on compilers or otherwise know what they are doing. Seems to me likely that such restrictions are there on purpose so as to satisfy security considerations in the browser and other sandboxes. Far from being a "fancy toy".
font pls
Terminal font is space mono.