{"repo":"fau-masters-collected-works-cgarbin/gpt-all-local","free":true,"listed":false,"github":"https://github.com/fau-masters-collected-works-cgarbin/gpt-all-local","clone":"git clone https://github.com/fau-masters-collected-works-cgarbin/gpt-all-local.git","description":"A \"chat with your data\" example: using a large language models (LLM) to interact with our own (local) data. Everything is local: the embedding model, the LLM, the vector database. This is an example of retrieval-augmented generation (RAG): we find relevant sections from our documents and pass it to the LLM as part of the prompt (see pics).","language":"Python","stars":31,"topics":["embeddings","large-language-models","llm","rag","retrieval-augmented-generation","vector-database"],"license":null,"category":"ai-agents","readme_excerpt":"Using LLMs on private data, all locally This project is a learning exercise on using large language models (LLMs) to retrieve information from private data, running all pieces (including the LLM) locally. The goal is to run an LLM on your computer to ask questions about a set of files on your computer. The files can be any type of document, such as PDF, Word, or text files. This method of combining LLMs and private data is known as retrieval-augmented generation (RAG). It was introduced in this paper. Credit where credit is due: I based this project on the original privateGPT (what they now call the primordial version). I reimplemented the pieces to understand how they work. See more in the sources section. What we are trying to achieve: given a set of files on a computer (A), we want a large language model (B) running on that computer to answer questions (C) on them. However, we cannot feed the files directly to the model. Large language models (LLMs) have a context window that limits how much information we can feed into them (their working memory). To overcome that limitation, we split the files into smaller pieces, called chunks , and feed only the relevant ones to the model (D). But then, the question becomes \"how do we find the relevant chunks?\" . We use similarity search (E) to match the question and the chunks. Similarity search, in turn, requires vector embeddings (F), a representation of words with vectors that encode semantic relationships (technically, a dense vec","default_branch":null,"files":null,"tree":[],"storefront":"/r/fau-masters-collected-works-cgarbin","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/fau-masters-collected-works-cgarbin/gpt-all-local/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}