Skip to content

Desarrollo Local

Configura Potato para desarrollo y pruebas locales.

Desarrollo Local

Pon Potato en funcionamiento en tu máquina local para desarrollo y pruebas.

Requisitos Previos

  • Python 3.7 o superior
  • Gestor de paquetes pip
  • Git (opcional, para clonar ejemplos)

Instalación

Usando pip (Recomendado)

bash
pip install potato-annotation

Desde el Código Fuente

bash
git clone https://github.com/davidjurgens/potato.git
cd potato
pip install -e .

Con Dependencias Opcionales

bash
# For audio annotation support
pip install potato-annotation[audio]
 
# For all optional features
pip install potato-annotation[all]

Inicio Rápido

1. Crear un Archivo de Configuración

Crea config.yaml:

yaml
task_name: "My First Annotation Task"
 
server:
  port: 8000
 
data_files:
  - path: data.json
    text_field: text
 
annotation_schemes:
  - annotation_type: radio
    name: sentiment
    description: "What is the sentiment?"
    labels:
      - Positive
      - Negative
      - Neutral
 
output:
  path: annotations/

2. Preparar Datos de Ejemplo

Crea data.json:

json
[
  {"id": "1", "text": "I love this product!"},
  {"id": "2", "text": "This is terrible."},
  {"id": "3", "text": "It's okay, nothing special."}
]

3. Iniciar el Servidor

bash
potato start config.yaml

4. Acceder a la Interfaz

Abre tu navegador en http://localhost:8000

Modo de Desarrollo

Recarga en Caliente

Habilita el reinicio automático cuando cambia la configuración:

bash
potato start config.yaml --reload

Modo de Depuración

Habilita el registro detallado:

bash
potato start config.yaml --debug

Salida Detallada

Ve toda la actividad del servidor:

bash
potato start config.yaml --verbose

Estructura de Directorios

Disposición recomendada del proyecto:

text
my-annotation-project/
├── config.yaml           # Main configuration
├── data/
│   ├── train.json        # Training data
│   └── main.json         # Annotation data
├── annotations/          # Output directory
├── templates/            # Custom HTML templates
└── static/               # Custom CSS/JS

Probando tu Configuración

Validar la Configuración

Verifica errores de sintaxis:

bash
potato validate config.yaml

Modo de Vista Previa

Inicia sin guardar anotaciones:

bash
potato start config.yaml --preview

Probar con Datos de Ejemplo

Genera datos de prueba:

bash
potato generate-data --count 10 --output test_data.json

Problemas Comunes

Puerto ya en Uso

bash
# Use a different port
potato start config.yaml --port 8080
 
# Or in config.yaml
server:
  port: 8080

Archivo de Datos no Encontrado

Asegúrate de que las rutas sean relativas a la ubicación del archivo de configuración:

yaml
# If data is in subdirectory
data_files:
  - path: data/main.json
 
# Or use absolute path
data_files:
  - path: /full/path/to/data.json

Permiso Denegado

Verifica los permisos de archivo:

bash
chmod 755 annotations/
chmod 644 data/*.json

Múltiples Usuarios Localmente

Para probar escenarios con múltiples usuarios:

yaml
allow_all_users: true
url_user_id_param: user_id

Accede con diferentes usuarios:

  • http://localhost:8000/?user_id=annotator1
  • http://localhost:8000/?user_id=annotator2

Restablecer Anotaciones

Elimina todas las anotaciones y comienza de nuevo:

bash
# Remove annotation files
rm -rf annotations/*
 
# Restart server
potato start config.yaml

Variables de Entorno

Configura mediante variables de entorno:

bash
export POTATO_PORT=8000
export POTATO_DEBUG=true
export POTATO_DATA_PATH=/path/to/data
 
potato start config.yaml

Uso con Entornos Virtuales

venv

bash
python -m venv potato-env
source potato-env/bin/activate  # Linux/Mac
potato-env\Scripts\activate     # Windows
pip install potato-annotation

Conda

bash
conda create -n potato python=3.10
conda activate potato
pip install potato-annotation

Integración con IDE

VS Code

Instala la extensión YAML para soporte de archivos de configuración:

json
// settings.json
{
  "yaml.schemas": {
    "https://potato-annotation.com/schema.json": "config.yaml"
  }
}

PyCharm

Configura una configuración de ejecución:

  1. Agregar → Python
  2. Script: potato
  3. Parámetros: start config.yaml
  4. Directorio de trabajo: la ruta de tu proyecto

Próximos Pasos