whisper.cpp/examples/wchess
Georgi Gerganov 8a67c55c8a
wchess : fix link [no ci]
2025-09-30 21:28:03 +03:00
..
libwchess common : separate whisper sources (#2846) 2025-02-27 12:50:32 +02:00
wchess.cmd whisper : enable flash attention by default (#3441) 2025-09-30 15:47:20 +03:00
wchess.wasm examples : add wchess.wasm to wasm examples build (#3443) 2025-09-30 16:23:01 +02:00
CMakeLists.txt cmake : create solution folders (#2004) 2024-04-09 18:23:33 +03:00
README.md wchess : fix link [no ci] 2025-09-30 21:28:03 +03:00

README.md

wchess

Voice-controlled chess using Whisper

Online demo: https://ggml.ai/whisper.cpp/wchess.wasm/

https://github.com/ggerganov/whisper.cpp/assets/1991296/c2b2f03c-9684-49f3-8106-357d2d4e67fa

Command-line tool

mkdir build && cd build
cmake -DWHISPER_SDL2=1 ..
make -j

./bin/wchess -m ../models/ggml-base.en.bin

Move: start

a b c d e f g h
r n b q k b n r 8
p p p p p p p p 7
. * . * . * . * 6
* . * . * . * . 5
. * . * . * . * 4
* . * . * . * . 3
P P P P P P P P 2
R N B Q K B N R 1

White's turn
[(l)isten/(p)ause/(q)uit]: 

TODO

  • Fix bugs in the chess moves logic
  • Improve web-browser audio capture - sometimes it does not record the voice properly
  • Add support for more languages by making the generated grammar string multilingual
  • Explore ways to improve the dynamic grammar to be narrower

PRs welcome!

Thanks

  • chessboardjs for the neat chessboard JS library used in this demo