GAIR-NLP / factool

FacTool: Factuality Detection in Generative AI
https://ethanc111.github.io/factool_website/
Apache License 2.0
816 stars 61 forks source link

Toggling Public knowledge and Private knowledge #4

Open fire17 opened 1 year ago

fire17 commented 1 year ago

Hi there! Looks like a fantastic project! Was wondering how do I add a text file like Manifest (or a folder) and have the get a factool based on (only) information in those files.

Like for example I want to ask it questions based on my notes. Or ask questions based on a transcript of a YouTube video and get answer based on what is claimed , Or answer questions based on a pre written FAQ

Ultimately it would be nice to easily toggle which dataset to use, open, local, or both to cross correlate, and to go back and forth depending on what is desired

Let me know how I can do this currently with the current state of the code.. And hopefully set easy flag parameters and source store soon

Thanks a lot and all the best!

fire17 commented 1 year ago

The things I've suggested are already possible with current solutions such as privateGpt or pdfgpt but it seems like factool is more robust and correct with higher accuracy, and also in terms of outputs which are consistent and easy to integrate with

fire17 commented 1 year ago

Read further, I see that "evidence" is what I'm looking for, basically I need to do hot swapping on evidence from online scraping and local files. If you can help show an example of how you recommend of doing this that would very appreciated 👍

EthanC111 commented 1 year ago

@fire17 Thank you for your interest on our work!

Indeed adding private knowledge support to FacTool is on our priority list! To achieve this, we have to change this file link, so that the tool is querying from your own database (or vector database) rather than querying from the search engine.

Let me know if you have more questions! Thank you!

fire17 commented 1 year ago

Seems simple enough to hot swap, maybe make parent class that has .run() and gets similar inputs and outputs (+ kwargs) Then choose if to use Google search or Vector Search or Local Search (pass info like paths to include)