Comment exécuter en toute sécurité une résolution via l’API d’un solveur GTO ?
Considérez une résolution en temps réel comme un court cycle de vie : planifiez-la, interrogez de façon répétée son arbre jusqu’à ce qu’il soit interrogeable, puis effectuez les lectures uniquement à l’aide des jetons renvoyés par cet arbre.
POST /v1/gto/solver, conservez son identifiant solve et interrogez régulièrement POST /v1/gto/solver/tree jusqu’à ce que spot_status soit queryable. Transmettez le token d’un nœud renvoyé à POST /v1/gto/solver/node. Cette page traite de la planification, des vérifications répétées et de la lecture — pas de la sélection du solveur ni de la conception d’arbre de recherche.Points clés
| Planification | POST /v1/gto/solver nécessite board, oop_range, ip_range, pot, effective_stack et hero. |
|---|---|
| Signaux asynchrones | Le status de planification peut être computing, queryable ou busy ; le spot_status de l’arbre est le signal indiquant que les lectures sont prêtes. |
| Portée de lecture | Utilisez l’identifiant solve uniquement avec ses appels d’arbre et de libération, et utilisez un token renvoyé par cet arbre uniquement comme entrée node pour /v1/gto/solver/node. |
| Quota | solve_quota est présent uniquement lorsqu’une nouvelle résolution a été déclenchée. Les opérations d’arbre, de nœud et de libération facultative sont documentées comme gratuites. |
| Limite des résultats | Un nœud lisible peut contenir strategy, ou actions et range_strategy ; un statut non lisible n’est pas une stratégie. |
1. Planifiez et conservez l’identifiant
Utilisez une situation de flop, turn ou river personnalisée, complète et autonome. La longueur du tableau sélectionne le tour. Conservez l’identifiant solve renvoyé ; c’est l’identifiant des requêtes ultérieures d’arbre et de libération.
curl -s https://pokerai.bet/v1/gto/solver \
+ -H "Authorization: Bearer $POKERAI_API_KEY" \
+ -H "Content-Type: application/json" \
+ -d '{"board":"2c2h2s","oop_range":"AA,KK","ip_range":"QQ,JJ","pot":6,"effective_stack":100,"hero":"OOP"}'
Une réponse de planification peut être computing ou queryable. Si elle est busy, aucun identifiant de solve n’est disponible pour des vérifications répétées ; considérez cela comme une indisponibilité due à la capacité du solveur plutôt que comme un solve terminé. Le contrat public ne garantit ni délai d’attente ni niveau de disponibilité.
2. Interrogez l’arbre de façon répétée avant de lire la stratégie
Appelez POST /v1/gto/solver/tree avec l’identifiant. Pour une résolution au flop, turn_card est facultatif ; river_card est également facultatif et s’associe à turn_card lorsqu’une désambiguïsation est nécessaire. N’inventez aucun de ces champs pour une autre résolution.
curl -s https://pokerai.bet/v1/gto/solver/tree \
+ -H "Authorization: Bearer $POKERAI_API_KEY" \
+ -H "Content-Type: application/json" \
+ -d '{"solve":"<identifiant de résolution>"}'
Ne continuez que lorsque spot_status est queryable. computing n’est pas un résultat de stratégie. no_nodes est terminal pour le tour ou le déroulement des cartes interrogé ; cessez donc de l’interroger. expired signifie que l’identifiant ne peut plus être utilisé et que la situation doit être à nouveau planifiée.
3. Lire un nœud à l’aide de son jeton d’arbre
Un arbre interrogeable renvoie des nœuds avec des champs incluant node, is_hero, status et token. Transmettez ce jeton comme node ; il ne remplace ni la clé API ni un identifiant de résolution réutilisable. Ne consignez pas les données d’identifiant et de jeton dans les journaux clients.
curl -s https://pokerai.bet/v1/gto/solver/node \
+ -H "Authorization: Bearer $POKERAI_API_KEY" \
+ -H "Content-Type: application/json" \
+ -d '{"node":"<token de cet arbre de résolution>"}'
Un nœud Héros peut renvoyer strategy. Un nœud Vilain, ou une requête sans hole_cards, peut renvoyer actions et range_strategy. Si la réponse du nœud indique que node_status vaut computing, expired ou error, ne la présentez pas comme une stratégie ; error peut inclure message.
4. Interprétez uniquement un nœud lisible
Un nœud du Héros lisible peut contenir strategy. Un nœud du Vilain, ou une requête sans hole_cards, peut contenir actions et range_strategy. Ces champs décrivent le nœud renvoyé ; ils ne garantissent pas un arbre, une situation ou un format de jeu différent.
Si l’arbre est computing, no_nodes ou expired, arrêtez-vous ou replanifiez comme indiqué au lieu de présenter un résultat. Pour déterminer si une API hébergée ou un solveur de bureau est le meilleur outil de recherche, consultez la comparaison transparente.
À utiliser uniquement pour l’entraînement et la révision
Utilisez ce cycle de vie pour l’entraînement hors ligne, le coaching, la révision des mains, l’étude et la recherche. Il prend en charge la gestion de l’état d’une résolution soumise, et non la fourniture de décisions à des tables en direct ni une affirmation concernant la qualité de la stratégie, la latence ou les performances.
L’assistance en temps réel aux tables utilisant de l’argent réel est interdite. N’intégrez pas la planification du solveur, l’interrogation répétée, la stratégie de nœud et les processus de libération à l’automatisation des tables en direct ni aux invites d’action en cours de main.
Carte des points de terminaison du cycle de vie
Ces trois opérations suffisent pour le cycle de vie décrit ici ; n’utilisez que les champs documentés dans le contrat OpenAPI actuel.
| Point de terminaison | Rôle dans le cycle de vie | Entrée ou signal documenté |
|---|---|---|
POST /v1/gto/solver | Planifier | Champs de situation requis ; enregistrez solve et examinez status ainsi que solve_quota, qui est facultatif. |
POST /v1/gto/solver/tree | Interroger régulièrement | Envoyez solve ; interrogez régulièrement jusqu’à ce que spot_status: queryable soit atteint, puis sélectionnez un token renvoyé. |
POST /v1/gto/solver/node | Lire | Envoyez le token de l’arbre correspondant comme node ; le champ facultatif hole_cards affine la lecture de la stratégie du Héros. |
Ressources associées
- Documentation développeur — authentification, quotas et flux de travail du solveur
- Référence interactive de l’API — schémas actuels des requêtes et des réponses
- Instantané OpenAPI — le contrat anglais lisible par machine
- Guide de l'API du solveur GTO — contexte produit et cartographie de la surface API
- Guide de l’API d’analyse de mains de poker — intégrer l’analyse du solveur dans un flux de travail après la session
- llms.txt — le point d’entrée LLM concis pour l’API Pokerai