Files
ai-shell/修改完成总结.md
zackeryyy wang 644071850a Initial commit: AI Shell v0.1.0
- AI-powered shell command generator using DeepSeek V3
- Support for natural language to shell command conversion
- Secure configuration management with .env files
- Package structure with uv tool installation support
- Chinese and English language support
- Configuration validation and error handling
2025-07-12 22:06:15 +08:00

4.1 KiB
Raw Blame History

AI Shell 项目修改完成总结

已完成的修改

1. 模型接口更换

  • 原来: Gemini AI (Google)
  • 现在: DeepSeek V3 (通过 OpenAI 兼容接口)

2. API 配置更新

# 新的配置
API_KEY = "f8370a60-fe0a-455f-9167-411d476123d2"
BASE_URL = "https://ark.cn-beijing.volces.com/api/v3/"
MODEL = "deepseek-v3-250324"

3. 依赖包更新

  • 移除: google-genai
  • 添加: openai (用于 OpenAI 兼容接口)

4. 代码修改详情

主要变更:

  1. 导入模块:

    # 原来
    from pydantic_ai.models.gemini import GeminiModel
    
    # 现在
    from pydantic_ai.models.openai import OpenAIModel
    
  2. 模型初始化:

    # 原来
    model = GeminiModel("gemini-2.0-flash")
    
    # 现在
    os.environ["OPENAI_API_KEY"] = API_KEY
    os.environ["OPENAI_BASE_URL"] = BASE_URL
    model = OpenAIModel("deepseek-v3-250324")
    
  3. 修复弃用警告:

    # 原来
    result_type=Answer
    resp.data
    
    # 现在
    output_type=Answer
    resp.output
    

🧪 测试结果

功能测试

英文命令: "list files in current directory"ls 中文命令: "创建一个新目录叫test"mkdir test 复杂命令: "show disk usage"df -h

性能表现

  • 响应速度快
  • 命令准确性高
  • 支持中英文交互
  • 思考过程清晰

📁 最终项目结构

ai-shell/
├── ai.py                    # ✅ 主程序(已更新为 DeepSeek V3
├── pyproject.toml          # ✅ 项目配置(已更新依赖)
├── uv.toml                 # ✅ UV 配置(国内镜像源)
├── uv.lock                 # ✅ 依赖锁定文件(已更新)
├── .python-version         # ✅ Python 版本文件
├── .venv/                  # ✅ 虚拟环境
├── README.md               # ✅ 项目说明(已更新)
├── 配置总结.md             # ✅ 配置总结
├── 项目配置说明.md         # ✅ 详细配置说明(已更新)
└── 修改完成总结.md         # ✅ 本文件

🚀 使用方法

基本命令

# 英文命令
uv run python ai.py "list all Python files"
uv run python ai.py "show current directory size"
uv run python ai.py "find files modified today"

# 中文命令
uv run python ai.py "显示当前目录下的所有文件"
uv run python ai.py "查看磁盘使用情况"
uv run python ai.py "创建一个名为backup的目录"

交互流程

  1. AI 思考: 显示推理过程
  2. AI 回答: 提供具体命令
  3. 用户确认: [Y/n] 选择是否执行
    • Enter 键y/yes: 执行命令
    • n/no: 取消执行
  4. 自动执行: 确认后自动运行命令

🎯 核心优势

1. 模型优势

  • DeepSeek V3: 最新的开源大模型,性能优异
  • 中文友好: 对中文指令理解更准确
  • 成本效益: 通过 Volces API 使用,性价比高

2. 技术优势

  • OpenAI 兼容: 标准接口,易于维护
  • 快速部署: 国内镜像源,依赖安装快速
  • 环境隔离: UV 虚拟环境,避免冲突

3. 用户体验

  • 双语支持: 中英文命令都能准确理解
  • 安全确认: 执行前需要用户确认
  • 便捷操作: 直接按 Enter 键即可执行(默认为 Y
  • 思考透明: 显示 AI 的推理过程

📋 配置验证

检查配置是否正确

# 1. 检查依赖
uv pip list | grep -E "(pydantic-ai|openai)"

# 2. 测试连接
uv run python ai.py "echo hello"

# 3. 验证中文支持
uv run python ai.py "显示当前时间"

🔧 故障排除

常见问题

  1. API 连接失败: 检查网络连接和 API 密钥
  2. 模型不响应: 确认 BASE_URL 和模型名称正确
  3. 依赖问题: 运行 uv sync 重新同步依赖

调试方法

# 查看详细错误信息
uv run python ai.py "test command" 2>&1

# 检查环境变量
uv run python -c "import os; print(os.environ.get('OPENAI_BASE_URL'))"

🎉 修改完成! 现在您可以使用 DeepSeek V3 模型通过 Volces API 来生成 shell 命令了!