Files
PlantAI-dev/start_plantai_9000.sh
T

66 lines
2.4 KiB
Bash
Executable File

#!/bin/bash
# Start the PlantAI-dev web service.
# 用法: bash start_plantai_9000.sh [--port PORT]
# 默认端口: 9000
set -euo pipefail
# 解析命令行参数
PORT="9000"
while [[ $# -gt 0 ]]; do
case "$1" in
--port|-p)
PORT="${2:?错误: --port 需要指定端口号}"
shift 2
;;
*)
echo "未知参数: $1"
echo "用法: bash start_plantai_9000.sh [--port PORT]"
exit 1
;;
esac
done
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
cd "$SCRIPT_DIR"
if [ -f "$SCRIPT_DIR/.env" ]; then
set -a
. "$SCRIPT_DIR/.env"
set +a
fi
CONDA_BASE="${BBAV5_CONDA_BASE:-/home/xia-lab/miniconda3}"
DEFAULT_ENV="${BBAV5_DEFAULT_ENV:-test4py311}"
CONDA_ENV="$CONDA_BASE/envs/$DEFAULT_ENV"
export PATH="$CONDA_ENV/bin:$PATH"
# This is the official 9000 profile. Do not inherit a sandbox profile from
# the caller's shell; GWAS/other sandboxes have dedicated restart scripts.
export BBAV5_PROJECT_ROOT="$SCRIPT_DIR"
export PLANTAI_PROJECT_ROOT="$SCRIPT_DIR"
export BBAV5_PROJECT_ENV_FILE="${BBAV5_PROJECT_ENV_FILE:-$SCRIPT_DIR/.env}"
export BBAV5_LIGHTWEIGHT_EXTENSION_STORE="${BBAV5_LIGHTWEIGHT_EXTENSION_STORE:-$SCRIPT_DIR/.runtime/lightweight-extension/store}"
export BBAV5_LIGHTWEIGHT_INPUT="${BBAV5_LIGHTWEIGHT_INPUT:-$SCRIPT_DIR/input}"
export BBAV5_LIGHTWEIGHT_WORKSPACE="${BBAV5_LIGHTWEIGHT_WORKSPACE:-$SCRIPT_DIR/workspace}"
export BBAV5_QUEUE_PREFIX="${BBAV5_QUEUE_PREFIX:-plantai_4090_9000}"
export BBAV5_REDIS_URL="${BBAV5_REDIS_URL:-redis://localhost:6379/10}"
export PLANTAI_WEB_PORT="$PORT"
export PLANTAI_RESTART_SCRIPT="$SCRIPT_DIR/restart_plantai_9000.sh"
export GENE_FAMILY_MAS_API="${GENE_FAMILY_MAS_API:-${DUAL_KB_QA_BASE_URL:-http://127.0.0.1:7920}}"
export DUAL_KB_QA_BASE_URL="${DUAL_KB_QA_BASE_URL:-$GENE_FAMILY_MAS_API}"
export RAG_API_URL="${RAG_API_URL:-$GENE_FAMILY_MAS_API}"
export DUAL_KB_QA_ROUTE="${DUAL_KB_QA_ROUTE:-qa-v1-1-73}"
export PLANTAI_AGENT_STATE_DB="$SCRIPT_DIR/.runtime/agent-state/agent-state.sqlite3"
PORT="$PLANTAI_WEB_PORT"
echo "Starting PlantAI-dev web service"
echo " URL: http://127.0.0.1:${PORT}"
echo " Project: ${BBAV5_PROJECT_ROOT}"
echo " Queue prefix: ${BBAV5_QUEUE_PREFIX}"
echo " Redis: ${BBAV5_REDIS_URL}"
echo " RAG upstream: ${RAG_API_URL}"
exec "$CONDA_ENV/bin/python" -m uvicorn apps.web.vue3.main:app --host 0.0.0.0 --port "$PORT"