I wasn't able to find what time setting the AI was trained on, but I'm a 1400 bullet player and at that level it is uncommon to resign even if you are down a minor piece and a pawn (or more, but in a good attacking position). The probability of being able to win due to time/a blunder is quite high.
I even saw an IM vs. NM bullet game the other day where the NM was in a losing position but stayed in to grab a stalemate: https://www.reddit.com/r/chess/comments/kwoikt/im_not_a_gm_l.... Not sure if Levy was being unsportsmanlike to stay in the game despite being in a losing position, but even at a high level I think it's normal to play to the end if your opponent is in time trouble.
They're trained on everything but Bullet/HyperBullet. The neural network just predicts moves and win probabilities so we don't have a way (yet) of making it concede.
Is there a way to treat resignation as a "move"? Even though the win probability is zero by definition, it still may be the most accurate move prediction in certain scenarios.
Yes, the output is just a large vector with each dimension mapping to a move. But we'd probably do it as different "head" so have a small set of layers that are trained just to predict resignations. Both options would break the lc0 chess engine we use for stuff like the Lichess bots though.
It's never unsporting to play on in a bullet game since it's so short, unless it's a long drawn out stall that isn't making any progress. The winning player can quickly finish the game if it's a clear lost cause.
I even saw an IM vs. NM bullet game the other day where the NM was in a losing position but stayed in to grab a stalemate: https://www.reddit.com/r/chess/comments/kwoikt/im_not_a_gm_l.... Not sure if Levy was being unsportsmanlike to stay in the game despite being in a losing position, but even at a high level I think it's normal to play to the end if your opponent is in time trouble.