[全量] 初始化项目代码、配置、文档及Agent协同harness
This commit is contained in:
99
langchain-chat/restart.sh
Executable file
99
langchain-chat/restart.sh
Executable file
@@ -0,0 +1,99 @@
|
||||
#!/bin/bash
|
||||
|
||||
# 确保使用 bash 运行
|
||||
if [ -z "$BASH_VERSION" ]; then
|
||||
exec bash "$0" "$@"
|
||||
fi
|
||||
|
||||
# 颜色定义
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[1;33m'
|
||||
RED='\033[0;31m'
|
||||
NC='\033[0m' # No Color
|
||||
|
||||
# 打印带颜色的消息
|
||||
print_yellow() { printf "${YELLOW}%s${NC}\n" "$1"; }
|
||||
print_green() { printf "${GREEN}%s${NC}\n" "$1"; }
|
||||
print_red() { printf "${RED}%s${NC}\n" "$1"; }
|
||||
|
||||
print_yellow "=== 停止 7861 和 8501 端口服务 ==="
|
||||
|
||||
for port in 7861 8501; do
|
||||
pids=$(lsof -t -i:"$port" 2>/dev/null)
|
||||
if [ -n "$pids" ]; then
|
||||
print_yellow "正在停止端口 $port 的进程: $pids"
|
||||
kill -9 $pids 2>/dev/null
|
||||
print_green "端口 $port 已停止"
|
||||
else
|
||||
echo "端口 $port 无运行中的服务"
|
||||
fi
|
||||
done
|
||||
|
||||
# 也停止所有 startup.py 进程
|
||||
pids=$(ps aux | grep "[p]ython.*startup.py -a" | awk '{print $2}')
|
||||
if [ -n "$pids" ]; then
|
||||
print_yellow "正在停止 startup.py 进程: $pids"
|
||||
kill -9 $pids 2>/dev/null
|
||||
print_green "startup.py 进程已停止"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
print_yellow "=== 启动服务 ==="
|
||||
|
||||
cd /home/gc/gangyan/langchain-chat
|
||||
|
||||
# 初始化 conda(确保 PATH 中包含 conda 路径)
|
||||
CONDA_INIT="/root/miniconda3/etc/profile.d/conda.sh"
|
||||
if [ -f "$CONDA_INIT" ]; then
|
||||
# 初始化 conda,将 conda 路径添加到 PATH
|
||||
. "$CONDA_INIT" 2>/dev/null || source "$CONDA_INIT" 2>/dev/null
|
||||
fi
|
||||
|
||||
# 查找 conda 可执行文件(按优先级)
|
||||
if command -v conda &> /dev/null; then
|
||||
CONDA_EXE="conda"
|
||||
elif [ -f "/root/miniconda3/bin/conda" ]; then
|
||||
CONDA_EXE="/root/miniconda3/bin/conda"
|
||||
elif [ -f "/root/miniconda3/condabin/conda" ]; then
|
||||
CONDA_EXE="/root/miniconda3/condabin/conda"
|
||||
else
|
||||
print_red "错误: 未找到 conda 命令"
|
||||
print_red "请检查 conda 是否已安装: /root/miniconda3"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 使用 conda 环境启动
|
||||
print_yellow "使用环境: gangyan"
|
||||
print_yellow "日志文件: nohup.out"
|
||||
print_yellow "Conda路径: $CONDA_EXE"
|
||||
|
||||
# 获取 python 的完整路径
|
||||
PYTHON_EXE="/root/miniconda3/envs/gangyan/bin/python"
|
||||
if [ ! -f "$PYTHON_EXE" ]; then
|
||||
# 尝试通过 conda run 获取路径
|
||||
PYTHON_EXE="$($CONDA_EXE run -n gangyan which python 2>/dev/null)"
|
||||
if [ -z "$PYTHON_EXE" ] || [ ! -f "$PYTHON_EXE" ]; then
|
||||
print_red "错误: 无法找到 python 可执行文件"
|
||||
print_red "请检查 conda 环境 gangyan 是否已安装"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
print_yellow "Python路径: $PYTHON_EXE"
|
||||
|
||||
# 直接使用 python 完整路径启动(不依赖 conda activate,更可靠)
|
||||
# 设置 PYTHONPATH 确保能正确导入模块
|
||||
export PYTHONPATH="/home/gc/gangyan/langchain-chat:$PYTHONPATH"
|
||||
cd /home/gc/gangyan/langchain-chat
|
||||
nohup "$PYTHON_EXE" startup.py -a >> nohup.out 2>&1 &
|
||||
PID=$!
|
||||
|
||||
print_green "服务已启动,PID: $PID"
|
||||
print_yellow "日志文件: /home/gc/gangyan/langchain-chat/nohup.out"
|
||||
print_yellow "查看日志: tail -f nohup.out"
|
||||
|
||||
# 等待几秒后显示日志
|
||||
sleep 2
|
||||
echo ""
|
||||
print_yellow "=== 最近日志 ==="
|
||||
tail -20 nohup.out
|
||||
Reference in New Issue
Block a user