GoYomi: learn Go on 9x9 with a coach that explains every move.

Hi everyone! I’ve been building GoYomi, a free, open-source 9x9 Go trainer for beginners, and I’d love feedback from people who know the game.

Play it here:

What it does:

  • Nine AI levels, from Pebble (just learned the rules) to Phoenix. All of them are played by KataGo’s neural network, running entirely in your browser: no install, no account, no server. The lower levels are held back on purpose, so their mistakes look like a learner’s rather than random moves.
  • A coach that grades every move in plain language, tuned to your level (beginner, improving or strong). It tells you when the AI’s move doesn’t need an answer, and warns you before you pass too early.
  • Try the coach’s move: point at the button to preview the better move and how play would continue, click to play it, and “Back to my move” to return.
  • Find better moves yourself: an optional mode that hides the coach’s answer after a mistake so you can try again first.
  • Hints and “Their idea”: the best moves and why they matter, and what your opponent is planning if you ignore it.
  • Overlays for liberties, atari and territory, unlimited take-backs, automatic counting, a game graph with your mistakes marked, and SGF save/load.
  • Accessible: you can play entirely by keyboard, and a screen reader (or the built-in speech) reads every move and comment.

I’m a beginner myself, which is partly why I made it. I’d especially like to hear:

  • whether the coach’s explanations are right and useful at your level;
  • whether the AI levels feel well spaced;
  • anything confusing for a new player.

The source is on GitHub:

Thanks for taking a look!

5 Likes

WOW, this is genuinely a gem. I think it’s an excellent thing.

Just a few things from me:
The game graph doesn’t look very intuitive to me. I can’t really tell how it works, because even after making a few mistakes, the average still looks surprisingly low. I’m not sure whether I’m interpreting it correctly.
It would also be better for accessibility if the whole thing could be controlled with a mouse. Right now, some features seem to require keyboard input, and having mouse controls for everything would make it much more accessible.
For beginners, I think this could be really useful, but in my opinion it could have the biggest impact around the 15 kyu level.
I think the word “area” is going to be extremely confusing to many players. There should probably be a button, tooltip, or something similar that explains exactly what the AI means when it refers to an “area.”
Sometimes the AI moves too quickly. At higher levels, the explanation doesn’t even have time to load before the AI makes its next move, which is a bit of an issue.

But overall, this is a really great feature, and I can definitely see myself recommending it to people around this level.

Wow, what a project. I will be kind of critical in the rest of the post, so let me at least start with a praise. To open source such a project, and have it so accessible is a bloody classy move.

As far as I am concerned though (but mind you only after two quick games)

VISUAL AIDS:
Beginners do not need a bunch of overlays, graphs, blinking sings, and similar stuff. They don’t need a math project. I understand what all those mean because I am already familiar with the concepts, and thus do not need those. Beginner will hardly know what to make of all that mess (IMO).

Consider getting rid of all that by default. No graph, no liberties, no red circles. Maintain the simplicity, and beauty of the game to actually keep it appealing for new players and only show those in maybe select scenarios, and select parts of a board where it is useful (say a stone/group is close to capture for the first time).


Maybe switch these two? This way it seems unsure whether the comment is about my move, or about trying F5

AI LEVELS
Even at pebble level the AI plays pretty shapes, and decent moves apart from some random mistakes. That is not wrong in itself, but I think beginners might have a hard time beating even the lowest settings which might be discouraging. Not sure how much it can be helped though.

It might be better for AI not to answer right away? So the beginner can have time to understand the situation and read the comments before the situation changes?

THE COMMENTS :man_facepalming:
I am sorry to say, but the AI comments are utter nonsense or useless filler. Plays in open space, plays next to a stone. It is not wrong, but what’s the point of such comments?

It is relatively decent (sometimes) at commenting on good moves, but COMPLETELY incapable of explaining mistakes (which is more important to a beginner I think). It grades moves as decent when they are utter nonsense (when the player is already losing, and there just are not mathematically better options, but the move has no logic), etc.

The evaluation seems to be irrelevant of the engine’s answer? This seems to lead to situations where the comment says the move does not work, can be captured… but then “makes” the move work by answering wrongly. I understand the logic, but this will probably be confusing for a beginner “the AI says the move was wrong, but I did win the fight?”


