Coder Social home page Coder Social logo

jaideep-siva / literature-based-chatbot Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 4.34 MB

Creating a RAG( Retrieval Augmented Generation) based chat that utilizes tools such as lang chain, LLM to reduce hallucination and provide domain based knowledge to pre-existing LLMS

Jupyter Notebook 100.00%

literature-based-chatbot's Introduction

IPYNB notebook

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.

Overview

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.

Getting Started

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.

Setting up packages and dependencies

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.

Setting up LLM

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.

Implementation Details

The implementation section delves into the technical aspects of building the chatbot, covering several critical topics.

Pre-contextual learning question answering

Focuses on the foundational question-answering capabilities of the chatbot, including techniques to enhance the readability and comprehensibility of responses.

Key Topics:
  • 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.

Document Handling

Loading PDF documents

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.

Splitting and chunking documents

Explains the methodology behind splitting large documents into smaller, manageable chunks, making it easier for the chatbot to process and understand the content.

Chatbot Interaction

Prompting

Covers the creation of effective prompts that lead to coherent and contextually relevant responses, enhancing the chatbot's usability.

Retrieval

Describes the techniques for retrieving accurate and pertinent information in response to user queries, ensuring the chatbot's responses are relevant and informative.

Text processing for better presentation

Focuses on enhancing the readability and presentation of the chatbot's responses, ensuring a pleasant user experience.

Evaluation

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.

Handling Out-of-Document Questions

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.


Paper

IEEE Research Paper

  • The paper analyzed and discusses the approach behind the method of using RAG for better text generation in report format

Presentation

  • A visual representation of the paper.

literature-based-chatbot's People

Contributors

jaideep-siva avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.