Skip to content

Commit 9a1ccdc

Browse files
second pass + descriptions
1 parent fc23ef5 commit 9a1ccdc

5 files changed

Lines changed: 41 additions & 40 deletions

File tree

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,35 @@
11
---
22
title: Learn about LlamaIndex and Google Axion C4A for RAG applications
3+
description: Learn how LlamaIndex supports browser-based RAG applications on Google Axion-based C4A Arm instances.
34
weight: 2
45

56
layout: "learningpathall"
67
---
78

8-
## Google Axion C4A Arm instances for AI and RAG workloads
9+
## Google Cloud C4A instances for AI and RAG workloads
910

10-
Google Axion C4A is a family of Arm-based virtual machines built on Google’s custom Axion CPU, which is based on Arm Neoverse V2 cores. Designed for high-performance and energy-efficient computing, these virtual machines offer strong performance for modern cloud workloads such as AI applications, vector databases, Retrieval-Augmented Generation (RAG) pipelines, and scalable inference services.
11+
Google Cloud C4A is a family of Arm-based virtual machines (VMs) built on Google’s custom Axion CPU, which is based on Arm Neoverse V2 cores. Designed for high-performance and energy-efficient computing, these VMs offer strong performance for modern cloud workloads.
1112

1213
The C4A series provides a cost-effective alternative to x86 virtual machines while using the scalability and performance benefits of the Arm architecture in Google Cloud.
1314

1415
## LlamaIndex for RAG and context-aware AI applications on Arm
1516

16-
LlamaIndex is an open-source framework designed to build context-aware AI applications using Large Language Models (LLMs). It's widely used for RAG, document indexing, vector search, semantic retrieval, and integrating custom data sources with LLMs.
17+
LlamaIndex is an open-source framework designed to build context-aware AI applications using large language models (LLMs). It's widely used for Retrieval-Augmented Generation (RAG), document indexing, vector search, semantic retrieval, and integrating custom data sources with LLMs.
1718

1819
LlamaIndex provides a unified framework with components such as:
1920

20-
* Document loaders for ingesting custom data
21-
* Indexing pipelines for structured retrieval workflows
22-
* Query engines for context-aware question answering
23-
* Vector store integrations for scalable embedding search
24-
* LLM integrations for generating grounded responses
21+
- Document loaders for ingesting custom data
22+
- Indexing pipelines for structured retrieval workflows
23+
- Query engines for context-aware question answering
24+
- Vector store integrations for scalable embedding search
25+
- LLM integrations for generating grounded responses
2526

2627
Running LlamaIndex on Google Axion C4A Arm-based infrastructure enables efficient execution of AI and RAG workloads by using multi-core Arm CPUs and optimized memory performance. This results in improved performance per watt, reduced infrastructure costs, and better scalability for browser-based AI applications and local inference pipelines.
2728

28-
Common use cases include browser-based AI assistants, document search applications, semantic retrieval systems, vector database integrations, enterprise knowledge bases, and context-aware chatbot applications.
29+
In this Learning Path, you'll use these components to build a browser-based RAG application that answers questions from custom documents.
2930

3031
## What you've learned and what's next
3132

32-
You've now learned about Google Axion C4A Arm-based virtual machines and their performance advantages for AI and RAG workloads. You were also introduced to core LlamaIndex components including document ingestion, indexing pipelines, query engines, vector stores, and LLM integrations.
33+
You've now learned about Google Cloud C4A Arm-based VMs and their performance advantages for AI and RAG workloads. You were also introduced to core LlamaIndex components including document ingestion, indexing pipelines, query engines, vector stores, and LLM integrations.
3334

3435
Next, you'll create a firewall rule in Google Cloud Console to enable remote access to the browser-based LlamaIndex RAG application that you'll create in this Learning Path.

content/learning-paths/servers-and-cloud-computing/llamaindex-rag-axion/build-browser-rag-app.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
---
22
title: Build and test a browser-based RAG application with LlamaIndex
3+
description: Learn how to build a browser-based RAG application with LlamaIndex, ChromaDB, Ollama, and FastAPI on an Arm-based Google Cloud C4A VM.
34
weight: 6
45

