Skip to content

This codebase implements a Retrieval-Augmented Generation (RAG) chatbot using the Gemini API and DSPy framework, designed to answer questions based on the HotPotQA dataset. It includes components for loading data, generating responses, and evaluating model performance through various QA strategies, including basic QA and multi-hop retrieval.

Notifications You must be signed in to change notification settings

Sagor0078/building-RAG-using-DSPy-and-Gemini-API

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RAG-based Chatbot using Gemini API and DSPy

This project implements a Retrieval-Augmented Generation (RAG) chatbot that utilizes the Gemini API for natural language processing tasks. The chatbot is designed to answer questions based on the HotPotQA dataset, leveraging both retrieval and generative capabilities.

Features

  • Retrieval-Augmented Generation: Combines retrieval of relevant context with generative responses.
  • Custom Gemini Model Integration: Utilizes the Gemini API for generating answers.
  • Local Dataset Handling: Downloads and caches the HotPotQA dataset locally for efficient access.
  • Multi-hop Querying: Supports complex queries through a multi-hop retrieval mechanism.

Requirements

  • Python 3.11 or higher
  • dspy library
  • google-generativeai library
  • datasets library
  • Other dependencies are managed via requirements.txt.

Installation

  1. Clone this repository:
    https://github.com/Sagor0078/building-RAG-using-DSPy-and-Gemini-API.git

Continue..

About

This codebase implements a Retrieval-Augmented Generation (RAG) chatbot using the Gemini API and DSPy framework, designed to answer questions based on the HotPotQA dataset. It includes components for loading data, generating responses, and evaluating model performance through various QA strategies, including basic QA and multi-hop retrieval.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages