File size: 2,764 Bytes
dbc3350 50c3ed9 dbc3350 50c3ed9 dbc3350 50c3ed9 dbc3350 50c3ed9 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 |
#!/bin/bash
set -e
# Вывод информации о запуске
echo "===== Starting TEN-Agent on HuggingFace Space ====="
echo "$(date)"
echo "Current directory: $(pwd)"
# Проверяем наличие .env файла
if [ -f .env ]; then
echo "✅ .env file found"
cat .env | grep -v "KEY\|CERTIFICATE" | sed 's/=.*/=***/'
else
echo "❌ Error: .env file not found"
exit 1
fi
# Проверяем установку task
if command -v task &> /dev/null; then
echo "✅ task command is available"
task --version
else
echo "❌ Error: task command not found"
exit 1
fi
# Проверяем права доступа и структуру директорий
echo "===== Checking directory permissions ====="
mkdir -p /app/agents
mkdir -p /tmp/ten_agent
chmod -R 777 /app/agents
chmod -R 777 /app
chmod -R 777 /tmp/ten_agent
echo "Directory permissions:"
ls -la /app/agents
ls -la /app
ls -la /tmp/ten_agent
# Проверяем наличие директории examples
if [ -d "/app/agents/examples" ]; then
echo "✅ Examples directory found"
ls -la /app/agents/examples
else
echo "❌ Error: Examples directory not found"
# Создаем базовую структуру
mkdir -p /app/agents/examples/default
echo "Created directory structure"
fi
# Запускаем сборку агента с официальной командой
echo "===== Building TEN-Agent ====="
if task use; then
echo "✅ task use успешно выполнена"
# Обновляем порт для HuggingFace Space (HF использует порт 7860)
echo "===== Setting up port for HuggingFace Space ====="
export PORT=7860
# Отключаем запрос на использование камеры для HuggingFace Space
export NEXT_PUBLIC_DISABLE_CAMERA=true
# Запускаем TEN-Agent с официальной командой
echo "===== Starting TEN-Agent server ====="
exec task run
else
echo "⚠️ Warning: task use failed, trying alternative method..."
# Альтернативный метод настройки агента без использования символических ссылок
mkdir -p /app/agents/examples/default
cp -r /app/agents/examples/default/* /app/agents/ 2>/dev/null || true
echo "Manual setup completed, trying to run task run..."
if task run; then
echo "✅ task run успешно выполнена"
exit 0
else
echo "⚠️ Warning: все методы запуска через task не удались, запускаем fallback..."
chmod +x /app/fallback.py
exec python3 /app/fallback.py
fi
fi |