August 7th, 2024

Basic ReAct webapp using FastHTML and LangGraph

The "curiosity" GitHub repository experiments with ReAct chatbots using LangGraph and FastHTML, integrating Tavily for search, facing challenges with WebSocket and SQLite, and requiring specific setup steps.

Read original articleLink Icon
Basic ReAct webapp using FastHTML and LangGraph

The GitHub repository titled "curiosity" is a project dedicated to experimenting with ReAct chatbots, focusing on technologies such as LangGraph and FastHTML to create a user experience akin to Perplexity. It employs a ReAct Agent that integrates with Tavily for enhanced search capabilities and utilizes OpenAI's GPT-4o-mini alongside a locally hosted llama3.1 model for text generation. The project has encountered challenges, particularly with WebSocket connections and SQLite persistence while attempting to stream tokens from the language model to the frontend. The frontend, built with FastHTML, offers a quick user experience but has also presented debugging difficulties. To set up the project, users need to clone the repository, ensure they have a recent Python 3 interpreter, create a virtual environment, install required packages, configure an .env file with necessary API keys, and run the application. The repository also features a visual representation of the project in its README.

- The project explores ReAct chatbots using LangGraph and FastHTML.

- It integrates with Tavily for improved search capabilities.

- Challenges include WebSocket connections and SQLite persistence.

- Setup requires Python 3, virtual environment, and specific API keys.

- A visual representation of the project is included in the README.

Link Icon 3 comments
By @brianshaler - 5 months
For anyone like me that wondered if "ReAct webapp" was a weird way of capitalizing the React webapp Javascript framework, it appears to be about a Reasoning and Acting methodology[0] with LLMs.

Maybe obvious for anyone with more of a pulse on the latest in the LLM space, but it was new to me and took some digging to get more context.

[0] https://arxiv.org/abs/2210.03629

By @nexuist - 5 months
At long last: A way to write web apps in Python while preserving the un-Googleable naming conventions of JavaScript frameworks