447 karma · joined September 10, 2020
Every time we detect, for instance with a vision model, that the interface changed, we ask the Large Action Model to recompute the appropriate code and have it be executed.
Regarding generating tests from bug report totally possible! For now we focus on having a good mapping from low level instructions ("click on X") -> code, but once we solve that, we can have another AI take bug reports -> low level instructions, and use the previously trained LLM!
Really like your use case and would love to chat more about it if you are open. Could you come on our Discord and ping me? https://discord.gg/SDxn9KpqX9
We are thinking of developing an extension that would connect the browser to LaVague so that actions can be sent to the extension and be executed locally, thus bypassing their barriers
Lots of paper show that fine-tuning only helps with steerability and form (https://arxiv.org/abs/2402.05119), therefore I thought it would be sufficient to provide just the right examples and it did work!
We do intend to create a decentralized dataset to further train models and have maybe a 2b or 7b model working well
Once we solve browser automation, we intend to support other integrations to further facilitate automation of workflows
However, the net gains, in my humble opinion, could be phenomenal. Imagine all the time, mental energy and money spent on navigating through the legacy of today's society? From the legacy legal systems that is super complex, to legacy websites, I believe there is much time to be saved so we can dedicate resources to what truly matters, intellectual pursuits or quality time with friends and family
The training therefore happens on GPUS that can be ordinary if we go for TPMs only, in the case of traceability only, Confidential GPUs if we want more.
We will make the whole code source open source, which will include the base image of software, and the code to create the proofs using the secure hardware keys to sign that the hash of a specific model comes from a specific training procedure.
Of course it is not a silver bullet. But just like signed and audited closed source, we can have parties / software assess the trustworthiness of a piece of code, and if it passes, sign that it answers some security requirements.
We intend to do the same thing. It is not up to us to do this check, but we will let the ecosystem do it.
Here we focus more on providing tools that actually link the weights to a specific training / audit. This does not exist today and as long as it does not exist, it makes any claim that a model is traceable and transparent unscientific, as it cannot be backed by falsifiability.
There are ways with secure hardware to have at least traceability, but not transparency. This would help at least to know what was used to create a model, and can be inspected a priori / a posteriori
BlindAI has been around for almost two years and is open source. We are improving on it with recent hardware and AI models, but this is not just communication stunt.
I apologize though for not providing as much as content as you would expect but we will do our best to provide something of value to the AI & privacy community ASAP.
- The enclave uses primitives from AWS that we cannot fake to create a certificate containing a hash of the code loaded, a public key to exchange keys, and other security information. This certificate is signed by a hardware derived key from AWS, and therefore we cannot forge such certificates. Here I talk about AWS but it can be Intel or AMD depending on the solution you choose.
- You receive the certificate, check it's valid locally using AWS public key.
- Once you know locally on your machine that we are using a secure enclave without backdoor that will handle your data properly (because it is a valid enclave and you can check that the hash you see in the certificate is the same as the audited open-source code), you can finish setting up the TLS channel using the public key inside the certificate
- Data is encrypted locally and sent through this TLS to the enclave
- Data is decrypted there, where we cannot peek due to isolation
- AI model is applied inside
- Output is encrypted inside enclave
- Output is sent back to you for you to decrypt it
I hope it makes it clear!
We have a live example of providing a GPT model inside a secure enclave here: https://huggingface.co/spaces/mithril-security/blindai
We will soon release one with OpenChatKit.
I think it's just the beginning and the open-source community will provide very competitive LLMs.
This is called AWS Nitro Enclave and this is one of the hardware we will cover. You can find more about it here: https://aws.amazon.com/ec2/nitro/nitro-enclaves/
With attestation of secure enclaves (https://blog.mithrilsecurity.io/confidential-computing-expla..., sorry it's a bit old and not tech enough we will update it), you can have technical proof that people will respect what they say contractually. I don't think OpenAI is using any real Privacy Enhancing Technologies, and even if they did you have no actual proof they are doing anything (unless they use secure enclaves).
I agree, ideally you would like a purely mathematical solution like homomorphic encryption but truth is we might not see that before years or more (public key cryptography is not known to be fast).
Not everyone has access to high-end consumer hardware, and just maintaining the software/hardware stack on premise is complicated, so imagine having to manage thousands of device. It is not impossible unless you are Apple/Google, and even if you are it's not perfect. By sending model on the device it is quite easy to reverse engineer it, so not only your IP gets stolen easily but people can start making adversarial attacks.
Yes enclaves are a generic solution. In the end it's a bunch of level hardware primitives. But to have something that is truly fast, secure and easy to use, you need to focus on a use case to serve your users. We have chosen to focus on AI because we love AI and think it's a first niche market that is relevant, especially today.
I am not sure about going more on device / on premise. You can benefit from huge scaling effects by relying on managed services that are easier to maintain, patch, and deploy.
I have a video from a webinar here: https://youtu.be/a2nprLS6bSA?t=1882, we have some examples in our blog https://blog.mithrilsecurity.io/privacy-voice-ai-with-blinda..., and we will release a series where we show to use secure enclaves by building a KMS with secure enclaves.
I don't necessarily agree with your statement regarding deployment on laptop. Not everyone has the skill/hardware to deploy such models, and providing simple APIs to leverage those, especially if the model is complex, could bring a lot of value to users in our opinion. We have seen hospitals wanting a simple API to do speech to text for medical voice notes and they just want an app on their old phones. I hardly see them deploying a 1B Whisper model for this use case.
Using BlindAI would allow them to have state-of-the-art AI, without having to worry about showing their data to us.
We are not using homomorphic encryption as it would be too slow. We are working on hosting OpenChatKit inside a secure enclave that benefits from hardware isolation to protect data while it is in clear for the application of the AI model.
We have developed an attestation system that does not rely on Cloud providers, but is closer to the ones provided by hardware provider, for instance Intel. You can find more about our attestation here: https://blindai-preview.mithrilsecurity.io/en/latest/docs/ad...
The goal of our work is to provide a more transparent and privacy-friendly interface for people working in sensitive industries to leverage LLMs. With the attestation mechanism, technical proofs can be given regarding the fact that data will not be used for any other purpose than inference.