General feedback

#1
by sgbaird - opened
Acceleration Consortium org
  • Graphs - do you think we need to worry about running out of memory? I'm seeing that the full history seems to be recorded (which is nice in itself)

image.png

  • Is the historical data on a per-experiment basis or for the Pioreactor as a whole?

I had trouble getting it to recognize a new experiment.

  • If I change the name at the top, 'test' appears in the bottom-right, but Ed is still shown as the experiment. Is it maybe
    image.png

  • If I put an experiment name that doesn't exist at the top, then there doesn't seem to be any warning or response (not a huge deal, but maybe worth making a markdown note at the least).

  • I noticed KeyError: "None of ['x'] are in the columns" in the logs:

===== Application Startup at 2024-11-20 21:35:25 =====

9bb69fc9bf6b4092abc4c92d76e602cd.s1.eu.hivemq.cloud 8883 Gradio 123
/home/user/app/app.py:41: DeprecationWarning: Callback API version 1 is deprecated, update to latest version
  client = mqtt.Client()
Connected with result code 0
* Running on local URL:  http://0.0.0.0:7860, with SSR โšก

To create a public link, set `share=True` in `launch()`.
Connected with result code 0
Connected with result code 0
Connected with result code 0
Connected with result code 0
Connected with result code 0
Invalid state
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/gradio/queueing.py", line 624, in process_events
    response = await route_utils.call_process_api(
  File "/usr/local/lib/python3.10/site-packages/gradio/route_utils.py", line 323, in call_process_api
    output = await app.get_blocks().process_api(
  File "/usr/local/lib/python3.10/site-packages/gradio/blocks.py", line 2018, in process_api
    result = await self.call_function(
  File "/usr/local/lib/python3.10/site-packages/gradio/blocks.py", line 1567, in call_function
    prediction = await anyio.to_thread.run_sync(  # type: ignore
  File "/usr/local/lib/python3.10/site-packages/anyio/to_thread.py", line 56, in run_sync
    return await get_async_backend().run_sync_in_worker_thread(
  File "/usr/local/lib/python3.10/site-packages/anyio/_backends/_asyncio.py", line 2441, in run_sync_in_worker_thread
    return await future
  File "/usr/local/lib/python3.10/site-packages/anyio/_backends/_asyncio.py", line 943, in run
    result = context.run(func, *args)
  File "/usr/local/lib/python3.10/site-packages/gradio/utils.py", line 846, in wrapper
    response = f(*args, **kwargs)
  File "/home/user/app/app.py", line 712, in get_data_default
    df = df.set_index("x")
  File "/usr/local/lib/python3.10/site-packages/pandas/core/frame.py", line 6122, in set_index
    raise KeyError(f"None of {missing} are in the columns")
KeyError: "None of ['x'] are in the columns"
  • Maybe we could add some more logs? I'm not sure if the user gets to see the logs

  • Thoughts on adding flagging? Should be an easy toggle, but I'm curious if you think it would be useful from a developer standpoint.

Acceleration Consortium org

The experiment part is bad design on my part. Thinking about it now we can actually just remove the top most input for experiment and directly fetch the active experiment on the reactor side. Currently to change experiment you need to do it below in the experiment part. The top input for experiment should match the experiment in the status.

The error is likely due to the table creation. When no data has been gathered this could happen. I will add some logic to handle this.

I will look into logs and flagging.

Acceleration Consortium org

The graphs are unique to each experiment. Shouldn't be too big a concern.

Acceleration Consortium org

Thanks!

A couple other random things:

  1. Could you add a title and a short text description, similar to https://huggingface.co/spaces/AccelerationConsortium/cobot280pi-gradio and a link to the Pioreactor website? Optionally, maybe an image of a pioreactor
  2. Could you put the Colab badge in-between the title and short description from above, and remove the explanatory text? (I think people will either already know what it is or get curious and click it)
Acceleration Consortium org

of course

Sign up or log in to comment