Agente robótico basado en VLM que navega e interactúa con personas según objetivos visuales
Project description
🤖 vlm_robot_agent
Author: Edison Bejarano
Library designed to use VLMs in the context of robotics actions for planning and interactions
Un agente robótico inteligente basado en modelos de lenguaje visual (VLM), que puede percibir el entorno desde una imagen, planificar acciones y decidir entre navegar o interactuar con personas para alcanzar un objetivo dado (como entrar en una habitación, buscar un baño, etc).
🚀 Características
- 📷 Percepción visual usando un VLM de OpenAI
- 🧠 Razonamiento basado en objetivos (macro y micro-goals)
- 🧭 Acciones de navegación:
forward,left,right,forward_left,forward_right
- 🙋 Acciones de interacción:
- Conversar con una persona que bloquea el paso
- Hacer gestos para pedir que se mueva
- 💾 Memoria de interacciones y lectura/ejecución de prompts desde un folder
📦 Instalación
pip install vlm_robot_agent
🛠 Uso básico
from vlm_robot_agent import VLMRobotAgent
agent = VLMRobotAgent(prompt_folder="./prompts")
image = obtener_imagen_de_tu_robot()
goal = "entrar a la oficina 3"
# Loop de ejecución
while True:
action = agent.step(image, goal)
ejecutar_action_en_robot(action)
if objetivo_cumplido():
break
📁 Estructura de prompts
Los prompts se almacenan como archivos .json dentro del folder configurado, y puedes cargarlos con:
prompts = agent.load_prompts()
🧩 Integración con robots
- Puede usarse en sistemas ROS, simuladores como Gazebo, o cualquier entorno de robots.
- El agente necesita:
- Imagen actual del entorno (
image) - Objetivo a cumplir (
goal) - Una función que ejecute la acción devuelta (
Navigate,Interact)
- Imagen actual del entorno (
📚 Ejemplo de acciones
from vlm_robot_agent import Navigate, Interact
# Navegar hacia adelante
Navigate(direction="forward")
# Pedir a una persona que se mueva
Interact(strategy="ask_to_move")
📄 Licencia
MIT
🧠 Futuras mejoras
- Seguimiento de progreso con
StateTracker - Manejo de múltiples agentes o flujos conversacionales
- Soporte para entrada multimodal (texto + imagen)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vlm_robot_agent-0.2.9.tar.gz.
File metadata
- Download URL: vlm_robot_agent-0.2.9.tar.gz
- Upload date:
- Size: 22.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a1451aa3999176beb2a40353254357b57c607b3d96ec8fbdfda47b2eba0da39b
|
|
| MD5 |
04102835e2320f89b087d339002fc38d
|
|
| BLAKE2b-256 |
deaba64c20ea87cc5a357d7fa14e27fd3f9c7ec412af6a70176dbe572dfc3cd0
|
File details
Details for the file vlm_robot_agent-0.2.9-py3-none-any.whl.
File metadata
- Download URL: vlm_robot_agent-0.2.9-py3-none-any.whl
- Upload date:
- Size: 26.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
533cec5ea501158f8af36b192c5da4f1c9f27588c037879b5d7c5112369622de
|
|
| MD5 |
d70fca40b63cce6325eb48dd845cd09c
|
|
| BLAKE2b-256 |
10fb31d0d020397c99bd97d246caadf4faba4403df3d8c7bda74273f6e62bf32
|