{ "cells": [ { "cell_type": "code", "execution_count": 2, "id": "8d757994-ed2b-4b3a-a6b3-2267a57d006d", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Collecting ipywidgets\n", " Downloading ipywidgets-8.1.8-py3-none-any.whl.metadata (2.4 kB)\n", "Requirement already satisfied: comm>=0.1.3 in /opt/anaconda3/envs/openenv/lib/python3.10/site-packages (from ipywidgets) (0.2.3)\n", "Requirement already satisfied: ipython>=6.1.0 in /opt/anaconda3/envs/openenv/lib/python3.10/site-packages (from ipywidgets) (8.39.0)\n", "Requirement already satisfied: traitlets>=4.3.1 in /opt/anaconda3/envs/openenv/lib/python3.10/site-packages (from ipywidgets) (5.14.3)\n", "Collecting widgetsnbextension~=4.0.14 (from ipywidgets)\n", " Downloading widgetsnbextension-4.0.15-py3-none-any.whl.metadata (1.6 kB)\n", "Collecting jupyterlab_widgets~=3.0.15 (from ipywidgets)\n", " Downloading jupyterlab_widgets-3.0.16-py3-none-any.whl.metadata (20 kB)\n", "Requirement already satisfied: decorator in /opt/anaconda3/envs/openenv/lib/python3.10/site-packages (from ipython>=6.1.0->ipywidgets) (5.2.1)\n", "Requirement already satisfied: exceptiongroup in /opt/anaconda3/envs/openenv/lib/python3.10/site-packages (from ipython>=6.1.0->ipywidgets) (1.3.1)\n", "Requirement already satisfied: jedi>=0.16 in /opt/anaconda3/envs/openenv/lib/python3.10/site-packages (from ipython>=6.1.0->ipywidgets) (0.19.2)\n", "Requirement already satisfied: matplotlib-inline in /opt/anaconda3/envs/openenv/lib/python3.10/site-packages (from ipython>=6.1.0->ipywidgets) (0.2.1)\n", "Requirement already satisfied: pexpect>4.3 in /opt/anaconda3/envs/openenv/lib/python3.10/site-packages (from ipython>=6.1.0->ipywidgets) (4.9.0)\n", "Requirement already satisfied: prompt_toolkit<3.1.0,>=3.0.41 in /opt/anaconda3/envs/openenv/lib/python3.10/site-packages (from ipython>=6.1.0->ipywidgets) (3.0.52)\n", "Requirement already satisfied: pygments>=2.4.0 in /opt/anaconda3/envs/openenv/lib/python3.10/site-packages (from ipython>=6.1.0->ipywidgets) (2.20.0)\n", "Requirement already satisfied: stack_data in /opt/anaconda3/envs/openenv/lib/python3.10/site-packages (from ipython>=6.1.0->ipywidgets) (0.6.3)\n", "Requirement already satisfied: typing_extensions>=4.6 in /opt/anaconda3/envs/openenv/lib/python3.10/site-packages (from ipython>=6.1.0->ipywidgets) (4.15.0)\n", "Requirement already satisfied: wcwidth in /opt/anaconda3/envs/openenv/lib/python3.10/site-packages (from prompt_toolkit<3.1.0,>=3.0.41->ipython>=6.1.0->ipywidgets) (0.6.0)\n", "Requirement already satisfied: parso<0.9.0,>=0.8.4 in /opt/anaconda3/envs/openenv/lib/python3.10/site-packages (from jedi>=0.16->ipython>=6.1.0->ipywidgets) (0.8.6)\n", "Requirement already satisfied: ptyprocess>=0.5 in /opt/anaconda3/envs/openenv/lib/python3.10/site-packages (from pexpect>4.3->ipython>=6.1.0->ipywidgets) (0.7.0)\n", "Requirement already satisfied: executing>=1.2.0 in /opt/anaconda3/envs/openenv/lib/python3.10/site-packages (from stack_data->ipython>=6.1.0->ipywidgets) (2.2.1)\n", "Requirement already satisfied: asttokens>=2.1.0 in /opt/anaconda3/envs/openenv/lib/python3.10/site-packages (from stack_data->ipython>=6.1.0->ipywidgets) (3.0.1)\n", "Requirement already satisfied: pure-eval in /opt/anaconda3/envs/openenv/lib/python3.10/site-packages (from stack_data->ipython>=6.1.0->ipywidgets) (0.2.3)\n", "Downloading ipywidgets-8.1.8-py3-none-any.whl (139 kB)\n", "Downloading jupyterlab_widgets-3.0.16-py3-none-any.whl (914 kB)\n", "\u001b[2K \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m914.9/914.9 kB\u001b[0m \u001b[31m25.6 MB/s\u001b[0m \u001b[33m0:00:00\u001b[0m\n", "\u001b[?25hDownloading widgetsnbextension-4.0.15-py3-none-any.whl (2.2 MB)\n", "\u001b[2K \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.2/2.2 MB\u001b[0m \u001b[31m27.8 MB/s\u001b[0m \u001b[33m0:00:00\u001b[0m\n", "Installing collected packages: widgetsnbextension, jupyterlab_widgets, ipywidgets\n", "\u001b[2K \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m3/3\u001b[0m [ipywidgets]\n", "Successfully installed ipywidgets-8.1.8 jupyterlab_widgets-3.0.16 widgetsnbextension-4.0.15\n" ] } ], "source": [ "!pip install ipywidgets" ] }, { "cell_type": "code", "execution_count": 1, "id": "ef95f6bb-62ac-4540-8601-77d63816e373", "metadata": {}, "outputs": [], "source": [ "from echo_env import EchoEnv, CallToolAction, ListToolsAction" ] }, { "cell_type": "code", "execution_count": 2, "id": "f2024382-ad65-44dc-a120-89fd6791e322", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "done=False reward=None metadata={} tool_name='echo_message' result={'content': [{'type': 'text', 'text': 'Hello from Local Docker!', 'annotations': None, 'meta': None}], 'structured_content': {'result': 'Hello from Local Docker!'}, 'meta': {'fastmcp': {'wrap_result': True}}, 'data': 'Hello from Local Docker!', 'is_error': False} error=None\n" ] } ], "source": [ "# Change the URL to localhost:8001\n", "env = EchoEnv(base_url=\"http://localhost:8001\").sync()\n", "\n", "# The rest of your code stays the same\n", "env.reset()\n", "\n", "my_action = CallToolAction(\n", " tool_name=\"echo_message\", \n", " arguments={\"message\": \"Hello from Local Docker!\"}\n", ")\n", "\n", "response = env.step(my_action)\n", "print(response.observation)" ] }, { "cell_type": "code", "execution_count": null, "id": "1aa794c9-ecb7-4d21-8995-c8f9190d82d9", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python (openenv)", "language": "python", "name": "openenv" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.20" } }, "nbformat": 4, "nbformat_minor": 5 }