Add runtime service links for lab endpoints
This commit is contained in:
@@ -30,7 +30,7 @@ To start this lab, use the embedded terminal below. It connects to the same lab
|
||||
|
||||
If the embedded terminal is unavailable, you can still fall back to:
|
||||
|
||||
- SSH - <IP>:22
|
||||
- SSH - {{service-address:ssh}}
|
||||
- A regular terminal session on the lab host
|
||||
|
||||
## Objective 1: HuggingFace & LLaMa.cpp
|
||||
|
||||
@@ -25,11 +25,11 @@ In this lab, we will:
|
||||
|
||||
To start this lab, one web service has been preconfigured:
|
||||
|
||||
- Open WebUI - http://<IP>:8080
|
||||
- Open WebUI - {{service-url:open-webui}}
|
||||
|
||||
## Objective 1 Execute: Accessing Open WebUI
|
||||
|
||||
Your lab machine has been pre-installed with Open Webui. It is accessible on your provided system IP at port 8080 (http://<IP>:8080). You can log in or register with the following default credentials:
|
||||
Your lab machine has been pre-installed with Open Webui. It is accessible on your provided system URL at {{service-url:open-webui}}. You can log in or register with the following default credentials:
|
||||
|
||||
Username: student@openwebui.com
|
||||
Password: student
|
||||
|
||||
@@ -25,7 +25,7 @@ In this lab, we will:
|
||||
|
||||
To start this lab, one web service has been preconfigured:
|
||||
|
||||
- Open WebUI - http://<IP>:8080
|
||||
- Open WebUI - {{service-url:open-webui}}
|
||||
|
||||
## Objective 1 Execute: Generate an Open WebUI API Key
|
||||
|
||||
@@ -33,7 +33,7 @@ Before we install any harness, we need a key that lets the harness call the same
|
||||
|
||||
### Execute: Sign in to Open WebUI
|
||||
|
||||
1. Navigate to `http://<YOUR STUDENT IP>:8080`.
|
||||
1. Navigate to `{{service-url:open-webui}}`.
|
||||
2. Sign in with the same account you used in Lab 4, or the credentials supplied by your instructor.
|
||||
3. Confirm that you can reach the normal chat screen before continuing.
|
||||
|
||||
@@ -82,7 +82,7 @@ According to the Open WebUI reference docs, API keys are created from **Settings
|
||||
Run a quick authenticated request against the Open WebUI model list endpoint. You should receive JSON back instead of an authentication error.
|
||||
|
||||
```bash
|
||||
curl http://<YOUR STUDENT IP>:8080/api/models \
|
||||
curl {{service-url:open-webui:/api}}/models \
|
||||
-H "Authorization: Bearer YOUR_OPENWEBUI_API_KEY"
|
||||
```
|
||||
|
||||
@@ -160,7 +160,7 @@ droid --version</code></pre>
|
||||
|
||||
For all three harnesses, the common backend values are:
|
||||
|
||||
- `Base URL` - `http://<YOUR STUDENT IP>:8080/api`
|
||||
- `Base URL` - `{{service-url:open-webui:/api}}`
|
||||
- `API Key` - `YOUR_OPENWEBUI_API_KEY`
|
||||
- `Model ID` - Any model ID returned by Open WebUI, such as `qwen3.5:4b`
|
||||
|
||||
@@ -180,7 +180,7 @@ The shared idea is simple: your harness sends requests to Open WebUI's authentic
|
||||
"openwebui": {
|
||||
"name": "Open WebUI",
|
||||
"options": {
|
||||
"baseURL": "http://<YOUR STUDENT IP>:8080/api",
|
||||
"baseURL": "{{service-url:open-webui:/api}}",
|
||||
},
|
||||
"models": {
|
||||
"qwen3.5:4b": {
|
||||
@@ -213,7 +213,7 @@ opencode</code></pre>
|
||||
<p>Kilo Code's documented workflow is provider-driven through the extension settings UI. Use the following values when creating or editing your provider profile.</p>
|
||||
<ul>
|
||||
<li><code>API Provider</code> - <code>OpenAI Compatible</code></li>
|
||||
<li><code>OpenAI Base URL</code> - <code>http://<YOUR STUDENT IP>:8080/api</code></li>
|
||||
<li><code>OpenAI Base URL</code> - <code>{{service-url:open-webui:/api}}</code></li>
|
||||
<li><code>API Key</code> - <code>YOUR_OPENWEBUI_API_KEY</code></li>
|
||||
<li><code>Model ID</code> - <code>qwen3.5:4b</code> or another model exposed by Open WebUI</li>
|
||||
<li><code>Approval Mode</code> - Leave the safer default enabled for your first run</li>
|
||||
@@ -266,7 +266,7 @@ opencode</code></pre>
|
||||
{
|
||||
"model_display_name": "Open WebUI - Qwen 3.5 4B",
|
||||
"model": "qwen3.5:4b",
|
||||
"base_url": "http://<YOUR STUDENT IP>:8080/api",
|
||||
"base_url": "{{service-url:open-webui:/api}}",
|
||||
"api_key": "YOUR_OPENWEBUI_API_KEY",
|
||||
"provider": "generic-chat-completion-api",
|
||||
"max_tokens": 4096
|
||||
|
||||
@@ -24,8 +24,8 @@ In this lab, we will:
|
||||
|
||||
To start this lab, two web services have been preconfigured:
|
||||
|
||||
- ChunkViz - http://<IP>:3000
|
||||
- Embedding Atlas - http://<IP>:5055
|
||||
- ChunkViz - {{service-url:chunkviz}}
|
||||
- Embedding Atlas - {{service-url:embedding-atlas}}
|
||||
|
||||
## Objective 1 Explore: Chunking Strategy
|
||||
|
||||
@@ -33,7 +33,7 @@ Chunking is the first step in any RAG pipeline. It is the process of dividing a
|
||||
|
||||
Successful chunking is highly dependent on the type of document being processed. In production-grade RAG systems, teams often evaluate multiple strategies across different document types, then route content through the processing path that produces the strongest retrieval results. For this lab, we will use a visualization tool to build intuition for those trade-offs.
|
||||
|
||||
In a web browser, navigate to http://<STUDENT ASSIGNED SYSTEM IP>:3000. Once loaded, you should see the ChunkViz homepage.
|
||||
In a web browser, navigate to {{service-url:chunkviz}}. Once loaded, you should see the ChunkViz homepage.
|
||||
|
||||
<figure style="text-align: center;">
|
||||
<a href="https://i.imgur.com/PG6fp1V.png" target="_blank">
|
||||
@@ -115,7 +115,7 @@ Now that we have seen some of the trade-offs involved in chunking, we can move t
|
||||
|
||||
This allows a system to perform similarity search efficiently. When a user submits a query, the query is embedded into the same vector space, and the system retrieves the chunks whose embeddings are closest to it. This differs from how embeddings are used internally by an LLM for attention and transformation, but it is the key step that allows a RAG system to retrieve information based on meaning rather than simple keyword matching.
|
||||
|
||||
Navigate to http://<STUDENT ASSIGNED SYSTEM IP>:5055. Here, we have started a project called Embedding Atlas. Embedding Atlas is a tool that provides interactive visualizations for datasets stored in parquet format. Each chunk in this case is one row in the dataset, allowing us to visualize, cross-filter, and search embeddings and metadata interactively.
|
||||
Navigate to {{service-url:embedding-atlas}}. Here, we have started a project called Embedding Atlas. Embedding Atlas is a tool that provides interactive visualizations for datasets stored in parquet format. Each chunk in this case is one row in the dataset, allowing us to visualize, cross-filter, and search embeddings and metadata interactively.
|
||||
|
||||
<figure style="text-align: center;">
|
||||
<a href="https://i.imgur.com/8PvcZBP.png" target="_blank">
|
||||
|
||||
@@ -24,7 +24,7 @@ In this lab, we will:
|
||||
|
||||
To start this lab, one web service has been preconfigured:
|
||||
|
||||
- Unsloth - http://<IP>:8888
|
||||
- Unsloth - {{service-url:unsloth}}
|
||||
|
||||
You'll need to install Kiln from the following URL - https://github.com/Kiln-AI/Kiln/releases/tag/v0.18.1
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ In this lab, we will:
|
||||
|
||||
To start this lab, one web service has been preconfigured:
|
||||
|
||||
- Promptfoo - http://<IP>:15500
|
||||
- Promptfoo - {{service-url:promptfoo}}
|
||||
|
||||
## Objective 1 Explore: Direct Prompt Injection
|
||||
|
||||
@@ -53,7 +53,7 @@ While manual interaction with a model is often required for a successful jailbre
|
||||
|
||||
### Explore: Promptfoo red-team workflow
|
||||
|
||||
Promptfoo is available on our lab machine at http://<YOUR STUDENT IP>:15500. We can start by creating a new red-team configuration.
|
||||
Promptfoo is available on our lab machine at {{service-url:promptfoo}}. We can start by creating a new red-team configuration.
|
||||
|
||||
<figure style="text-align: center;">
|
||||
<a href="https://i.imgur.com/YyP8mwB.png" target="_blank">
|
||||
|
||||
Reference in New Issue
Block a user