Summary
Concrete ML 1.7 adds functionality to fine-tune LLMs and neural networks on encrypted data using low rank approximation parameter efficient fine-tuning. This allows users to securely outsource large weight matrix computations to remote servers while keeping a small set of private fine-tuned parameters locally. Additionally, this release includes GPU support, providing a 1-2x speed-up for large neural networks on server-grade GPUs like the NVIDIA H100. Concrete ML now also supports Python 3.11 and PyTorch 2.
What's Changed
New features
- Lora fine-tuning in FHE with MLP tutorial and gpt2 use case example (#823) (
4d2f2e6
) - Add GPU support (#849) (
945aead
) - Add support for Python3.11 (#701) (
819dca7
) - Support for embedding layers (#778) (
296bc8c
) - Support for encrypted multiplication and division (#690) (
a1bd9b8
) - Upgrade PyTorch to 2.3.1, and Brevitas to 0.10 (#788) (
c3d7c81
)
Improvements
- Relax Python version restrictions for deployment (#853) (
040c308
) - Remove Protobuf 2GB limit when checking ONNX (#811) (
c8908fa
) - Always using evaluation key compression (#726) (
b4e1060
)
Fixes
- Fix dtype check in quantizer dequant (
77ced60
) - Dynamic import of
transformers
in hybrid model (829b68b
) - Use correct torch version for Intel Mac (#798) (
a8eab89
)
Resources
- Documentation:
- Demo & Examples:
- Encrypted DNA Ancestry : https://huggingface.co/spaces/zama-fhe/encrypted_dna