Back to Llama Index

Google Drive Reader

docs/examples/data_connectors/GoogleDriveDemo.ipynb

0.14.212.1 KB
Original Source

<a href="https://colab.research.google.com/github/run-llama/llama_index/blob/main/docs/examples/data_connectors/GoogleDriveDemo.ipynb" target="_parent"></a>

Google Drive Reader

Demonstrates our Google Drive data connector

Prerequisites

Follow these steps to setup your environment.

  1. Enable the Google Drive API in your GCP project.
  2. Configure an OAuth Consent screen for your GCP project.
    • It is fine to make it "External" if you're not in a Google Workspace.
  3. Create client credentials for your application (this notebook).
    • Make sure to use "Desktop app" as the application type.
    • Move these client credentials to the directory this notebook is in, and name it "credentials.json".

If you're opening this Notebook on colab, you will probably need to install LlamaIndex 🦙.

python
%pip install llama-index llama-index-readers-google
python
import logging
import sys

logging.basicConfig(stream=sys.stdout, level=logging.INFO)
logging.getLogger().addHandler(logging.StreamHandler(stream=sys.stdout))
python
from llama_index.core import SummaryIndex
from llama_index.readers.google import GoogleDriveReader
from IPython.display import Markdown, display

Choose Folder to Read

You can find a folder ID by navigating to a folder in Google Drive then selecting the last part of the URL.

For example, with this URL: https://drive.google.com/drive/u/0/folders/abcdefgh12345678 the folder ID is abcdefgh12345678

python
# Replace the placeholder with your chosen folder ID
folder_id = ["<your_folder_id>"]

# Make sure credentials.json file exists in the current directory (data_connectors)
documents = GoogleDriveReader().load_data(folder_id=folder_id)
python
index = SummaryIndex.from_documents(documents)
python
# Set Logging to DEBUG for more detailed outputs
query_engine = index.as_query_engine()
response = query_engine.query("<query_text>")
python
display(Markdown(f"<b>{response}</b>"))