QKeras
Compatibility layer
Warning
Currently the compatibility layer is in alpha stage and must not be for any purpose other than testing or development. Please do not use it in production. In general, we recommend using HGQ2
directly for all new models, as the compatibility layer only exposes a small subset of the HGQ2
functionality, and we cannot guarantee that it will be maintained in the future. If you are using QKeras
for L1 trigger applications, we recommend using HGQ2
directly, as it is designed for this purpose and will be more efficient than QKeras
.
This framework is designed as a alternative to QKeras
for ultra-low latency applications, mainly L1 triggers at collider experiments. As Qkeras
is based on keras v2, HGQ2 may not coexist with QKeras
in the same environment, thus no interoperability could be expected.
However, as most QKeras
models targeting hls4ml
may be represented 1:1 in HGQ2, we implemented a minimal QKeras
compatibility layer on top of HGQ2. However, there are certain layers in QKeras
that are not supported by HGQ2, such as the RNN family and hard activation layers. Operations not supported by hls4ml
, such as auto_po2
integer bits assignment with float scaling factors, are also not supported.
Installation
HGQ2 provides a importable qkeras
package directly, no extra procedure is required.