Software

How it Works:

  • Cohere provides access to advanced Large Language Models and NLP tools. We've used Cohere models to make the Chatbot fast and accurate.
  • We have used Cohere's embedding API in order to sort through a web-scraped database.
  • LangChain is a framework designed to simplify the creation of applications using large language models (LLMs). As a language model integration framework, LangChain's use-cases largely overlap with those of language models in general, including document analysis and summarization, chatbots, and code analysis.
  • Streamlit is an open source app framework in Python language. This has been used to create the frontend. It helps us create web apps for data science and machine learning in a short time. It is compatible with major Python libraries such as scikit-learn, Keras, PyTorch, SymPy(latex), NumPy, pandas, Matplotlib etc.
  • A combinatiion of these tools allows us to create a custom database, with vector embeddings of data on the iGEM website and feed that to our conversational Chatbot.

How to Use:

  • Activate a Conda Environment:
    How to guide

  • Clone the repository onto your local machine, in the dedicated Conda Environment. Here's the repository.
  • pip install -r requirements.txt
    This installs all the required dependencies needed for our software to work locally on any machine!
  • python3 cohere_embed.py
    Run the cohere_embed.py file to create the vector database. This should take a few minutes.
  • streamlit run app.py
    This opens the UI on localhost, and your Chatbot is ready to use! It looks like this: