grabbou's picture
Add model card
6ecea59 verified
|
Raw History Blame Contribute Delete
2.77 kB
---
license: apache-2.0
base_model: black-forest-labs/FLUX.2-klein-4B
base_model_relation: quantized
pipeline_tag: text-to-image
library_name: coreai
tags:
- coreai
- ios
- text-to-image
- flux
- react-native
---
# FLUX.2 klein 4B for Core AI on iPhone
[black-forest-labs/FLUX.2-klein-4B](https://huggingface.co/black-forest-labs/FLUX.2-klein-4B) (4B parameters, step-distilled text-to-image) exported to Apple Core AI for iOS with the [`apple/coreai-models`](https://github.com/apple/coreai-models) recipe. It runs on iOS 27 and macOS 27 with the `FlowTransformerPipeline` from the `CoreAIDiffusion` product of `coreai-models`, and generates 512x512 images in 4 steps.
## Files
`ios/` holds the text-to-image components of the recipe's iOS export, 4-bit weights (4.0 GB):
| File | Size | |
| --- | --- | --- |
| `Transformer_512.aimodel` | 2.0 GB | DiT, 25 blocks, 512x512 |
| `TextEncoder.aimodel` | 1.6 GB | Qwen3 text encoder |
| `VAEDecoder_half.aimodel` | 95 MB | latent to 512x512 image |
| `tokenizer/`, `metadata.json`, `vae_bn_*.npy` | 11 MB | |
The image-to-image transformer and VAE encoder of the full iOS export are left out. The pipeline loads one component at a time by default (`lazyModelLoading`), so it fits in the memory an iPhone 17 Pro gives an app.
## Use
With [`@react-native-ai/core-ai`](https://github.com/callstackincubator/ai), download the `ios` folder and pass its path:
```typescript
import { coreAI } from '@react-native-ai/core-ai'
import { generateImage } from 'ai'
const { image } = await generateImage({
model: coreAI.imageModel({
id: 'flux2-klein-4b',
source: { type: 'file', uri: fluxModelPath },
}),
prompt: 'a red apple on a wooden table',
size: '512x512',
seed: 42,
providerOptions: { 'core-ai': { stepCount: 4 } },
})
```
In Swift:
```swift
import CoreAIDiffusionPipeline
let pipeline = try await FlowTransformerPipeline(from: modelURL)
let configuration = PipelineConfiguration(
prompt: "a red apple on a wooden table",
seed: 42,
stepCount: 4,
guidanceScale: 1.0,
schedulerType: .discreteFlow
)
let image = try await pipeline.generateImages(configuration: configuration) { _ in true }.images[0]
```
## Export
From [`apple/coreai-models`](https://github.com/apple/coreai-models) at `5de95c6` (1.0.0), with `coreai-core` 1.0.0b3. This is `--platform iOS` (4-bit, single-function, 512) without the image-to-image components:
```bash
uv run coreai.diffusion.export flux2-klein-4b --single-function \
--components transformer_512 text_encoder vae_decoder_half
```
## License
Apache-2.0, as the original model. The weights were converted to Core AI and quantized to 4 bits, and are otherwise unchanged. FLUX.2 [klein] is by [Black Forest Labs](https://bfl.ai).