Skip to content

CrossPascal Early Access 012

Pre-release
Pre-release

Choose a tag to compare

@pisarev pisarev released this 10 Nov 14:20

CrossPascal Early Access 012

GemmaChat adds a Windows Pascal application for experimental Gemma 3n CUDA text bundles. The response streams while it is generated, model weights stay loaded for repeated requests, and Stop preserves partial output. Generation defaults to 0 (automatic until EOS, Stop or the bundle's real context capacity); positive manual limits have no artificial 16-token ceiling.

QwenChat now includes the previously verified persistent GPU session and incremental text output. Its sampling controls remain available. Each request in both examples starts a fresh conversation; model reuse does not imply chat-history retention.

The Gemma converter reads architecture metadata and tensor shapes instead of maintaining a model-name list. It supports automatic CUDA-device detection and manual destination architecture selection. The CUDA text profile uses int8 projection weights and FP32 arithmetic (W8A32), with input embeddings in host memory. It remains an experimental numerical profile, distinct from CPU FP32.

Download and run

  • crosspascal-windows-x64-ea012.zip: coordinated source SDK and Lazarus-built example executables.
  • crosspascal-gemma-runtime-windows-x64-ea012.zip: extract beside the SDK for GemmaChat. It contains the portable Python/TVM runtime and upstream licenses. Running an already converted Gemma bundle needs no Python installation or conversion toolchain.
  • The three EA008 source companion archives are unchanged and retained for the existing native dependencies and CPU conversion routes.

Start with crosspascal/examples/gemma-chat/README.md or crosspascal/examples/qwen-chat/README.md. GemmaChat's first field selects the converted bundle folder containing model.json; its second field selects the SDK root. Original model weights are not included. Original model access and license conditions still apply.

GemmaChat uses a Pascal GUI and local private pipes to a bundled persistent Python TVM worker. Numerical inference runs through native TVM CUDA, not PyTorch or Ollama. QwenChat uses the native Pascal TVM consumer. Their bundle formats are different. Conversion still requires the documented development dependencies; the new runtime asset is for inference.

Verification and limits

Both examples were built and exercised from the cleaned release sources in Delphi 13.2 and Lazarus 4.8 / FPC 3.2.2 on Windows x64 with an RTX 4060 Ti. Tests cover English and Russian text, repeated requests, incremental output, manual limits, Stop, normal process shutdown and execution from the extracted release with the pinned runtime. Distributed project EXEs are built only with Lazarus; Delphi EXEs are used only for compatibility testing. Third-party native runtimes retain their upstream build provenance.

The Gemma test uses an E4B text GGUF converted to the W8A32 profile; the Qwen warm-session test uses Qwen2.5-1.5B. These are specific evidence points, not a guarantee that every checkpoint or video card has passed testing. Targets remain architecture-driven, with no card-name whitelist.

This release accepts text only. Dense Qwen2.5 and Qwen2.5-VL are different architectures. The original Gemma 3n family supports multimodal input, but this GGUF text route does not include a vision or audio encoder. See crosspascal/docs/MODEL-MODALITIES.md for the required text-plus-image work. GemmaChat currently uses greedy decoding and does not expose unsupported sampling controls.

Private prerelease only. Existing releases and model evidence are preserved.

Documentation update - 9 November 2026

The accompanying README files, setup guides and preparation helper use the public-download workflow. SHA-256 inventories were refreshed for these revised packages. Model weights and inference binaries are unchanged. Existing Git tags retain the original code baseline; current setup guidance is maintained in the default branches.

Packaging maintenance, 10 November 2026

Source documentation and integrity inventories were refreshed. Runtime packaging changes affect documentation and integrity records. Model weights and the executable files in these historical packages are unchanged. The original Git tag and the scope of the model results are retained.