invoke-ai / invoke-ai/InvokeAI
[bug]: Official FLUX.2 Klein Qwen3 8B Encoder installs as Unknown; metadata update fails on macOS
- Dominant language
- Python
- Stars
- 28.2k
- Forks
- 3k
- Avg merge
- 6d 5h
- Merged PRs (30d)
- 19
Description
### Is there an existing issue for this problem?
- [x] I have searched the existing issues
### Install method
Invoke's Launcher
### Operating system
macOS
### GPU vendor
Apple Silicon (MPS)
### GPU model
M2 Max
### GPU VRAM
32
### Version number
6.14.0
### Browser
_No response_
### System Information
{
"version": "6.14.0",
"dependencies": {
"absl-py" : "2.5.0",
"accelerate" : "1.14.0",
"annotated-doc" : "0.0.5",
"annotated-types" : "0.8.0",
"anyio" : "4.14.2",
"appnope" : "1.0.0",
"argon2-cffi" : "25.1.0",
"argon2-cffi-bindings" : "26.1.0",
"arrow" : "1.4.0",
"asttokens" : "3.0.2",
"async-lru" : "2.3.0",
"attrs" : "26.1.0",
"babel" : "2.18.0",
"bcrypt" : "3.2.2",
"beautifulsoup4" : "4.15.0",
"bidict" : "0.24.1",
"blake3" : "1.0.9",
"bleach" : "6.4.0",
"certifi" : "2026.7.22",
"cffi" : "2.1.1",
"charset-normalizer" : "3.5.1",
"click" : "8.5.0",
"coloredlogs" : "15.0.1",
"comm" : "0.2.3",
"compel" : "2.4.0",
"contourpy" : "1.3.3",
"cryptography" : "50.0.1",
"CUDA" : "N/A",
"cycler" : "0.12.1",
"debugpy" : "1.8.21",
"defusedxml" : "0.7.1",
"Deprecated" : "1.3.1",
"diffusers" : "0.39.0",
"dnspython" : "2.8.0",
"dynamicprompts" : "0.31.0",
"ecdsa" : "0.19.2",
"einops" : "0.8.2",
"email-validator" : "2.3.0",
"executing" : "2.2.1",
"fastapi" : "0.141.1",
"fastapi-events" : "0.12.2",
"fastjsonschema" : "2.22.2",
"filelock" : "3.32.4",
"flatbuffers" : "25.12.19",
"fonttools" : "4.63.0",
"fqdn" : "1.5.1",
"fsspec" : "2026.7.0",
"gguf" : "0.19.0",
"h11" : "0.16.0",
"hf-xet" : "1.6.0",
"httpcore" : "1.0.9",
"httptools" : "0.8.0",
"httpx" : "0.28.1",
"huggingface_hub" : "1.28.0",
"humanfriendly" : "10.0",
"idna" : "3.19",
"ImageIO" : "2.37.4",
"imageio-ffmpeg" : "0.6.0",
"importlib_metadata" : "9.0.0",
"InvokeAI" : "6.14.0",
"ipykernel" : "7.3.0",
"ipython" : "9.16.1",
"ipython_pygments_lexers" : "1.1.1",
"isoduration" : "20.11.0",
"jax" : "0.7.1",
"jaxlib" : "0.7.1",
"jedi" : "0.20.0",
"Jinja2" : "3.1.6",
"json5" : "0.15.0",
"jsonpointer" : "3.1.1",
"jsonschema" : "4.26.0",
"jsonschema-specifications": "2025.9.1",
"jupyter-events" : "0.12.1",
"jupyter-lsp" : "2.3.1",
"jupyter_builder" : "1.2.2",
"jupyter_client" : "8.9.1",
"jupyter_core" : "5.9.1",
"jupyter_server" : "2.20.0",
"jupyter_server_terminals" : "0.5.4",
"jupyterlab" : "4.6.3",
"jupyterlab_pygments" : "0.3.0",
"jupyterlab_server" : "2.28.0",
"kiwisolver" : "1.5.0",
"kornia" : "0.8.3",
"kornia_rs" : "0.1.14",
"lark" : "1.3.1",
"markdown-it-py" : "4.2.0",
"MarkupSafe" : "3.0.3",
"matplotlib" : "3.11.1",
"matplotlib-inline" : "0.2.2",
"mdurl" : "0.1.2",
"mediapipe" : "0.10.14",
"mistral_common" : "1.11.7",
"mistune" : "3.3.4",
"ml_dtypes" : "0.5.4",
"mpmath" : "1.3.0",
"nbclient" : "0.11.0",
"nbconvert" : "7.17.1",
"nbformat" : "5.11.1",
"nest-asyncio2" : "1.7.2",
"networkx" : "3.6.1",
"notebook" : "7.6.2",
"notebook_shim" : "0.2.4",
"numpy" : "1.26.4",
"onnx" : "1.16.1",
"onnxruntime" : "1.19.2",
"opencv-contrib-python" : "4.11.0.86",
"opt_einsum" : "3.4.0",
"packaging" : "26.3",
"pandocfilters" : "1.5.1",
"parso" : "0.8.7",
"passlib" : "1.7.4",
"pexpect" : "4.9.0",
"picklescan" : "1.0.5",
"pillow" : "12.3.0",
"platformdirs" : "4.11.4",
"prometheus_client" : "0.26.0",
"prompt_toolkit" : "3.0.53",
"protobuf" : "4.25.9",
"psutil" : "7.2.2",
"ptyprocess" : "0.7.0",
"pure_eval" : "0.2.3",
"pyasn1" : "0.6.4",
"pycountry" : "26.2.16",
"pycparser" : "3.0",
"pydantic" : "2.13.4",
"pydantic-extra-types" : "2.11.1",
"pydantic-settings" : "2.15.0",
"pydantic_core" : "2.46.4",
"Pygments" : "2.21.0",
"pyparsing" : "3.3.2",
"PyPatchMatch" : "1.0.2",
"python-dateutil" : "2.9.0.post0",
"python-dotenv" : "1.2.3",
"python-engineio" : "4.13.5",
"python-jose" : "3.5.0",
"python-json-logger" : "4.2.0",
"python-multipart" : "0.0.32",
"python-socketio" : "5.16.4",
"PyWavelets" : "1.9.0",
"PyYAML" : "6.0.3",
"pyzmq" : "27.2.0",
"referencing" : "0.37.0",
"regex" : "2026.7.19",
"requests" : "2.34.2",
"rfc3339-validator" : "0.1.4",
"rfc3986-validator" : "0.1.1",
"rfc3987-syntax" : "1.1.0",
"rich" : "15.0.0",
"rpds-py" : "2026.6.3",
"rsa" : "4.9.1",
"safetensors" : "0.8.0",
"scipy" : "1.17.1",
"semver" : "3.0.4",
"Send2Trash" : "2.1.0",
"sentencepiece" : "0.2.0",
"setuptools" : "84.0.0",
"shellingham" : "1.5.4",
"simple-websocket" : "1.1.0",
"six" : "1.17.0",
"sniffio" : "1.3.1",
"sounddevice" : "0.5.6",
"soupsieve" : "2.9.2",
"spandrel" : "0.4.2",
"stack-data" : "0.6.3",
"starlette" : "1.6.0",
"sympy" : "1.14.0",
"terminado" : "0.18.1",
"tiktoken" : "0.14.0",
"timm" : "1.0.29",
"tinycss2" : "1.5.1",
"tokenizers" : "0.22.2",
"torch" : "2.7.1",
"torchsde" : "0.2.6",
"torchvision" : "0.22.1",
"tornado" : "6.5.8",
"tqdm" : "4.70.0",
"traitlets" : "5.16.1",
"trampoline" : "0.1.2",
"transformers" : "5.5.4",
"typer" : "0.27.1",
"typing-inspection" : "0.4.4",
"typing_extensions" : "4.16.0",
"tzdata" : "2026.3",
"uri-template" : "1.3.0",
"urllib3" : "2.7.0",
"uvicorn" : "0.52.4",
"uvloop" : "0.22.1",
"watchfiles" : "1.2.0",
"wcwidth" : "0.8.2",
"webcolors" : "25.10.0",
"webencodings" : "0.6.1",
"websocket-client" : "1.9.0",
"websockets" : "17.1",
"wrapt" : "2.3.0",
"wsproto" : "1.3.2",
"zipp" : "4.1.0"
},
"config": {
"schema_version": "4.0.3",
"legacy_models_yaml_path": null,
"host": "127.0.0.1",
"port": 9090,
"allow_origins": [],
"allow_credentials": true,
"allow_methods": ["*"],
"allow_headers": ["*"],
"ssl_certfile": null,
"ssl_keyfile": null,
"base_url": null,
"forwarded_allow_ips": "127.0.0.1",
"http_compression_level": 9,
"log_tokenization": false,
"patchmatch": true,
"models_dir": "models",
"convert_cache_dir": "models/.convert_cache",
"download_cache_dir": "models/.download_cache",
"legacy_conf_dir": "configs",
"db_dir": "databases",
"outputs_dir": "outputs",
"image_subfolder_strategy": "flat",
"custom_nodes_dir": "nodes",
"style_presets_dir": "style_presets",
"workflow_thumbnails_dir": "workflow_thumbnails",
"log_handlers": ["console"],
"log_format": "color",
"log_level": "info",
"log_sql": false,
"log_level_network": "warning",
"use_memory_db": false,
"dev_reload": false,
"profile_graphs": false,
"profile_prefix": null,
"profiles_dir": "profiles",
"max_cache_ram_gb": null,
"max_cache_vram_gb": null,
"log_memory_usage": false,
"model_cache_keep_alive_min": 0,
"device_working_mem_gb": 3,
"enable_partial_loading": true,
"keep_ram_copy_of_weights": true,
"ram": null,
"vram": null,
"lazy_offload": true,
"pytorch_cuda_alloc_conf": null,
"device": "auto",
"generation_devices": "auto",
"offload_text_encoders_to_idle_gpus": true,
"precision": "auto",
"sequential_guidance": false,
"wan_memory_optimization": false,
"pid_memory_optimization": false,
"attention_type": "auto",
"attention_slice_size": "auto",
"force_tiled_decode": false,
"pil_compress_level": 1,
"max_queue_size": 10000,
"session_queue_mode": "round_robin",
"clear_queue_on_startup": false,
"max_queue_history": null,
"allow_nodes": null,
"deny_nodes": null,
"node_cache_size": 512,
"hashing_algorithm": "blake3_single",
"remote_api_tokens": [ {"url_regex": "civitai.com", "token": "**********"} ],
"scan_models_on_startup": false,
"allow_private_download_urls": false,
"download_proxy": null,
"unsafe_disable_picklescan": false,
"allow_unknown_models": true,
"multiuser": false,
"strict_password_checking": false,
"external_alibabacloud_api_key": null,
"external_alibabacloud_base_url": null,
"external_gemini_api_key": null,
"external_openai_api_key": null,
"external_gemini_base_url": null,
"external_openai_base_url": null,
"external_seedream_api_key": null,
"external_seedream_base_url": null
},
"set_config_fields": ["remote_api_tokens", "legacy_models_yaml_path"]
}
### What happened
The “FLUX.2 Klein Qwen3 8B Encoder” was installed from Model Manager / Starter Models, not manually imported.
Download is complete: 16.4 GB.
Installed files:
text_encoder/config.json
text_encoder/generation_config.json
text_encoder/model.safetensors.index.json
text_encoder/model-00001-of-00004.safetensors
text_encoder/model-00002-of-00004.safetensors
text_encoder/model-00003-of-00004.safetensors
text_encoder/model-00004-of-00004.safetensors
tokenizer/tokenizer.json
tokenizer/tokenizer_config.json
tokenizer/vocab.json
tokenizer/merges.txt
tokenizer/chat_template.jinja
text_encoder/config.json:
"architectures": ["Qwen3ForCausalLM"]
"model_type": "qwen3"
Behavior:
- Model Manager marks the official encoder as “Unable to identify model.”
- Reidentify does not resolve it.
- Editing it to mark it as Qwen3 / the appropriate encoder returns “Model update failed.”
- Other model installs and model-management actions work.
- Because the model stays Unknown, it cannot be selected as the Klein 9B encoder.
### What you expected to happen
The official Starter Model should register as “FLUX.2 Klein Qwen3 8B Encoder” and be selectable for FLUX.2 Klein 9B.
### How to reproduce the problem
Open Model Manager
install “FLUX.2 Klein Qwen3 8B Encoder”
### Additional context
_No response_
### Discord username
_No response_
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.