Multimodal trajectory retrieval for few-shot policy learning.
Repository: OpenAdaptAI/openadapt-retrieval
pip install openadapt[retrieval]
# or
pip install openadapt-retrievalThe retrieval package enables:
- Semantic search over demonstration trajectories
- Few-shot example selection for policy learning
- Multimodal similarity (text + image)
- Demonstration library management
Find similar demonstrations to use as examples when learning agent policies.
Retrieve relevant demonstration trajectories for new tasks.
Search your library of demonstration trajectories.
from openadapt_retrieval import DemoIndex, retrieve_similar
# Build an index over your demonstrations
index = DemoIndex()
index.add_demonstrations(["task-1", "task-2", "task-3"])
# Retrieve similar demonstration trajectories
observation = load_screenshot()
similar = index.search(
query_image=observation,
query_text="click the submit button",
top_k=3
)
for result in similar:
print(f"{result.demonstration_name}: {result.similarity:.2f}")from openadapt_ml import AgentPolicy
from openadapt_retrieval import DemoIndex
# Create policy with retrieval augmentation
index = DemoIndex.load("demo_index.pkl")
policy = AgentPolicy.from_checkpoint(
"model.pt",
retrieval_index=index
)
# Policy uses similar trajectory examples for few-shot learning
observation = load_screenshot()
action = policy.predict(observation, use_retrieval=True)openadapt retrieval index --captures task-1 task-2 task-3openadapt retrieval search --image screenshot.png --text "click submit"openadapt retrieval list| Export | Description |
|---|---|
DemoIndex |
Demonstration trajectory index |
retrieve_similar |
Similarity search |
Embedding |
Vector embedding |
SearchResult |
Search result data |
| Model | Dimensions | Modality |
|---|---|---|
clip-vit-l |
768 | Image + Text |
siglip-so400m |
1152 | Image + Text |
custom |
- | - |
Indexes are stored as pickle files:
indexes/
demo_index.pkl # Main index
embeddings.npy # Vector embeddings
metadata.json # Demonstration metadata
| Index Size | Search Time | Memory |
|---|---|---|
| 100 demos | <10ms | 50MB |
| 1,000 demos | <50ms | 500MB |
| 10,000 demos | <200ms | 5GB |
- openadapt-capture - Collect demonstrations to index
- openadapt-ml - Use retrieval in policy learning