RISC-V vendor vector and matrix extensions can provide important acceleration opportunities for ML workloads, but exposing them through an ML compiler requires careful modeling across MLIR and LLVM. This talk presents a practical recipe for bringing such extensions into the MLIR ecosystem, using IREE as a production-grade open-source case study. We discuss how computations produced by ML compiler pipelines can be lowered through existing MLIR dialects such as linalg and vector, when a target-specific MLIR dialect is useful, and when direct lowering to LLVM intrinsics or llvm.inline_asm is the right interface. We also compare alternatives to fully generated code and discuss the trade-offs in bring-up speed, maintainability, optimization visibility, and upstreamability. The talk presents lessons from ongoing RISC-V vendor-extension integration work in IREE, grounded in case studies on two RISC-V implementations, with examples drawn from targets such as SpaceMiT and GlobalFoundries.