stock-ai-agent/install.sh
2026-02-03 10:08:15 +08:00

150 lines
3.8 KiB
Bash
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
# A股AI分析Agent系统 - 快速安装脚本
echo "================================"
echo "A股AI分析Agent系统 - 安装脚本"
echo "================================"
echo ""
# 检查Python版本
echo "检查Python版本..."
# 尝试找到合适的Python版本
PYTHON_CMD=""
for cmd in python3.11 python3.12 python3.10 python3 python; do
if command -v $cmd &> /dev/null; then
version=$($cmd --version 2>&1 | awk '{print $2}')
major=$(echo $version | cut -d. -f1)
minor=$(echo $version | cut -d. -f2)
if [ "$major" = "3" ] && [ "$minor" -ge "10" ] && [ "$minor" -le "12" ]; then
PYTHON_CMD=$cmd
echo "✓ 找到合适的Python版本: $version ($cmd)"
break
fi
fi
done
if [ -z "$PYTHON_CMD" ]; then
echo "❌ 错误: 未找到合适的Python版本"
echo ""
echo "请安装 Python 3.11 或 3.12"
echo " macOS: brew install python@3.11"
echo " Ubuntu: sudo apt install python3.11"
echo " Windows: 从 python.org 下载安装"
echo ""
exit 1
fi
# 检查是否在项目根目录
if [ ! -f "README.md" ] || [ ! -d "backend" ]; then
echo "❌ 错误: 请在项目根目录运行此脚本"
echo "当前目录: $(pwd)"
exit 1
fi
# 创建虚拟环境
echo ""
echo "创建虚拟环境..."
cd backend
if [ -d "venv" ]; then
echo "⚠ 虚拟环境已存在,将删除并重新创建"
rm -rf venv
fi
$PYTHON_CMD -m venv venv
if [ $? -ne 0 ]; then
echo "❌ 创建虚拟环境失败"
exit 1
fi
echo "✓ 虚拟环境创建成功"
# 激活虚拟环境
echo ""
echo "激活虚拟环境..."
source venv/bin/activate
# 升级pip
echo ""
echo "升级pip..."
pip install --upgrade pip setuptools wheel
# 安装依赖
echo ""
echo "安装依赖包..."
echo "这可能需要几分钟时间..."
echo ""
pip install -r requirements.txt
if [ $? -ne 0 ]; then
echo ""
echo "❌ 依赖安装失败"
echo ""
echo "可能的原因:"
echo "1. Python版本不兼容推荐使用3.11或3.12"
echo "2. 网络问题"
echo "3. 缺少编译工具"
echo ""
echo "解决方案请查看: docs/INSTALL_GUIDE.md"
exit 1
fi
echo ""
echo "✓ 依赖安装成功"
# 检查配置文件
echo ""
echo "检查配置文件..."
cd ..
if [ ! -f ".env" ]; then
echo "⚠ 未找到.env文件从模板创建..."
cp .env.example .env
echo "✓ 已创建.env文件"
echo ""
echo "⚠ 重要: 请编辑.env文件填写以下配置"
echo " - TUSHARE_TOKEN (从 https://tushare.pro/ 获取)"
echo " - ZHIPUAI_API_KEY (从 https://open.bigmodel.cn/ 获取)"
echo ""
else
echo "✓ .env文件已存在"
fi
# 验证安装
echo ""
echo "验证安装..."
cd backend
source venv/bin/activate
python -c "import fastapi; print('✓ FastAPI:', fastapi.__version__)" 2>/dev/null || echo "❌ FastAPI 安装失败"
python -c "import pandas; print('✓ Pandas:', pandas.__version__)" 2>/dev/null || echo "❌ Pandas 安装失败"
python -c "import numpy; print('✓ NumPy:', numpy.__version__)" 2>/dev/null || echo "❌ NumPy 安装失败"
python -c "import tushare; print('✓ Tushare:', tushare.__version__)" 2>/dev/null || echo "❌ Tushare 安装失败"
echo ""
echo "================================"
echo "安装完成!"
echo "================================"
echo ""
echo "下一步:"
echo "1. 编辑 .env 文件填写API密钥"
echo "2. 启动应用:"
echo " cd backend"
echo " source venv/bin/activate"
echo " python -m app.main"
echo ""
echo "3. 访问系统:"
echo " 前端界面: http://localhost:8000"
echo " API文档: http://localhost:8000/docs"
echo ""
echo "如有问题,请查看:"
echo " - 安装指南: docs/INSTALL_GUIDE.md"
echo " - 用户手册: docs/USER_GUIDE.md"
echo ""