56
### FIXED, DO NOT MODIFY
@@ -340,10 +341,11 @@ INFO: Waiting for application startup.
340341
INFO: Application startup complete.
341342
INFO: Uvicorn running on http://0.0.0.0:8000
342343
```
344+
Keep the terminal open for testing the application.
343345

344346
## Test the browser-based RAG application
345347

346-
After starting the application, open the application UI and test the application to make sure it works.
348+
After starting the application, test it by opening the UI and asking a few questions.
347349

348350
### Open browser application UI
349351

@@ -391,7 +393,7 @@ Copy your own files into the data directory. For example:
391393
cp yourfile.txt ~/llamaindex-rag/data/
392394
```
393395

394-
Stop the running FastAPI server by pressing `Ctrl+C` in the terminal where Uvicorn is running. Then restart it:
396+
Stop the running FastAPI server by pressing `Ctrl + C` in the terminal where Uvicorn is running. Then restart it:
395397

396398
```bash
397399
uvicorn api:app --host 0.0.0.0 --port 8000
@@ -401,6 +403,6 @@ The `build_query_engine()` function runs on startup and reads all documents from
401403

402404
## What you've accomplished
403405

404-
You've successfully built a browser-based RAG application using LlamaIndex on a Google Cloud Axion Arm64 VM. You created sample documents, generated embeddings using HuggingFace models, stored vectors in ChromaDB, exposed the backend using FastAPI, and queried custom documents directly from a browser using Ollama.
406+
You've now built a browser-based RAG application using LlamaIndex on an Arm-based Google Cloud C4A VM. You created sample documents, generated embeddings using Hugging Face models, stored vectors in ChromaDB, exposed the backend using FastAPI, and queried custom documents directly from a browser using Ollama.
405407

406408
You can extend this workflow for your own LlamaIndex RAG applications on Arm-based cloud infrastructure.
Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
---
22
title: Configure Google Cloud firewall rules for LlamaIndex
3+
description: Learn how to create a Google Cloud firewall rule that allows browser access to a FastAPI-based LlamaIndex RAG application.
34
weight: 3
45

56
### FIXED, DO NOT MODIFY
@@ -8,30 +9,30 @@ layout: learningpathall
89

910
## Allow inbound access to the LlamaIndex browser application
1011

11-
Create a firewall rule in Google Cloud Console to expose the required port for the browser-based LlamaIndex RAG application.
12+
Create a firewall rule in Google Cloud Console to expose port 8000 for the browser-based LlamaIndex RAG application.
1213

1314
### Configure the firewall rule in Google Cloud Console
1415

1516
To configure a firewall rule:
1617

17-
1. Navigate to the [Google Cloud Console](https://console.cloud.google.com/).
18+
1. Navigate to the [Google Cloud console](https://console.cloud.google.com/).
1819
2. Go to **VPC Network > Firewall**, and select **Create firewall rule**.
1920

20-
![Google Cloud Console VPC Network Firewall page showing the Create firewall rule button in the top menu bar#center](images/firewall-rule.png "Create a firewall rule in Google Cloud Console")
21+
![Google Cloud console VPC Network Firewall page showing the Create firewall rule button in the top menu bar#center](images/firewall-rule.png "Create a firewall rule in Google Cloud console")
2122

2223
3. Set **Name** to `allow-llamaindex-port`, then select the network you want to bind to your virtual machine.
2324
4. Set **Direction of traffic** to **Ingress**, set **Action on match** to **Allow**, set **Targets** to **All instances in the network**, and set **Source IPv4 ranges** to **0.0.0.0/0**.
2425

25-
![Google Cloud Console Create firewall rule form with Name set to allow-llamaindex-port and Direction of traffic set to Ingress#center](images/network-rule.png "Configuring the allow-llamaindex-port firewall rule")
26+
![Google Cloud console Create firewall rule form with Name set to allow-llamaindex-port and Direction of traffic set to Ingress#center](images/network-rule.png "Configuring the allow-llamaindex-port firewall rule")
2627

2728
5. Under **Protocols and ports**, select **Specified protocols and ports**.
28-
6. Select the **TCP** checkbox. Port **8000** is used by the FastAPI server that backs the browser-based LlamaIndex RAG application. Enter:
29+
6. Select the **TCP** checkbox. Port `8000` is used by the FastAPI server that backs the browser-based LlamaIndex RAG application. Enter:
2930

3031
```text
3132
8000
3233
```
3334

34-
![Google Cloud Console Protocols and ports section with TCP selected and port 8000 entered#center](images/network-port.png "Setting the LlamaIndex browser application port in the firewall rule")
35+
![Google Cloud console Protocols and ports section with TCP selected and port 8000 entered#center](images/network-port.png "Setting the LlamaIndex browser application port in the firewall rule")
3536

3637
7. In the same **TCP** field, also add port `22` to allow SSH access to the VM.
3738
8. Select **Create**.
@@ -40,4 +41,4 @@ To configure a firewall rule:
4041

4142
You've now created a firewall rule that exposes port 8000 for the browser-based LlamaIndex RAG application and port 22 for SSH. The firewall rule uses the network tag `allow-llamaindex-port`, which you'll attach to your virtual machine in the next section.
4243

43-
Next, you'll create a Google Cloud Axion C4A virtual machine and connect to it using SSH.
44+
Next, you'll create a Google Cloud C4A virtual machine and connect to it using SSH.
Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
---
2-
title: Create a Google Axion C4A virtual machine for LlamaIndex
2+
title: Create a Google Cloud C4A virtual machine for LlamaIndex
3+
description: Learn how to create an Arm-based Google Cloud C4A virtual machine powered by Google Axion and connect to it with browser-based SSH.
34
weight: 4
45

56
### FIXED, DO NOT MODIFY
@@ -8,24 +9,24 @@ layout: learningpathall
89

910
## Set up the virtual machine
1011

11-
In this section, you'll create a Google Axion C4A Arm-based virtual machine (VM). You'll use the `c4a-standard-4` machine type, which provides 4 vCPUs and 16 GB of memory. This VM will host your browser-based LlamaIndex RAG application.
12+
In this section, you'll create a Google Cloud C4A Arm-based virtual machine (VM). You'll use the `c4a-standard-4` machine type, which provides four vCPUs and 16 GB of memory. This VM will host your browser-based LlamaIndex RAG application.
1213

1314
### Configure the C4A virtual machine in Google Cloud Console
1415

1516
To create a virtual machine based on the C4A instance type in the console:
1617

1718
1. Navigate to the [Google Cloud Console](https://console.cloud.google.com/).
18-
2. Go to **Compute Engine** > **VM Instances** and select **Create Instance**.
19+
2. Go to **Compute Engine** > **VM instances** and select **Create instance**.
1920
3. Under **Machine configuration**, populate fields such as **Instance name**, **Region**, and **Zone**.
2021
4. Set **Series** to `C4A`, then select `c4a-standard-4` for **Machine type**.
2122

22-
![Screenshot of the Google Cloud Console showing the Machine configuration section. The Series dropdown is set to C4A and the machine type c4a-standard-4 is selected#center](images/gcp-vm.png "Configuring machine type to C4A in Google Cloud Console")
23+
![Screenshot of the Google Cloud Console showing the Machine configuration section. The Series dropdown is set to C4A and the machine type c4a-standard-4 is selected.#center](images/gcp-vm.png "Configuring machine type to C4A in Google Cloud Console")
2324

2425
5. Under **OS and storage**, select **Change** and then choose an Arm64-based operating system image. For this Learning Path, select **SUSE Linux Enterprise Server**.
2526
6. For the license type, choose **Pay as you go**.
26-
7. Increase **Size (GB)** from **10** to **100** to allocate sufficient disk space, and then click **Select**.
27+
7. Increase **Size (GB)** from **10** to **100** to allocate sufficient disk space, and then select **Select**.
2728
8. Select **Networking** from the column on the left.
28-
9. Under **Network tags**, enter `allow-llamaindex-port` to link the VM to the firewall rule from the previous section and allow inbound access to port `8000` for the browser-based LlamaIndex RAG application and port `22` for ssh access.
29+
9. Under **Network tags**, enter `allow-llamaindex-port` to link the VM to the firewall rule from the previous section and allow inbound access to port `8000` for the browser-based LlamaIndex RAG application and port `22` for SSH access.
2930
10. Select **Create** to launch the virtual machine.
3031

3132
After the instance starts, select **SSH** next to the VM in the instance list to open a browser-based terminal session.
@@ -38,6 +39,6 @@ A new browser window opens with a terminal connected to your VM.
3839

3940
## What you've accomplished and what's next
4041

41-
You've now provisioned a Google Axion C4A Arm VM and connected to it using SSH.
42+
You've now provisioned a Google Cloud C4A VM and connected to it using SSH.
4243

4344
Next, you'll install LlamaIndex, Ollama, ChromaDB, and the required dependencies on your VM.

content/learning-paths/servers-and-cloud-computing/llamaindex-rag-axion/setup-llamaindex-rag.md

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
---
2-
title: Install and configure LlamaIndex on Google Cloud Axion
2+
title: Install and configure LlamaIndex on a Google Cloud C4A virtual machine
3+
description: Learn how to install Python, Ollama, LlamaIndex, ChromaDB, and FastAPI on an Arm-based Google Cloud C4A virtual machine for a browser-based RAG application.
34
weight: 5
45

56
### FIXED, DO NOT MODIFY
@@ -10,12 +11,7 @@ layout: learningpathall
1011

1112
In this section, you'll prepare a Google Cloud Axion Arm64 VM for running a browser-based RAG application using LlamaIndex.
1213

13-
You'll install:
14-
15-
- required system packages
16-
- Python 3.11
17-
- Ollama
18-
- LlamaIndex and required Python packages
14+
You'll install required system packages, including Python 3.11, as well as Ollama and LLamaIndex.
1915

2016
### Update the virtual machine
2117

@@ -64,7 +60,7 @@ Python 3.11.10
6460
pip 22.3.1 from /usr/lib/python3.11/site-packages/pip (python 3.11)
6561
```
6662

