This year, I built a Streamlit app called GRDN AI as a side project- https://youtu.be/ro-dM8hdK88
It’s all about optimizing gardens using the principles of companion planting, powered by a multidisciplinary data science approach and an AI bot, GrowBot.
GRDN AI utilizes a combination of generative AI, optimization (genetic algorithm), graph analytics, and NLP to create optimized garden layouts. Built with Python, Streamlit, LLMs (OpenAI), and LangChain. github repo: GitHub - 4dh/GRDN: GRDN.AI app for garden optimization
Side projects are a fun way to exercise and expand skillsets. A few takeaways from this project:
Generative AI/LLMs
- LangChain has a lot to offer and I enjoyed getting more familiar with it.
- I tried a few models from HuggingFace Hub including bloom and galactica. However, I found that the pretrained models lacked context for gardening resources
- For the tasks in my workflow, OpenAI’s text-davinci-003 via LangChain made the most sense given its extensive training data and knowledge base
Optimization + Graph Analytics
- The Genetic algorithm was neat to try and implement to maximize the positive relationships and minimize the negative relationships of the plants in each plant bed
- Mixed integer program would typically be my go-to choice, but using the genetic algorithm brought a fun and unique dimension to the project
- Runtime is very quick
Application and workflow
- This was when I began using GitHub Copilot and wow- reduces tedious syntax googling and allowed me to focus on the algorithms and workflow
- Developed in Streamlit- proven to be an economic and efficient choice for data and research scientists, as it allows seamless coding in Python
GRDN AI is still a work in progress, and any feedback or feature requests are welcome!