Spaces:
Sleeping
Sleeping
from my_chess.scripts.scripts import HumanVsBot | |
from my_chess.learner.environments import Chess | |
from chessmodels import DCMinMax | |
import streamlit as st | |
from streamlit_image_coordinates import streamlit_image_coordinates | |
class HvB(HumanVsBot): | |
def get_hvb_manager( | |
_model, | |
_environment, | |
_extra_model_environment_context, | |
**kwargs): | |
return HvB( | |
model = _model, | |
environment = _environment, | |
extra_model_environment_context = _extra_model_environment_context, | |
**kwargs) | |
def play(bot_select): | |
play = HvB.get_hvb_manager( | |
_model=DCMinMax.from_pretrained("mzimm003/{}".format(bot_select)), | |
_environment=Chess(render_mode="rgb_array"), | |
_extra_model_environment_context=lambda env: {"board":env.board} | |
) | |
st.session_state["board"] = streamlit_image_coordinates(play.render_board(), key="brd", click_and_drag=True) | |
play.run() | |
def main(kwargs=None): | |
bot_select = st.selectbox( | |
label="bot", | |
options=["DeepChessReplicationMinMax"], | |
) | |
st.button("Play bot!", on_click=play, args=[bot_select]) | |
if __name__ == "__main__": | |
# main() | |
play("DeepChessReplicationMinMax") | |