--- license: apache-2.0 base_model: - zai-org/GLM-5.2-FP8 - zai-org/GLM-5.2 tags: - glm - glm-5.2 - vision - multimodal - openai-compatible - api-gateway - training-free - vllm pipeline_tag: image-text-to-text library_name: vllm --- # GLM-5.2 with a vision, Support-runtime This repository is the deployment report, runtime source, and one-click deployment manifest for `glm-5.2-visual-runtime`, a training-free multimodal runtime gateway. It is **not** a fine-tuned checkpoint and it does **not** modify GLM-5.2 weights. The one-click deployment pulls the official model weights at runtime: - Reasoning: `zai-org/GLM-5.2-FP8` - Vision / omni perception: `Qwen/Qwen3-Omni-30B-A3B-Instruct` - Optional alternate reasoning: `Qwen/Qwen3.6-27B` - OCR: local OCR service/container No hosted model provider is required in the all-local profile. Clients call the public model ID: ```text glm-5.2-visual-runtime ``` Internally, the runtime uses: - GLM-5.2 API for reasoning over compact structured evidence. - GLM-5V-Turbo-compatible provider interface for object grounding and hard visual questions. - GLM-OCR-compatible provider interface for OCR, tables, and document layouts. - CPU image processing lenses for fingerprints, palettes, masks, and chart geometry. - A FastAPI OpenAI-compatible gateway with persistent visual asset variables. ## Deployment Status | Item | Status | |---|---| | Runtime source | Available in the companion Space | | HF Space | `wassemgtk/glm-5-2-visual-runtime-space` | | Standard vLLM base checkpoint | `zai-org/GLM-5.2-FP8` | | vLLM minimum | `vLLM >= 0.23.0` or the GLM recipe image | | Training / fine-tuning | Not used | | Local GPU required for gateway | No | | Local GPU required for self-hosted GLM-5.2 vLLM | Yes, very large multi-GPU deployment | ## One-Click All-Local Deployment Use the included profile when everything must run as part of the deployment: ```bash docker compose -f one_click/docker-compose.all-local.yml up --build ``` This starts: - `gateway`: the OpenAI-compatible `glm-5.2-visual-runtime` API. - `glm52-vllm`: local vLLM serving `zai-org/GLM-5.2-FP8`. - `vision-vllm`: local vLLM-Omni serving `Qwen/Qwen3-Omni-30B-A3B-Instruct`. - `ocr`: local OCR container endpoint. - `minio`: object storage for original images and generated artifacts. - `postgres`: persistent visual asset ledger. The gateway exposes: ```text http://localhost:8000/v1 ``` ## Standard vLLM Reasoning Deployment Use the official GLM-5.2 FP8 checkpoint with vLLM: ```bash vllm serve zai-org/GLM-5.2-FP8 \ --served-model-name glm-5.2 \ --kv-cache-dtype fp8 \ --tensor-parallel-size 8 \ --speculative-config.method mtp \ --speculative-config.num_speculative_tokens 5 \ --tool-call-parser glm47 \ --reasoning-parser glm45 \ --enable-auto-tool-choice ``` Docker recipe: ```bash docker run --gpus all \ --ipc=host \ -p 8001:8000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ vllm/vllm-openai:glm52 \ zai-org/GLM-5.2-FP8 \ --served-model-name glm-5.2 \ --kv-cache-dtype fp8 \ --tensor-parallel-size 8 \ --tool-call-parser glm47 \ --reasoning-parser glm45 \ --enable-auto-tool-choice ``` Then point the visual gateway at the local vLLM OpenAI-compatible endpoint: ```bash GLM_BASE_URL=http://glm52-vllm:8000/v1 GLM_MODEL=glm-5.2 VISION_BASE_URL=http://vision-vllm:8000/v1 VISION_MODEL=qwen3-omni OCR_BASE_URL=http://ocr:8080 VISUAL_RUNTIME_MODE=local ``` ## Why this is a runtime model The "model" is an API-runtime contract rather than a neural checkpoint. It makes GLM-5.2 appear vision-capable by storing images as persistent visual variables and lazily generating typed views such as: ```text img_01.original img_01.fingerprint img_01.ocr img_01.palette img_01.presentation_theme img_01.chart ``` GLM-5.2 receives only compact, task-specific evidence. ## Files in this repository - `README.md`: this deployment report. - `deployment_report.md`: operational report with hardware, mode, and acceptance status. - `runtime_config.json`: model/runtime manifest for gateway deployments. - `one_click/docker-compose.all-local.yml`: full local deployment with reasoning, vision, OCR, storage, and gateway. - `one_click/.env.all-local.example`: one-click environment file. - `one_click/README.md`: one-click deployment guide. - `vllm/serve_glm52_fp8.sh`: standard GLM-5.2 vLLM launch script. - `vllm/serve_qwen3_omni.sh`: local Qwen Omni vLLM-Omni launch script. - `weights_manifest.json`: list of all upstream checkpoint snapshots required for a fully bundled repo. - `scripts/materialize_weights.py`: downloads configured checkpoint snapshots into `models/` before re-uploading this repo. - `vllm/docker-compose.vllm.yml`: vLLM OpenAI server compose file. - `vllm/openai_smoke_test.py`: verifies the vLLM reasoning endpoint. - `gateway/.env.vllm.example`: gateway environment for using local vLLM as GLM-5.2 provider. - `apps/api`: gateway source. - `services/slides`: editable PPTX rendering service. ## Companion Gateway Space Use the companion Hugging Face Docker Space for a lightweight no-GPU demo. For production one-click deployment with no hosted providers, use `one_click/docker-compose.all-local.yml`. Space: ```text https://huggingface.co/spaces/wassemgtk/glm-5-2-visual-runtime-space ``` Live OpenAI-compatible base URL: ```text https://wassemgtk-glm-5-2-visual-runtime-space.hf.space/v1 ```