summaryrefslogtreecommitdiff
path: root/collaborativeagents
diff options
context:
space:
mode:
Diffstat (limited to 'collaborativeagents')
-rw-r--r--collaborativeagents/adapters/personalized_llm_adapter.py34
-rwxr-xr-xcollaborativeagents/scripts/queue_ablation_zshort.sh47
-rw-r--r--collaborativeagents/scripts/run_experiments.py2
3 files changed, 83 insertions, 0 deletions
diff --git a/collaborativeagents/adapters/personalized_llm_adapter.py b/collaborativeagents/adapters/personalized_llm_adapter.py
index 488b241..4189f31 100644
--- a/collaborativeagents/adapters/personalized_llm_adapter.py
+++ b/collaborativeagents/adapters/personalized_llm_adapter.py
@@ -672,6 +672,40 @@ def create_baseline_adapter(
"extractor": "cuda:2",
},
),
+ # Ablation: RAG + Vector without z_short (only z_long, no within-session adaptation)
+ "rag_vector_no_short": AdapterConfig(
+ mode="full",
+ enable_preference_extraction=True,
+ enable_rl_updates=True,
+ use_user_vector=True,
+ llm_name=llm_name,
+ use_shared_models=use_shared_models,
+ enable_query_transform=True,
+ enable_global_preferences=True,
+ eta_short=0.0, # Disable z_short learning
+ device_assignment={
+ "embed": "cuda:2",
+ "reranker": "cuda:3",
+ "extractor": "cuda:2",
+ },
+ ),
+ # Ablation: RAG + Vector without z_long (only z_short, no cross-session learning)
+ "rag_vector_no_long": AdapterConfig(
+ mode="full",
+ enable_preference_extraction=True,
+ enable_rl_updates=True,
+ use_user_vector=True,
+ llm_name=llm_name,
+ use_shared_models=use_shared_models,
+ enable_query_transform=True,
+ enable_global_preferences=True,
+ eta_long=0.0, # Disable z_long learning
+ device_assignment={
+ "embed": "cuda:2",
+ "reranker": "cuda:3",
+ "extractor": "cuda:2",
+ },
+ ),
# Baseline 7a: RAG + Vector + Preference Rewrite (combines best of both)
"rag_rewrite_vector": AdapterConfig(
mode="full",
diff --git a/collaborativeagents/scripts/queue_ablation_zshort.sh b/collaborativeagents/scripts/queue_ablation_zshort.sh
new file mode 100755
index 0000000..b4879c7
--- /dev/null
+++ b/collaborativeagents/scripts/queue_ablation_zshort.sh
@@ -0,0 +1,47 @@
+#!/bin/bash
+# Ablation experiment: z_short necessity
+# Run rag_vector_no_short (z_long only) and rag_vector_no_long (z_short only)
+# Same setup as 60s main experiment for direct comparison
+
+echo "Starting z_short ablation experiments..."
+echo "$(date '+%Y-%m-%d %H:%M:%S')"
+
+# First: run rag_vector_no_short (only z_long, no within-session adaptation)
+echo "Starting rag_vector_no_short..."
+python collaborativeagents/scripts/run_experiments.py \
+ --methods rag_vector_no_short \
+ --datasets math-hard,math-500,bigcodebench \
+ --n-profiles 60 \
+ --n-sessions 60 \
+ --max-turns 10 \
+ --use-vllm \
+ --vllm-agent-url http://localhost:8003/v1 \
+ --vllm-user-url http://localhost:8004/v1 \
+ --use-batch-processing \
+ --batch-size 4 \
+ --parallel-profiles 20 \
+ --profile-path collaborativeagents/data/complex_profiles_v2/profiles_200.jsonl \
+ --output-dir collaborativeagents/results/ablation_no_short_60s \
+ 2>&1 | tee collaborativeagents/results/ablation_no_short_60s.log
+
+echo "rag_vector_no_short completed at $(date '+%Y-%m-%d %H:%M:%S')"
+
+# Then: run rag_vector_no_long (only z_short, no cross-session learning)
+echo "Starting rag_vector_no_long..."
+python collaborativeagents/scripts/run_experiments.py \
+ --methods rag_vector_no_long \
+ --datasets math-hard,math-500,bigcodebench \
+ --n-profiles 60 \
+ --n-sessions 60 \
+ --max-turns 10 \
+ --use-vllm \
+ --vllm-agent-url http://localhost:8003/v1 \
+ --vllm-user-url http://localhost:8004/v1 \
+ --use-batch-processing \
+ --batch-size 4 \
+ --parallel-profiles 20 \
+ --profile-path collaborativeagents/data/complex_profiles_v2/profiles_200.jsonl \
+ --output-dir collaborativeagents/results/ablation_no_long_60s \
+ 2>&1 | tee collaborativeagents/results/ablation_no_long_60s.log
+
+echo "Both ablation experiments completed at $(date '+%Y-%m-%d %H:%M:%S')"
diff --git a/collaborativeagents/scripts/run_experiments.py b/collaborativeagents/scripts/run_experiments.py
index da3549b..806b959 100644
--- a/collaborativeagents/scripts/run_experiments.py
+++ b/collaborativeagents/scripts/run_experiments.py
@@ -118,6 +118,8 @@ AVAILABLE_METHODS = {
"rag_rewrite": "Extractor + RAG with LLM preference rewrite/merge",
"rag_rewrite_vector": "Extractor + RAG + user vector + LLM preference rewrite",
"rag_vector": "Extractor + RAG + user vector (proposed method)",
+ "rag_vector_no_short": "Ablation: RAG + user vector without z_short (long-term only)",
+ "rag_vector_no_long": "Ablation: RAG + user vector without z_long (short-term only)",
"rag_vector_fast": "Extractor + RAG + user vector with 10x learning rate",
"rag_vector_consolidate": "Extractor + RAG + user vector with session-level preference consolidation",
"rag_vector_balanced": "Extractor + RAG + user vector with balanced rewards (10x LR + positive signal for good turns)",