#!/usr/bin/env python3 """ 修复MiniGPT4-Video缺失依赖 """ import subprocess import sys def install_package(package): """安装单个包""" try: print(f"📦 正在安装 {package}...") subprocess.check_call([sys.executable, "-m", "pip", "install", package]) print(f"✅ {package} 安装成功") return True except subprocess.CalledProcessError as e: print(f"❌ {package} 安装失败: {e}") return False def main(): """修复缺失依赖""" print("🔧 开始修复MiniGPT4-Video依赖...\n") # 最关键的缺失包 critical_packages = [ "visual_genome", "nltk", "wandb" ] success_count = 0 for package in critical_packages: if install_package(package): success_count += 1 print(f"\n📊 修复结果:") print(f"✅ 成功: {success_count}/{len(critical_packages)}") if success_count == len(critical_packages): print("\n🎉 所有关键依赖修复完成!") print("🚀 现在可以重启应用以加载完整功能") print("💡 运行命令: python run_hf.py") else: print("\n⚠️ 部分依赖修复失败") print("💡 尝试手动安装: pip install -r requirements.txt") return success_count == len(critical_packages) if __name__ == "__main__": success = main() sys.exit(0 if success else 1)