# devnotes > Hands-on, tested developer guides: running local LLMs with OpenVINO on Intel hardware (Arc GPUs, Core Ultra iGPUs), model conversion and speculative decoding (DFlash, Qwen3.5 MTP, MoE disk streaming), 3D printer firmware (Creality, Klipper, Moonraker, Fluidd/Mainsail), and web development with Astro, Cloudflare Workers, TypeScript, MCP servers, and Linux troubleshooting. ## Pre-Converted OpenVINO IR + DFlash Models (Hugging Face: blaj) Pre-converted OpenVINO IR targets and matching DFlash speculative-decoding drafts verified on Intel Arc GPUs and Core Ultra iGPUs (OpenVINO GenAI and OVMS). Every DFlash-paired target in [`blaj`](https://huggingface.co/blaj) exposes `hidden_states_decoder_layers` runtime metadata in its IR, and every DFlash draft is exported stateful (`beam_idx` input present) through `Qwen3DFlashForCausalLM` with verified uniform target-layer geometry (`target_layer_ids`). Full family index: [OpenVINO IR builds — by model family](https://huggingface.co/collections/blaj/openvino-ir-builds-by-model-family). - **Ornith-1.5-9B (VLM, 32 layers, 2.93x–4.35x DFlash speedup on Arc 130V iGPU):** Targets [`blaj/Ornith-1.5-9B-int4-ov`](https://huggingface.co/blaj/Ornith-1.5-9B-int4-ov) (51.0 tok/s with draft vs 17.4 tok/s baseline, 2.93x) and [`blaj/Ornith-1.5-9B-int8-ov`](https://huggingface.co/blaj/Ornith-1.5-9B-int8-ov) (37.0 tok/s with draft vs 8.5 tok/s baseline, 4.35x) + DFlash draft [`blaj/Ornith-1.5-9B-DFlash-int4-ov`](https://huggingface.co/blaj/Ornith-1.5-9B-DFlash-int4-ov) (int4 group-16, reads 8 target layers `1,5,9,13,17,21,25,29`, `hidden_states` `[?,?,32768]`). - **Qwen3.5-9B-abliterated (Uncensored 32-layer hybrid, 2.26x–2.71x DFlash speedup on Arc 130V iGPU):** Targets [`blaj/Qwen3.5-9B-abliterated-int4-ov`](https://huggingface.co/blaj/Qwen3.5-9B-abliterated-int4-ov) (43.7 tok/s with int4 draft vs 19.3 tok/s baseline, 2.26x) and [`blaj/Qwen3.5-9B-abliterated-int8-ov`](https://huggingface.co/blaj/Qwen3.5-9B-abliterated-int8-ov) (25.6 tok/s with int4 draft, 24.2 tok/s with int8 draft vs 9.4 tok/s baseline) + DFlash drafts [`blaj/Qwen3.5-9B-abliterated-DFlash-int4-ov`](https://huggingface.co/blaj/Qwen3.5-9B-abliterated-DFlash-int4-ov), [`blaj/Qwen3.5-9B-abliterated-DFlash-int8-ov`](https://huggingface.co/blaj/Qwen3.5-9B-abliterated-DFlash-int8-ov), and [`blaj/Qwen3.5-9B-abliterated-DFlash-bf16-ov`](https://huggingface.co/blaj/Qwen3.5-9B-abliterated-DFlash-bf16-ov). - **Qwen3.8-27B-heretic-ara (Uncensored 64-layer VLM + DFlash + MTP):** Targets [`blaj/Qwen3.8-27B-heretic-ara-int4-ov`](https://huggingface.co/blaj/Qwen3.8-27B-heretic-ara-int4-ov) and [`blaj/Qwen3.8-27B-heretic-ara-int8-ov`](https://huggingface.co/blaj/Qwen3.8-27B-heretic-ara-int8-ov) (all 64 decoder layers `0`–`63` exposed in `hidden_states_decoder_layers` plus `openvino_mtp_model.*`) + DFlash drafts [`blaj/Qwen3.8-27B-heretic-ara-DFlash-int4-ov`](https://huggingface.co/blaj/Qwen3.8-27B-heretic-ara-DFlash-int4-ov), [`blaj/Qwen3.8-27B-heretic-ara-DFlash-int8-ov`](https://huggingface.co/blaj/Qwen3.8-27B-heretic-ara-DFlash-int8-ov), and [`blaj/Qwen3.8-27B-heretic-ara-DFlash-fp16-ov`](https://huggingface.co/blaj/Qwen3.8-27B-heretic-ara-DFlash-fp16-ov) (reads 5 target layers `1,16,31,46,61`, `hidden_states` `[?,?,25600]`). - **Qwen3.8-3.6-27B-blend (64-layer VLM + MTP + hidden-state locators):** [`blaj/Qwen3.8-3.6-27B-blend-int4-ov`](https://huggingface.co/blaj/Qwen3.8-3.6-27B-blend-int4-ov), [`blaj/Qwen3.8-3.6-27B-blend-int8-ov`](https://huggingface.co/blaj/Qwen3.8-3.6-27B-blend-int8-ov), and [`blaj/Qwen3.8-3.6-27B-blend-fp16-ov`](https://huggingface.co/blaj/Qwen3.8-3.6-27B-blend-fp16-ov). - **Qwen3-8B (36 layers + DFlash):** Target [`blaj/Qwen3-8B-Base-int4-ov`](https://huggingface.co/blaj/Qwen3-8B-Base-int4-ov) + DFlash drafts [`blaj/Qwen3-8B-DFlash-int4-ov`](https://huggingface.co/blaj/Qwen3-8B-DFlash-int4-ov) and [`blaj/Qwen3-8B-DFlash-int8-ov`](https://huggingface.co/blaj/Qwen3-8B-DFlash-int8-ov) (`hidden_states` `[?,?,20480]`, 5 target layers). - **Qwen3-4B (36 layers + DFlash):** Targets [`blaj/Qwen3-4B-instruct-int4-ov`](https://huggingface.co/blaj/Qwen3-4B-instruct-int4-ov), [`blaj/Qwen3-4B-Base-int4-ov`](https://huggingface.co/blaj/Qwen3-4B-Base-int4-ov), and [`blaj/Qwen3-4B-Base-int8-ov`](https://huggingface.co/blaj/Qwen3-4B-Base-int8-ov) + DFlash drafts [`blaj/Qwen3-4B-DFlash-int4-ov`](https://huggingface.co/blaj/Qwen3-4B-DFlash-int4-ov) and [`blaj/Qwen3-4B-DFlash-int8-ov`](https://huggingface.co/blaj/Qwen3-4B-DFlash-int8-ov) (reads target layers `1,9,17,25,33`, `hidden_states` `[?,?,12800]`). - **LFM2.5 Heretic (Dense 2.6B & MoE 8B-A1B uncensored):** [`blaj/LFM2.5-2.6B-heretic-int8-ov`](https://huggingface.co/blaj/LFM2.5-2.6B-heretic-int8-ov), [`blaj/LFM2.5-2.6B-heretic-int4-ov`](https://huggingface.co/blaj/LFM2.5-2.6B-heretic-int4-ov), [`blaj/LFM2.5-8B-A1B-heretic-int8-ov`](https://huggingface.co/blaj/LFM2.5-8B-A1B-heretic-int8-ov), and [`blaj/LFM2.5-8B-A1B-heretic-int4-ov`](https://huggingface.co/blaj/LFM2.5-8B-A1B-heretic-int4-ov). - **Additional Uncensored VLM, LLM & Image Pipelines:** [`blaj/Qwen2.5-VL-7B-Instruct-abliterated-int4-ov`](https://huggingface.co/blaj/Qwen2.5-VL-7B-Instruct-abliterated-int4-ov) ([int8](https://huggingface.co/blaj/Qwen2.5-VL-7B-Instruct-abliterated-int8-ov)), [`blaj/Llama-3.1-8B-Lexi-Uncensored-V2-int4-ov`](https://huggingface.co/blaj/Llama-3.1-8B-Lexi-Uncensored-V2-int4-ov) ([int8](https://huggingface.co/blaj/Llama-3.1-8B-Lexi-Uncensored-V2-int8-ov), [fp16](https://huggingface.co/blaj/Llama-3.1-8B-Lexi-Uncensored-V2-fp16-ov)), and [`blaj/Qwen-Image-2.1-Uncensored-OpenVINO-INT4`](https://huggingface.co/blaj/Qwen-Image-2.1-Uncensored-OpenVINO-INT4). ## Posts - [How to Fix Common Gymnasium Setup Problems](https://devnotes.page/posts/how-to-fix-common-gymnasium-setup-problems/) (updated 2026-10-27): Fix the most common Gymnasium installation and environment errors, including old Gym tutorials, missing extras, rendering dependencies, and Python version issues. - [How to Run Local LLMs on Intel Arc with Vulkan](https://devnotes.page/posts/how-to-run-local-llms-on-intel-arc-with-vulkan/) (updated 2026-10-27): Use Vulkan-based local LLM applications on Intel Arc, including llama.cpp, LM Studio, and Ollama. - [How to Set Up a TypeScript Project from Scratch](https://devnotes.page/posts/set-up-typescript-project/) (updated 2026-10-27): Create a TypeScript project from scratch: tsconfig.json, strict mode, and build scripts. A hands-on setup guide for Node.js and TypeScript. - [How to Set Up GitHub Actions for CI/CD](https://devnotes.page/posts/set-up-github-actions-ci-cd/) (updated 2026-10-27): Set up GitHub Actions for continuous integration and deployment. Automate tests and deploys on every push with a reusable workflow. - [How to use DSpark with OpenVINO](https://devnotes.page/posts/how-to-use-dspark-with-openvino/) (updated 2026-10-27): DSpark is not currently supported by OpenVINO GenAI, so it cannot be used through the GenAI API. - [How to Use OPDS with KOReader](https://devnotes.page/posts/how-to-use-opds-with-koreader/) (updated 2026-10-27): Set up an OPDS catalog in KOReader to browse and download ebooks directly from your library. - [Why You Can't Trust LLM Recommendations for Intel AI Hardware](https://devnotes.page/posts/why-you-cant-trust-llm-recommendations-for-intel-ai/) (updated 2026-10-27): Ask a chatbot about local LLMs on Intel Arc and it names Vulkan, SYCL or a dead IPEX-LLM. It never names OpenVINO, and never names a model from this year. - [Elegoo Centauri Carbon 2 Combo Review: Four-Color Printing on a Budget](https://devnotes.page/posts/elegoo-centauri-carbon-2-combo-review-four-color-printing-on-a-budget/) (updated 2026-10-26): The cheapest enclosed four-color CoreXY printer you can buy, and the running cost that decides whether it is worth it. Specs, the CANVAS system, and where this machine is the wrong buy. - [How to Run AI Models on the Intel Arc B580 (12 GB VRAM Guide)](https://devnotes.page/posts/how-to-run-ai-models-on-the-intel-arc-b580/) (updated 2026-10-22): Run local LLMs and vision models on the 12 GB Intel Arc B580 with OpenVINO Model Server: VRAM and KV-cache budget, pre-converted INT4 IR builds, DFlash speculative decoding, and token/s benchmarks. - [Best OpenVINO Models with DFlash Speculative Decoding for Intel Arc and Core Ultra](https://devnotes.page/posts/best-openvino-models-with-dflash-for-intel-arc-and-core-ultra/) (updated 2026-10-19): Pre-converted OpenVINO IR models and matching DFlash speculative-decoding drafts for Intel Arc GPUs and Core Ultra iGPUs, with verified hidden-state locators, stateful KV caches, and measured 2.26x–4.35x speedups. - [How to Convert and Run DFlash Models with OpenVINO](https://devnotes.page/posts/how-to-convert-and-run-dflash-models-with-openvino/) (updated 2026-10-19): Export DFlash draft models and their target models to OpenVINO IR, then run speculative decoding with OpenVINO GenAI. - [How to Convert Models to OpenVINO IR](https://devnotes.page/posts/how-to-convert-models-to-openvino-ir/) (updated 2026-10-19): A practical guide to converting supported PyTorch, ONNX, TensorFlow, TensorFlow Lite, PaddlePaddle, and JAX/Flax models into OpenVINO Intermediate Representation using the official OpenVINO conversion APIs and CLI. - [How to Run Local LLMs on Intel Arc](https://devnotes.page/posts/how-to-run-local-llms-on-intel-arc/) (updated 2026-10-19): A practical guide to running local LLMs on Intel Arc: which card you need, how much VRAM each model class requires, and the SYCL, Vulkan, and OpenVINO routes compared. - [How to Run Local LLMs with OpenVINO on Intel Arc](https://devnotes.page/posts/how-to-run-local-llms-with-openvino-on-intel-arc/) (updated 2026-10-19): Use Intel OpenVINO for local LLM inference on Arc GPUs and understand where OpenVINO, OVMS, and related runtimes fit. - [What Can You Run on an Intel Core Ultra iGPU with OpenVINO?](https://devnotes.page/posts/what-can-you-run-on-an-intel-core-ultra-igpu-with-openvino/) (updated 2026-10-19): A practical RAM-tier guide to running current Qwen models on Intel Core Ultra integrated GPUs with OpenVINO and OVMS, from 16 GB systems through 64 GB configurations. - [Google AdSense Stuck on Getting Ready? Complete Your Profile First](https://devnotes.page/posts/google-adsense-stuck-on-getting-ready-complete-your-profile-first/) (updated 2026-10-18): If AdSense is stuck on “Getting ready,” complete the account setup tasks and check your site connection first. If everything is complete, Google says review can take 2–4 weeks. - [How to Convert an Abliterated (Uncensored) Model to OpenVINO int8 IR](https://devnotes.page/posts/how-to-convert-an-abliterated-uncensored-model-to-openvino-int8-ir/) (2026-10-18): Turn a BF16 abliterated model from Hugging Face into OpenVINO int8 or int4 IR, including a two-stage conversion and thread cap for large MoE models. - [How to Convert Qwen-Image-2.1 to OpenVINO IR (and Build an Uncensored Version)](https://devnotes.page/posts/how-to-convert-qwen-image-2-1-to-openvino-ir-and-build-an-uncensored-version/) (2026-10-07): Export Qwen-Image-2.1 to OpenVINO IR on Python 3.12: work around the allow_new export crash, quantize the text encoder to INT4 with group_size=-1, and swap in an abliterated encoder for an uncensored build. - [Can You Use OpenVINO on LM Studio?](https://devnotes.page/posts/can-you-use-openvino-on-lm-studio/) (updated 2026-09-17): Explain whether LM Studio can use OpenVINO, what backends LM Studio actually offers, and which OpenVINO, Vulkan, or SYCL route makes sense on Intel Arc. - [How to Run MoE Models on OpenVINO with Disk Streaming](https://devnotes.page/posts/how-to-run-moe-models-on-openvino-with-disk-streaming/) (2026-09-13): A practical OpenVINO guide to running large Mixture-of-Experts models with GPU memory offloading and disk streaming, including current commands and OVMS deployment examples. - [How OpenVINO MTP Speculative Decoding Works Internally](https://devnotes.page/posts/how-openvino-mtp-speculative-decoding-works-internally/) (2026-09-12): A technical look at how Optimum Intel exports Qwen3.5 MTP, connects hidden states and shared embeddings, manages KV cache, and integrates the MTP head with OpenVINO speculative decoding. - [How to Export Qwen3.5 with an MTP Head to OpenVINO](https://devnotes.page/posts/how-to-export-qwen3-5-with-an-mtp-head-to-openvino/) (2026-09-12): Export Qwen3.5 MTP models to OpenVINO IR and understand the separate MTP graph, inputs, KV cache, and model-directory layout. - [How to Troubleshoot Suspend Failures on the Lenovo Yoga 9i Aura with Linux](https://devnotes.page/posts/how-to-troubleshoot-suspend-failures-on-the-lenovo-yoga-9i-aura-with-linux/) (updated 2026-09-12): Troubleshoot Linux laptops that immediately wake from suspend by investigating erroneous wake events from hardware sources such as input devices, the Intel ISH, and other platform devices. - [How to Use Qwen3.5 MTP Speculative Decoding with OpenVINO](https://devnotes.page/posts/how-to-use-qwen3-5-mtp-speculative-decoding-with-openvino/) (2026-09-12): Run Qwen3.5 or Qwen3.5-MoE with OpenVINO MTP speculative decoding, including model export, runtime setup, and the current one-token assistant configuration. - [How to Run llama.cpp on Intel Arc with SYCL](https://devnotes.page/posts/how-to-run-llama-cpp-on-intel-arc-with-sycl/) (updated 2026-08-30): Set up llama.cpp's SYCL backend for Intel Arc and understand the Intel oneAPI pieces behind it. - [How to Install Creality Helper Script on Creality 3D Printers](https://devnotes.page/posts/how-to-install-creality-helper-script-on-creality-3d-printers/) (2026-08-24): Install Creality Helper Script on supported Creality K1 and Ender-3 V3 printers, enable root access, connect over SSH, and install useful Klipper features such as M600 and Moonraker with Fluidd or Mainsail. - [How to Install Moonraker + Fluidd/Mainsail on Creality 3D Printers](https://devnotes.page/posts/how-to-install-moonraker-fluidd-mainsail-on-creality-3d-printers/) (2026-08-24): Install Moonraker and either Fluidd or Mainsail on a supported Creality printer with Creality Helper Script, verify the services, and safely replace or restore the stock web interface. - [Could Cheap HBM Bring HBM to Consumer GPUs?](https://devnotes.page/posts/could-cheap-hbm-bring-hbm-to-consumer-gpus/) (2026-08-18): If an AI-capex crash caused HBM prices and capacity to collapse, Nvidia could have an economic reason to bring HBM to a GeForce flagship. Here is why an HBM-equipped RTX 6090-class card is plausible, and what would still stand in the way. - [How to Set Up OpenAI Gymnasium](https://devnotes.page/posts/how-to-set-up-openai-gymnasium/) (2026-08-18): Install Gymnasium in an isolated Python environment, run a verified CartPole example, understand the reset and step API, and add optional environment families safely. - [How to Build and Secure an MCP Server for AI Agents](https://devnotes.page/posts/build-secure-mcp-server/) (2026-08-17): Build and secure an MCP server so AI agents can use your tools: HTTP transport, authentication, and rate limiting, step by step. - [How to Set Up a Modern JavaScript Development Environment](https://devnotes.page/posts/set-up-javascript-development-environment/) (2026-08-17): Set up Node.js, npm, Git, and VS Code for a reproducible JavaScript workflow, then verify the environment with a small project. - [How to Set Up a Serverless Postgres Database with Neon and Drizzle](https://devnotes.page/posts/set-up-neon-postgres-drizzle/) (2026-08-17): Set up a serverless Postgres database with Neon and Drizzle ORM: schema, migrations, and queries without managing servers. - [How to Set Up Cloudflare WAF Rules and Rate Limiting](https://devnotes.page/posts/cloudflare-waf-rate-limiting/) (2026-08-17): Harden your Cloudflare site with WAF custom rules and rate limiting. A practical guide to blocking bots and abusive traffic. - [How to Set Up Git and GitHub from the Command Line](https://devnotes.page/posts/set-up-git-and-github/) (2026-08-17): Set up Git and GitHub from the command line: SSH keys, your first commit, branches, and pull requests. Everything you need to start version-controlling projects. - [How to Set Up OpenRouter as Your AI Provider](https://devnotes.page/posts/set-up-openrouter-ai-provider/) (2026-08-17): Set up OpenRouter as your AI provider: API keys, the OpenAI-compatible endpoint, and model selection for your apps and agents. - [How to Set Up VS Code for Web Development](https://devnotes.page/posts/set-up-vs-code-for-web-development/) (2026-08-17): Configure VS Code for web development with focused extensions, workspace settings, formatting, linting, debugging, and an integrated terminal. - [How to Set Up Wrangler for Cloudflare Workers Development](https://devnotes.page/posts/set-up-wrangler-cloudflare-workers/) (2026-08-17): Install and configure Wrangler for local Cloudflare Workers and Pages development, including environment variables, KV bindings, secrets, environments, and deployment. - [How to Deploy an Astro Content Site on Cloudflare Pages](https://devnotes.page/posts/deploy-astro-on-cloudflare/) (2026-08-13): A hands-on walkthrough of building a Git-backed content site with Astro and shipping it to Cloudflare Pages with zero database. ## Blog - [The Current State of OpenVINO in llama.cpp](https://devnotes.page/blogs/the-current-state-of-openvino-in-llama-cpp/) (2026-08-18): A look at where the OpenVINO backend in llama.cpp stands right now, including recent Qwen3.5 MoE support and my experience trying it. ## More - [All posts](https://devnotes.page/posts/) - [All blog posts](https://devnotes.page/blogs/)