[feat] Integrate BrowserGym (#1452)

* add a single-threaded server serving browsergym

* update poetry

* update browser page content

* add import to make sure browsergym environments are registered properly

* remove flask server, use multiprocess impl and Pipe

* fix

* refactor BrowserEnv

* update browser action and obs to include more complete info

* fix screenshot

* update poetry lock

* add playwright install to workflow

* update

* add better html to text conversion

* update for better text conversion to maintain parity with the current handling of browseurlaction

* update

* update poetry

* update multiprocessing mp

* fix multiprocessing

* update

* update github workflow

---------

Co-authored-by: Xingyao Wang <xingyao6@illinois.edu>
This commit is contained in:
Frank Xu
2024-05-02 07:52:53 -04:00
committed by GitHub
parent 0d77f495e3
commit 836864fa88
11 changed files with 877 additions and 285 deletions

View File

@@ -0,0 +1,20 @@
---
sidebar_label: browser_env
title: opendevin.browser.browser_env
---
## BrowserEnv Objects
```python
class BrowserEnv()
```
#### image\_to\_png\_base64\_url
```python
@staticmethod
def image_to_png_base64_url(image: np.ndarray | Image.Image)
```
Convert a numpy array to a base64 encoded png image url.