This is just a classical beginner mistake, they should be told to consider whole board. The AI correctly identifies it is a mistake, but provides no explanation.


My E3 does not really claim bottom left now, does it?


How on earth do any of our moves in the top right claim bottom left corner? :smiley:


I just killed my own group with A1, but AI talks about empty triangles… That’s not helpful.

And the list goes on…

I am sorry, I think it is a fine engine to play against, and the visual cues (if polished) might help illustrate some concepts, but I would NOT recommend the AI comments to any beginner. I am not trying to be mean, as far as I am concerned they really make no sense whatsoever in many/most cases.

4 Likes

as someone who tried to test some similar coach things in my app, and followed some other projects that try to explain katago move in natural language, I can guarantee no current llm(regardless of what technique used) can explain ai moves properly

3 Likes

I think it in fact, it does claim bottom left, if next 3 moves by both sides will be best of the best
I see why you pointing this out, and yes, you are right, it doesent explain mistakes the easy way, but I think 10-15ku can get a use of it
Actually its a great practice even for dan player, to completely memorize 9x9 board, every move in tuban provides great explanation, but I think it would require tremendous amounts of thinking to realise some things

Well thats a shame, hopefuly it will be done sooner or later, beacuse in theory it could be isnanely useful at any level of skill

the issue is someone(or a group) needs to spend enough time and money training such a model and it also needs help from various player levels(I’d say 3dan to 3p atleast) to verify and train that llm. cause any current random llm, no matter what a dev tries to do, can never UNDERSTAND go the way we players judge at different ranks. LLMs knows the rules, Yes!! but apart from that they’re like 30-20k level.
I even tried some chinese model, a group that said to have published a research paper and what not that they trained a llm to explain, but as of my tests on that model its utter BS. That model would usually include some data katago gives as output and rest of its response was just roleplay and monologue.
With the rise of the AI pets every random person starts posting about their COOL go projects that doesn’t solve a problem and in turn messes up the SEO so beginners end up with wrong tools. Its counter productive.
Sorry about my rant but… :expressionless:

2 Likes

For the very few I could contribute, I completely agree with you, and I am fully not surprised by the complete failure of this new attempt (not first time)

There is no shame, the whole weiqi world is dreaming of this kind of software but imho it’s not for tomorrow even not in the near future.

1 Like

just to clear this up, there’s no llm or chatbot in it at all! katago’s neural network is only used to play and to read positions, and all the coach text comes from hand written rules on top of that: captures, liberties, atari, shape, how the expected territory changes after a move, that kind of thing.

so when a comment is off, it’s one of my rules being wrong, not an llm making stuff up, and that’s something i can actually fix. if you give it a try and see comments that make no sense, i’d really like to hear which moves.

1 Like

the rant was not really for your project haha, sorry about the miscommunication :3

honestly speaking, I tried just out of curiosity to implement it. Its not even available in my app’s public version, just the debug one.
I actually think its a good thing that such a thing hasn’t been cracked yet. In the current digitised world, the go community is my place for regular human connection, and the moment something like this comes out, I feel I might lose something priceless.

thanks again for trying it. i went through the coach comments after your E3 point and made a bunch of changes. an early move like that now says “It builds toward the lower side” instead of claiming it, and it only says “claims” once the coach actually expects that area to be yours. it also stopped saying what a move gains when it’s graded a mistake, since that just read as praise, and on a mistake it now tells you when the opponent took the point you missed right after. the “otherwise the AI would play X” line is mostly gone too.

also in case you didn’t see it, the comments change with the player level. there’s a “Coach explains for” setting under Settings. by default it matches the AI strength, so against the weaker levels it talks in beginner terms like liberties and captures, and against the stronger ones it gets more in depth with points, sente and gote. you can set it to beginners, improving or strong players yourself if you want the more detailed version.

this is still very much a work in progress, it’s the first release and i’m going through rounds of improvement based on feedback like yours, so it really helps. should be live now if you want to take another look

1 Like

Yeah, sure. Also if you need help with some stuff, DM me, I`m somewhat decent at coding hovewer I think I can provide some translations to other languages, if needed. I will rewiew it troughly later and make my list of suggestions, but honestly most important one looking forward to adding a 13x13 there