Skip to main content

RAG Core

Python 3.10 Python 3.11 License: MIT PyPI - Version GitHub CI

A Retrieval-Augmented Generation library with a CLI interface. Build RAG applications with just a few commands and a configuration file.

Supported setups

Databases LLMs Embeddings Document types
Chroma (local) OpenAI OpenAI PDF
Pinecone (remote) AzureOpenAI AzureOpenAI

For more details see the documentation.

Installation

To install, run

pip install ragcore

or clone and build from source

git clone https://github.com/daved01/ragcore.git
cd ragcore
pip install .

If everything worked, running

ragcore -h

should show you some information about ragcore.

A Simple Example

To build an application with OpenAI or AzureOpenAI LLMs and embeddings, and a local database, first set your OpenAI API key as described here:

export OPENAI_API_KEY=[your token]

Then, create a config file config.yaml like this in the root of your project:

database:
  provider: "chroma"
  number_search_results: 5
  base_dir: "data/database"

splitter:
  chunk_overlap: 256
  chunk_size: 1024

embedding:
  provider: "openai"
  model: "text-embedding-model"

llm:
  provider: "openai"
  model: "gpt-model"

And finally, create your application using this config file:

from ragcore import RAGCore


app = RAGCore() # pass config=<path-to-config.yaml> if not in root

# Upload a document "My_Book.pdf"
app.add(path="My_Book.pdf")

# Now you can ask questions
answer = app.query(query="What did the elk say?")

print(answer.content)

# List the document's title and content on which the response is based
for doc in answer.documents:
  print(doc.title, " | ", doc.content)

# List all documents in the database
print(app.get_titles())

# You can delete by title
app.delete(title="My_Book")

And that's it! For more information, as well as an overview of supported integrations check out the documentation.

Metadata

Release files for ragcore 1.0.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ragcore 1.0.4
File Size Uploaded
ragcore-1.0.4.tar.gz 24.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ragcore 1.0.4
File Interpreter ABI Platform
ragcore-1.0.4-py3-none-any.whl Python 3 none any Details

Total release size: 55.4 kB

Release files / ragcore-1.0.4.tar.gz

Download URL ragcore-1.0.4.tar.gz
Size 24.7 kB
Tags Source
SHA-256 checksum
How to use checksums
f94f4964b8ef87f268a786b085d51475d6b69edb3a2483a53894518d521549ad
BLAKE2b-256 checksum
How to use checksums
949c6af2350ee3b98f5ba4043285aed2305b4e3992d0814858ed0adbe533bfbb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.8

Release files / ragcore-1.0.4-py3-none-any.whl

Download URL ragcore-1.0.4-py3-none-any.whl
Size 30.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0ebbe0107f532cb2a4e354ea87bede024a46b4a431f93ab716e0bbd51745a24b
BLAKE2b-256 checksum
How to use checksums
9aee63b53c76d7b47d2bfe66f70cadeaff068bdb302c86645bbf3fdf9f3d2c09
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.8

Release history Release notifications | RSS feed

This release

1.0.4 This release

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page