This was my final project for a natural language processing class, in this project, I used various state-of-the-art tools to create a domain-based chatbot to improve the performance of pre-existing LLMs in new and niche domains.
The notebook is structured to provide a logical flow from basic setups to more sophisticated chatbot functionalities, ensuring a comprehensive understanding and practical approach to chatbot development within the provided domain.
This section is crucial for setting up the environment required to run the notebook smoothly. It covers the installation of necessary packages and dependencies, ensuring that all the tools and libraries are ready for use.
Detailed instructions and commands for installing required packages and dependencies. This step makes sure that your development environment is prepared for executing the next sections of the notebook.
Introduction to Large Language Models (LLM) and their configuration. This part is essential for understanding how to initialize and use language models for generating human-like responses in the chatbot.
The implementation section delves into the technical aspects of building the chatbot, covering several critical topics.
Focuses on the foundational question-answering capabilities of the chatbot, including techniques to enhance the readability and comprehensibility of responses.
- Relation extraction: Discusses the concept of relation extraction in NLP and its application in understanding and extracting meaningful relationships from text.
- Perplexity: Provides an introduction to perplexity, a measure used in language models, including a simplified explanation suitable for all audiences.
Guides on loading and processing PDF documents that the users want more help with and are crucial for the chatbot to retrieve information and answer user queries.
Explains the methodology behind splitting large documents into smaller, manageable chunks, making it easier for the chatbot to process and understand the content.
Covers the creation of effective prompts that lead to coherent and contextually relevant responses, enhancing the chatbot's usability.
Describes the techniques for retrieving accurate and pertinent information in response to user queries, ensuring the chatbot's responses are relevant and informative.
Focuses on enhancing the readability and presentation of the chatbot's responses, ensuring a pleasant user experience.
This section details the methods and criteria used to evaluate the chatbot's performance, with a particular focus on its ability to understand and respond to complex queries about relation extraction and perplexity which are methods specific to the documents provided.
Explores strategies for effectively managing queries that fall outside the scope of the provided documents, ensuring the chatbot remains helpful and informative under various circumstances.
- The paper analyzed and discusses the approach behind the method of using RAG for better text generation in report format
- A visual representation of the paper.