Files
ds_zagres_ai/LOCAL_TESTING_README.md
T
Iyeoluwa Akinrinola 730009ae87 fixed team chats
2025-05-16 18:03:15 +01:00

161 lines
3.7 KiB
Markdown

# Local Testing with Remote Server Resources
This guide explains how to set up local testing that connects to remote server resources for the chatbot project.
## Overview
These scripts allow you to:
1. Test the connection to the remote Ollama server
2. Create SSH tunnels to access remote resources locally
3. Run tests against the remote Ollama models from your local machine
## Setup Instructions
### 1. Initial Setup
Run the setup script to create a virtual environment and install dependencies:
```bash
chmod +x setup_local_test_env.sh
./setup_local_test_env.sh
```
This will:
- Create a Python virtual environment
- Install required dependencies
- Create a `local_test.env` file from the template
### 2. Configure Environment Variables
Edit the `local_test.env` file with your server credentials:
```bash
# Remote server configuration
SERVER_IP=104.225.217.215
SERVER_PORT=22
SERVER_USER=root
SERVER_PASSWORD=your_password_here # Add your actual password
# Ollama configuration
OLLAMA_API_URL=http://104.225.217.215:11434
# OpenWebUI configuration
OPENWEBUI_URL=http://104.225.217.215:8080
OPENWEBUI_API_KEY=your_openwebui_api_key_here
```
### 3. Create SSH Tunnels (Optional)
If you want to access the remote resources through localhost (recommended for security and to avoid firewall issues), create SSH tunnels:
```bash
chmod +x create_ssh_tunnel.sh
./create_ssh_tunnel.sh
```
This will create SSH tunnels for:
- Ollama API (localhost:11434 → remote:11434)
- OpenWebUI (localhost:8080 → remote:8080)
If you use SSH tunnels, update your `local_test.env` file to use localhost URLs:
```bash
# Ollama configuration
OLLAMA_API_URL=http://localhost:11434
# OpenWebUI configuration
OPENWEBUI_URL=http://localhost:8080
```
### 4. Run Tests
Activate the virtual environment and run the test script:
```bash
source venv/bin/activate
python test_remote_ollama.py
```
#### Test Options
You can customize the test with command-line arguments:
```bash
# Test with a specific model
python test_remote_ollama.py --model llama3.3
# Test with a custom prompt
python test_remote_ollama.py --prompt "Explain quantum computing"
# Test with a different Ollama URL
python test_remote_ollama.py --ollama-url http://your-server-ip:11434
# Test with a different timeout
python test_remote_ollama.py --timeout 600
```
### 5. Stop SSH Tunnels
When you're done testing, stop the SSH tunnels:
```bash
chmod +x stop_ssh_tunnels.sh
./stop_ssh_tunnels.sh
```
## Troubleshooting
### Connection Issues
If you can't connect to the remote server:
1. Check if the server is reachable:
```bash
ping 104.225.217.215
```
2. Verify that Ollama is running on the server:
```bash
ssh root@104.225.217.215 "curl http://localhost:11434/api/tags"
```
3. Check if there are firewall rules blocking the connection:
```bash
ssh root@104.225.217.215 "iptables -L"
```
### SSH Tunnel Issues
If the SSH tunnels aren't working:
1. Make sure you have SSH access to the server:
```bash
ssh root@104.225.217.215
```
2. Check if the ports are already in use:
```bash
netstat -tuln | grep 11434
netstat -tuln | grep 8080
```
3. Try creating the tunnels manually:
```bash
ssh -N -L 11434:localhost:11434 root@104.225.217.215
```
## Advanced Usage
### Testing with OpenWebUI's RAG Capabilities
To test document-based question answering using OpenWebUI's knowledge database:
```bash
python test_remote_ollama.py --prompt "What information do you have about our project?" --model llama3.1
```
### Integrating with Your Local Development
You can use these scripts as a foundation for local development that connects to the remote resources. This allows you to develop and test locally while using the remote server's models and data.