ragdoll-studio
amx
ragdoll-studio | amx | |
---|---|---|
11 | 19 | |
156 | 898 | |
- | - | |
9.6 | 4.3 | |
16 days ago | 8 days ago | |
Python | C | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ragdoll-studio
-
Ask HN: What do you use local LLMs for?
- Basic internet search (I start ollama CLI faster than I can start a browser - https://ollama.com)
- Formatting/changing text
- Troubleshooting code, esp. new frameworks/libs
- Recipes
- Data entry
- Organizing thoughts: High-level lists, comparison, classification, synonyms, jargon & nomenclature
- Learning esp. by analogy and example
RAG for:
- Website assistants (https://github.com/bennyschmidt/ragdoll-studio/tree/master/e...)
- Game NPCs (https://github.com/bennyschmidt/ragdoll-studio/tree/master/e...)
- Discord/Slack/forum bots (https://github.com/bennyschmidt/ragdoll-studio/tree/master/e...)
- Character-driven storytelling and creating art in a specific style for video game loading screens, background images, avatars, website art, etc. (https://github.com/bennyschmidt/ragdoll-studio/tree/master/r...)
-
Apple Introduces M4 Chip
> I always say I want AI to work offline
I'm with you, I'm most excited about this too.
Currently building an AI creative studio (make stories, art, music, videos, etc.) that runs locally/offline (https://github.com/bennyschmidt/ragdoll-studio). There is a lot of focus on cloud with LLMs but I can't see how the cost will make much sense for involved creative apps like video creation, etc. Present day users might not have high-end machines, but I think they all will pretty soon - this will make them buy them the way MMORPGs made everyone buy more RAM. Especially the artists and creators. Remember, Photoshop was once pretty difficult to run, you needed a great machine.
I can imagine an offline music/movies apps, offline search engines, back office software, etc.
- Ask HN: Web framework for custom character sheets?
-
Ask HN: Ideas for LLM-Based Games
I built a JavaScript library for creating LLM-based game NPCs, here's a video demo: https://github.com/bennyschmidt/ragdoll-studio/tree/master/e...
You drop all their knowledge into a file, like .txt. or .html and it uses RAG to learn everything in the file, so if it's a vendor things like shop inventory, prices, or if it's a storyteller/questgiver you can give it knowledge the player must uncover, etc.
It uses the LLM for natural sounding conversations and instructions ("speak in the style of..." etc.)
-
Answering Legal Questions with LLMs
> You would also need to load an enormous amount of precedential case law
Very easily done. Is that it?
> lack of common sense, false conclusions
The AI tool doesn't replace the judge/DA/etc. it's just a very useful tool for them to use. Checkout the "RAG-based learning" section of this app I built (https://github.com/bennyschmidt/ragdoll-studio) there's a video that shows how you can effectively load new knowledge into it (I use LlamaIndex for RAG). For example, past cases that set legal precedents, and other information you want to be considered. It creates a database of the files you load in, so it's not making those assumptions like an LLM without RAG would. I think a human would be more error-prone than an LLM with vector DB of specific data + querying engine.
> I don't see the utility
Then you are not paying attention or haven't used LLMs that much.
> actual work involved in practicing law
This is what it's best at, and what people are already using RAG for: Reading patient medical docs, technical documentation, etc. this is precisely what humans are bad at and will offload to technology.
> actual research is required
You have not tried RAG.
> LLMs struggle to produce useful outputs
You have not tried RAG.
> LLMs are unlikely to identify issues
You have not tried RAG.
> the LLM by definition is creative analysis
You have not tried RAG.
-
LLMs and the Harry Potter Problem
I've made AI assistants that are perfectly accurate with products, pricing, etc. yet still maintain a human quality: https://github.com/bennyschmidt/ragdoll-studio/tree/master/e...
You can accomplish this with RAG.
Your overall point is taken though, the LLM itself is not enough, fine-tuning is not always feasible, and I think no matter how good an AI persona gets at, say, teaching yoga - for some yoga students it will never replace an in-person instructor.
However for a game NPC, online agent, Discord bot, etc. not to mention research, translation, tutorials, summarizing, etc. there is a lot of present day utility for LLMs.
-
Show HN: Real-time video clone trained on 100h of Sam Altman startup content
Very cool app, if anyone wants to try the FOSS alternative to this check out Ragdoll Studio - https://github.com/bennyschmidt/ragdoll-studio
Create anyone you want based on a list of documents (URLs), chat with them, have them create images in their style, tell stories, etc.
(runs open models with Ollama, Stable Diffusion, etc. not OpenAI)
I would be curious what Sam Altmans people make, you can share characters here: https://ragdoll-studio.vercel.app
- Show HN: Perfect art and photography in Ragdoll Studio (FOSS AI software)
-
Show HN: Ragdoll Studio (fka Arthas.AI) is the FOSS alternative to character.ai
It's a FOSS alternative because instead of using their online platform to make an account in order to interact with their characters, you instead download and run this source code without needing an account to interact with yours, and those in the community - even offline if you want.
There's more to it than just chatting with AI models - these "ragdolls" are based on RAG so they are able to have distinct personalities and scoped knowledge. They can't leak info they don't know about, can't be censored from talking about things they do know about, and can be exported and shared with others on the community site. The model itself is more like the underlying engine, where the ragdoll is a specific persona that you can deploy to a variety of tasks (starting with just chat).
I want to go beyond what character.ai is even dreaming of doing by making this into a creative suite for all things AI: Chat, storytelling, art & visual design, cinematography, CGI, music & sound effects, and so-on. It would be great to have an open-source character-focused tool for making stories, cinematics, films, music, etc. Here's an example that uses a ragdoll as an NPC in a game that has specific knowledge that the player can uncover in order to advance in the game: https://github.com/bennyschmidt/ragdoll-studio/tree/master/e...
Thanks for the question, I will add a section on how these are fundamentally different from just chatting with ChatGPT.
amx
-
Apple Introduces M4 Chip
Apple has the NPU (also called Apple Neural Engine), which is specific hardware for running inference. Can't be used for LLMs though at the moment, maybe the M4 will be different. They also have a vector processor attached to the performance cluster of the CPU, they call the instruction set for it AMX. I believe that that one can be leveraged for faster LLM inferencing.
https://github.com/corsix/amx
-
Optimize sgemm on RISC-V platform
I am talking about the matrix/vector coprocessor (AMX). You can find some reverse-engineered documentation here: https://github.com/corsix/amx
On M3 a singe matrix block can achieve ~ 1TFLOP on DGEMM, I assume it will be closer to 4TFLOPS for SGEMM. The Max variants have two such blocks. Didn't do precise benchmarking myself, but switching Python/R matrix libraries to use Apple's BLAS result in 5-6x perf improvement on matrix heavy code for me.
-
Intel AMX
It's really cool. I hope it becomes more common for training/inference/numerics capable accelerators to be included in consumer hardware.
Apple's AMX is really under-documented, while the instructions were reverse engineered, Virtually no benchmarks are available comparing current chip generations, models and variants.
https://github.com/corsix/amx
- Why do x86 processors take up so much energy when compared to ARM?
-
Bfloat16 support coming to Apple's Metal and PyTorch [video]
Visible in the unofficial documentation for AMX instructions too - M2 only bf16 functionality - https://github.com/corsix/amx/blob/main/matfp.md
-
LLaMA-7B in Pure C++ with full Apple Silicon support
Confusingly there are 2 mechanisms to do matrix operations on the new apple hardware - AMX (https://github.com/corsix/amx) - and the ANE (apple neural engine) - which is enabled by CoreML. This code does not run on the neural engine but the author has a branch for his whisper.cpp project which uses it here: https://github.com/ggerganov/whisper.cpp/pull/566 - so it may not be long before we see it applied here as well. All of this is to say that it actually could get significantly faster if some of this work was able to be handed to the ANE with CoreML.
-
Linux 6.2: The first mainstream Linux kernel for Apple M1 chips arrives
really? seems pretty well documented here: https://github.com/corsix/amx
-
AMX: The Secret Apple M1 Coprocessor
Article is almost two years old, and has a huge correction at the bottom. It's just a proprietary ISA extension, there's even a repo documenting what's been reverse engineered.
- corsix/amx: Apple AMX Instruction Set
-
Show HN: Port of OpenAI's Whisper model in C/C++
You are correct, in that those are the four
My understanding is that the AMX is more tightly wound with the CPU, ultimately being accessible via an instruction set (https://github.com/corsix/amx), and it is useful if you need to do matrix multiplications interleaved with other CPU tasks. A common example would be a VIO loop or something where you want that data in the CPU caches.
The GPU and Neural Engine are not that – they take some time to set up and initialize. They also can parallelize tasks to a much higher degree. The GPU is more generalizable, because you can write compute shaders to do anything in parallel, but it uses a lot of resources. I'll have to check out the PR to see how exactly the MPS shaders match up with the task at hand, because you could also consider writing Metal compute shaders by hand.
I know the least about the ANE, but it has specific hardware for running ML models, and you have to process the weights ahead of time to make sure they are in the right format. It can run ML models very efficiently and is the most battery friendly.
What are some alternatives?
emacs-pure
whisper.cpp - Port of OpenAI's Whisper model in C/C++
sentencepiece - Unsupervised text tokenizer for Neural Network-based text generation.
whisper.cpp - Port of OpenAI's Whisper model in C/C++
llama-mps - Experimental fork of Facebooks LLaMa model which runs it with GPU acceleration on Apple Silicon M1/M2
amx-rs - Rust wrapper for Apple Matrix Coprocessor (AMX) instructions
mighty-snitch - noticing and preventing network requests should be easy
zfs - OpenZFS on OS X
amx-benchmarks - Running linear algebra as fast as possible on Apple silicon
text-generation-webui - A Gradio web UI for Large Language Models. Supports transformers, GPTQ, AWQ, EXL2, llama.cpp (GGUF), Llama models.
icomplete-vertical - Global Emacs minor mode to display icomplete candidates vertically
llama-dl - High-speed download of LLaMA, Facebook's 65B parameter GPT model [UnavailableForLegalReasons - Repository access blocked]