Skip to main content

Selenium code generation from text instructions

Project description

Stargazers Issues Forks Contributors


LaVague Logo

Welcome to LaVague

Join our Discord server! Docs

The open-source community for Large Action Models

🏄‍♀️ What is LaVague?

LaVague is an open-source Large Action Model framework for turning natural language into browser actions.

At LaVague's core, we have an Action Engine which uses advanced AI techniques (RAG, Few-shot learning, Chain of Thought) to “compile” natural language instructions into browser automation code, by leveraging Selenium or Playwright.

LaVague in Action

Here's an example of LaVague being used to execute natural language instructions on a browser to automate web interactions. This example uses the Gradio interface available with the lavague launch CLI command:

LaVague Interaction Example
LaVague interacting with Hugging Face's website.


🚀 Getting Started

Running LaVague in your local env

You can get started with LaVague in 2 steps:

  1. Install LaVague & dependencies
wget https://raw.githubusercontent.com/lavague-ai/LaVague/main/setup.sh &&
bash setup.sh
  1. Run your LaVague command!

You can either launch an interactive Gradio interface, where you will see both the automation code generated for each instruction but also a live preview of the results of executing the code with a debug tab:

lavague launch

Or you can use the build command to directly get the Python code leveraging Selenium in a file, which you can then inspect & execute locally:

lavague build

Note, you'll need an OpenAI API key for this default example and will need the OPENAI_API_KEY set in your environment. To use LaVague with a different API, see our integrations section.

For an end-to-end example of LaVague in a Google Colab, see our quick-tour notebook

🎭 Playwright integration

If you want to get started with LaVague build using Playwright as your underlying automation tool, see our Playwright integration guide

🙋 Contributing

We would love your help and support on our quest to build a robust and reliable Large Action Model for web automation.

To avoid having multiple people working on the same things & being unable to merge your work, we have outlined the following contribution process:

  1. 📢 We outline tasks on our backlog: we recommend you check out issues with the help-wanted labels & good first issue labels
  2. 🙋‍♀️ If you are interested in working on one of these tasks, comment on the issue!
  3. 🤝 We will discuss with you and assign you the task with a community assigned label
  4. 💬 We will then be available to discuss this task with you
  5. ⬆️ You should submit your work as a PR
  6. ✅ We will review & merge your code or request changes/give feedback

Please check out our contributing guide for a more detailed guide.

If you want to ask questions, contribute, or have proposals, please come on our Discord to chat!

🗺️ Roadmap

TO keep up to date with our project backlog here.

🚨 Disclaimer

Note, this project executes LLM-generated code using exec. This is not considered a safe practice. We therefore recommend taking extra care when using LaVague (such as running LaVague in a sandboxed environment)!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lavague-1.0.10.tar.gz (35.6 kB view hashes)

Uploaded Source

Built Distribution

lavague-1.0.10-py3-none-any.whl (35.8 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page