https://github.com/bhancockio/adk-rag-agent
https://github.com/bhancockio/adk-rag-agent
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/bhancockio/adk-rag-agent
- Owner: bhancockio
- Created: 2025-05-09T18:35:29.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2025-05-11T14:07:19.000Z (5 months ago)
- Last Synced: 2025-06-22T08:02:16.335Z (4 months ago)
- Language: Python
- Size: 25.4 KB
- Stars: 55
- Watchers: 1
- Forks: 56
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-adk-agents - bhancockio/RAG-Agent-Tutorial - Complete RAG implementation with ADK and Vertex AI with [YouTube](https://www.youtube.com/watch?v=TvW4A0a75mw&t=14s) tutorial (📚 Learning Resources / 📖 Tutorials & Walkthroughs)
- awesome-adk-agents - RAG Agent Tutorial
README
# Vertex AI RAG Agent with ADK
This repository contains a Google Agent Development Kit (ADK) implementation of a Retrieval Augmented Generation (RAG) agent using Google Cloud Vertex AI.
## Overview
The Vertex AI RAG Agent allows you to:
- Query document corpora with natural language questions
- List available document corpora
- Create new document corpora
- Add new documents to existing corpora
- Get detailed information about specific corpora
- Delete corpora when they're no longer needed## Prerequisites
- A Google Cloud account with billing enabled
- A Google Cloud project with the Vertex AI API enabled
- Appropriate access to create and manage Vertex AI resources
- Python 3.9+ environment## Setting Up Google Cloud Authentication
Before running the agent, you need to set up authentication with Google Cloud:
1. **Install Google Cloud CLI**:
- Visit [Google Cloud SDK](https://cloud.google.com/sdk/docs/install) for installation instructions for your OS2. **Initialize the Google Cloud CLI**:
```bash
gcloud init
```
This will guide you through logging in and selecting your project.3. **Set up Application Default Credentials**:
```bash
gcloud auth application-default login
```
This will open a browser window for authentication and store credentials in:
`~/.config/gcloud/application_default_credentials.json`4. **Verify Authentication**:
```bash
gcloud auth list
gcloud config list
```5. **Enable Required APIs** (if not already enabled):
```bash
gcloud services enable aiplatform.googleapis.com
```## Installation
1. **Set up a virtual environment**:
```bash
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
```2. **Install Dependencies**:
```bash
pip install -r requirements.txt
```## Using the Agent
The agent provides the following functionality through its tools:
### 1. Query Documents
Allows you to ask questions and get answers from your document corpus:
- Automatically retrieves relevant information from the specified corpus
- Generates informative responses based on the retrieved content### 2. List Corpora
Shows all available document corpora in your project:
- Displays corpus names and basic information
- Helps you understand what data collections are available### 3. Create Corpus
Create a new empty document corpus:
- Specify a custom name for your corpus
- Sets up the corpus with recommended embedding model configuration
- Prepares the corpus for document ingestion### 4. Add New Data
Add documents to existing corpora or create new ones:
- Supports Google Drive URLs and GCS (Google Cloud Storage) paths
- Automatically creates new corpora if they don't exist### 5. Get Corpus Information
Provides detailed information about a specific corpus:
- Shows document count, file metadata, and creation time
- Useful for understanding corpus contents and structure### 6. Delete Corpus
Removes corpora that are no longer needed:
- Requires confirmation to prevent accidental deletion
- Permanently removes the corpus and all associated files## Troubleshooting
If you encounter issues:
- **Authentication Problems**:
- Run `gcloud auth application-default login` again
- Check if your service account has the necessary permissions- **API Errors**:
- Ensure the Vertex AI API is enabled: `gcloud services enable aiplatform.googleapis.com`
- Verify your project has billing enabled- **Quota Issues**:
- Check your Google Cloud Console for any quota limitations
- Request quota increases if needed- **Missing Dependencies**:
- Ensure all requirements are installed: `pip install -r requirements.txt`## Additional Resources
- [Vertex AI RAG Documentation](https://cloud.google.com/vertex-ai/generative-ai/docs/rag-overview)
- [Google Agent Development Kit (ADK) Documentation](https://github.com/google/agents-framework)
- [Google Cloud Authentication Guide](https://cloud.google.com/docs/authentication)