67-
### (Optional) Install Docker
63+
<!-- ### (Optional) Install Docker
6864
6965
For this Learning Path, ChromaDB and Ollama run natively. For extended use, you can install Docker so that you can run containerized workloads alongside the RAG pipeline if needed:
7066
@@ -93,7 +89,7 @@ The output is similar to:
9389
```output
9490
Hello from Docker!
9591
This message shows that your installation appears to be working correctly.
96-
```
92+
``` -->
9793

9894
### Create project directory
9995

@@ -119,7 +115,7 @@ pip install --upgrade pip setuptools wheel
119115

120116
### Install Ollama
121117

122-
Run the following command:
118+
Use the official Linux installer to install Ollama:
123119

124120
```bash
125121
curl -fsSL https://ollama.com/install.sh | sh
@@ -153,7 +149,7 @@ sudo systemctl start ollama
153149

154150
### Pull an LLM model
155151

156-
With Ollama running, pull the `llama3.2:1b` model. This is a lightweight 1-billion parameter model suitable for local inference on a 16 GB VM:
152+
With Ollama running, pull the `llama3.2:1b` model. This is a lightweight 1-billion-parameter model suitable for local inference on a 16 GB VM:
157153

158154
```bash
159155
ollama pull llama3.2:1b
@@ -173,7 +169,7 @@ Retrieval-Augmented Generation (RAG) is a technique that combines a retrieval st
173169

174170
### Install LlamaIndex packages
175171

176-
Install the LlamaIndex core library along with the integrations needed for Ollama, HuggingFace embeddings, and ChromaDB. You'll also install FastAPI and Uvicorn here because the browser-based application you'll build in the next section uses them as the web server:
172+
Install the LlamaIndex core library along with the integrations needed for Ollama, Hugging Face embeddings, and ChromaDB. You'll also install FastAPI and Uvicorn here because the browser-based application you'll build in the next section uses them as the web server:
177173

178174
```bash
179175
pip install llama-index
@@ -188,6 +184,6 @@ pip install uvicorn
188184

189185
## What you've accomplished and what's next
190186

191-
You've now successfully installed and configured LlamaIndex on a Google Cloud Axion Arm64 VM running SUSE Linux with Python 3.11. You optionally installed Docker, configured Ollama for local LLM inference, and prepared the environment for building browser-based RAG applications using LlamaIndex and ChromaDB.
187+
You've now installed and configured LlamaIndex on a Google Cloud C4A Arm64 VM running SUSE Linux with Python 3.11. You configured Ollama for local LLM inference and prepared the environment for building browser-based RAG applications using LlamaIndex and ChromaDB.
192188

193189
Next, you'll build the RAG engine, create the browser UI, and query custom documents using a local large language model.

0 commit comments

Comments
 (0)