Dhruv-sehra/codeoptima

GitHub: Dhruv-sehra/codeoptima

CodeOptima 是一个结合 AST 静态分析与 AI 大模型的 Python 代码质量分析、评分及智能重构平台。

Stars: 0 | Forks: 0

CodeOptima Banner

🚀 CodeOptima

基于 AI 的 Python 代码分析与智能重构平台

## 🌟 概述 **CodeOptima** 是一个基于 AI 的 Python 代码质量分析平台,它将传统的静态分析与现代基于 LLM 的代码优化相结合。 该应用程序使用抽象语法树(AST)分析 Python 代码,检测安全漏洞,评估代码复杂度,强制执行最佳实践,计算总体质量得分,并使用 **Groq 的 Llama-3.3-70B-Versatile** 模型提供基于规则的修复和 AI 辅助重构。 无论您是在学习 Python、审查代码,还是在提升生产环境代码的质量,CodeOptima 都能通过并排对比和详细说明提供具有可操作性的见解。 ## 🚀 亮点 - 🧠 使用 **Groq Llama-3.3-70B-Versatile** 进行 AI 驱动的重构 - 🔍 基于 AST 的静态代码分析 - 📊 加权代码质量评分(安全性、性能、最佳实践、复杂度) - 🛡️ 安全与性能问题检测 - 📂 粘贴代码或上传 Python 文件 - ⚖️ 原始代码与优化后代码的并排对比 - 💾 下载优化后的 Python 代码 # ✨ 功能特性
### 🧠 AI 驱动的重构 - 由 **Groq Llama-3.3-70B-Versatile** 提供支持 - 生成优化的 Python 代码 - 解释每一项改进 - 代码并排对比 ### 🔍 静态代码分析 - 基于 AST 的检查 - 语法验证 - 风格分析 - 最佳实践检测
### 📊 代码质量评分 - 加权评分系统 - 字母等级(A–F) - 复杂度分类 - 问题摘要仪表板 ### ⚡ 性能分析 - 嵌套循环检测 - 复杂度评估 - 优化建议 - 重构建议
### 🛡 安全检查 - 检测不安全的编码模式 - 突出显示有风险的构造 - 建议安全的替代方案 ### 📂 灵活的输入方式 - 粘贴 Python 代码 - 上传 `.py` 文件 - 支持最多 500 行的文件 - 下载改进后的 Python 代码
# 📸 应用预览 ## 🏠 主界面

## 📂 上传 Python 文件

## 📊 代码质量仪表板

## ⚡ 基于规则的优化

## 🤖 AI 驱动的重构

## 📝 AI 重构详情

B[Syntax Validation] B --> C[AST Parsing] C --> D[Static Analysis] D --> E[Complexity Analysis] E --> F[Issue Classification] F --> G[Quality Score] G --> H{Choose Optimization} H -->|Rule-Based| I[Auto Fix] H -->|AI| J[Groq Llama 3.3 70B] I --> K[Improved Code] J --> K K --> L[Download Python File] ``` # 🚀 快速开始 ## 前置条件 在运行 CodeOptima 之前,请确保您具备: - Python **3.11+** - Git - 一个 **Groq API Key** ## 克隆仓库 ``` git clone https://github.com/Dhruv-sehra/codeoptima.git cd codeoptima ``` ## 创建虚拟环境 ### Windows ``` python -m venv venv venv\Scripts\activate ``` ### macOS / Linux ``` python3 -m venv venv source venv/bin/activate ``` ## 安装依赖 ``` pip install -r requirements.txt ``` ## 配置环境变量 在项目根目录下创建一个 `.env` 文件。 ``` GROQ_API_KEY=your_api_key_here ``` ## 启动应用 ``` streamlit run app.py ``` 应用程序将自动在您的浏览器中打开。 ``` http://localhost:8501 ``` # 💻 如何使用 ### 1️⃣ 提供 Python 代码 选择以下方式之一: * 粘贴 Python 代码 * 上传 `.py` 文件 ### 2️⃣ 运行分析 点击 ``` Run Full Analysis Pipeline ``` CodeOptima 将执行: * ✅ 语法验证 * ✅ AST 解析 * ✅ 静态分析 * ✅ 复杂度分析 * ✅ 安全检查 * ✅ 代码质量评分 * ✅ 问题分类 ### 3️⃣ 选择优化模式 您可以在以下模式之间进行选择: ### 基于规则的优化 使用确定性规则来提高代码质量。 ### AI 重构 使用 **Groq Llama-3.3-70B-Versatile** 智能重构代码,同时解释每一项改进。 ### 4️⃣ 查看结果 查看: * 总体代码质量得分 * 评级 * 复杂度级别 * 问题表格 * 并排对比 * AI 改进摘要 ### 5️⃣ 导出 将优化后的 Python 代码下载为 `.py` 文件。 # 🛠️ 技术栈 | 类别 | 技术 | |----------|--------------| | **语言** | Python 3.11 | | **前端** | Streamlit | | **静态分析** | Python AST | | **AI 模型** | Groq Llama-3.3-70B-Versatile | | **数据处理** | Pandas | | **代码转换** | astunparse | | **配置管理** | python-dotenv | | **版本控制** | Git & GitHub | # 📊 代码质量评分 CodeOptima 使用加权评分系统评估 Python 代码,该系统旨在平衡可维护性、安全性和性能。 | 类别 | 权重 | |----------|-------:| | 🛡️ 安全性 | **30%** | | 📖 最佳实践 | **25%** | | ⚡ 性能 | **20%** | | 🔍 复杂度 | **25%** | 最终得分将转换为字母评级,以便快速评估。 | 得分 | 评级 | |-------:|:-----:| | 90–100 | ⭐ A | | 80–89 | 🟢 B | | 70–79 | 🟡 C | | 60–69 | 🟠 D | | 低于 60 | 🔴 F | # 🛣️ 路线图 ### ✅ 已完成 - [x] Python AST 解析 - [x] 静态代码分析 - [x] 复杂度分析 - [x] 安全检测 - [x] 代码质量评分卡 - [x] 基于规则的重构 - [x] 使用 Groq 进行 AI 重构 - [x] 上传 Python 文件 - [x] 下载优化后的 Python 代码 - [x] 代码并排对比 ### 🚧 计划中 - [ ] 多文件项目分析 - [ ] GitHub 仓库分析 - [ ] 导出 PDF 报告 - [ ] 导出 HTML 报告 - [ ] 导出 JSON 报告 - [ ] Docker 支持 - [ ] REST API - [ ] VS Code 插件 - [ ] 多 LLM 支持(OpenAI、Gemini、Claude) # 🤝 贡献 欢迎提交贡献、建议和 Bug 报告。 如果您想改进 CodeOptima: 1. Fork 该仓库。 2. 创建一个新的功能分支。 3. 提交您的更改。 4. 提交一个 Pull Request。 如果您计划进行重大功能或架构更改,请先提一个 Issue。 # 📜 许可证 该项目基于 **MIT 许可证** 授权。 有关更多详细信息,请参阅 `LICENSE` 文件。 # 👨‍💻 作者 **Dhruv Sehra** AI/ML 工程师 | Python 开发者 | 智能软件系统 - GitHub: https://github.com/Dhruv-sehra - LinkedIn: https://www.linkedin.com/in/dhruvsehra 如果您觉得这个项目有用,欢迎在 GitHub 上给它点个 ⭐。
标签:AI代码重构, DLL 劫持, Kubernetes, Python, Streamlit, 云安全监控, 代码分析, 凭证管理, 大语言模型, 无后门, 访问控制, 逆向工具, 静态分析