python调用openai实现中大型项目源码按照待办事项一步一步完成开发测试代码
代码语言:python
所属分类:其他
代码描述:python调用openai实现中大型项目源码按照待办事项一步一步完成开发测试代码,根据需求先生成sql,然后后端api编码开发,然后使用html5调用api接口交互开发,最后美化html前端ui,最后再查查前后端代码是否有问题,有问题继续修改,经过这几个步骤,一个完整的中大型项目源码就生成了。
代码标签: python 调用 openai 中大型 项目 源码 按照 待办 事项 一步 完成 开发 测试 代
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
#!/usr/local/python3/bin/python3
# -*- coding: utf-8 -*
#!/usr/local/python3/bin/python3
# -*- coding: utf-8 -*
import openai
import os
import json
import re
import sys
import subprocess
from pathlib import Path
from typing import List, Dict
from datetime import datetime
import shutil
# 导入并初始化 colorama
try:
import colorama
from colorama import Fore, Style, init
init(autoreset=True) # 关键:让每次print后自动重置颜色
except ImportError:
print("错误: 请先安装 colorama 库 (pip install colorama)", file=sys.stderr)
sys.exit(1)
# --- 颜色定义类 ---
class C:
"""集中管理颜色代码,方便统一修改风格"""
PROMPT = Fore.CYAN + Style.BRIGHT
INFO = Fore.GREEN
AI_DECISION = Fore.YELLOW
ACTION = Fore.BLUE + Style.BRIGHT
SUCCESS = Fore.GREEN + Style.BRIGHT
WARN = Fore.YELLOW + Style.BRIGHT
ERROR = Fore.RED + Style.BRIGHT
AI_OUTPUT = Fore.WHITE + Style.BRIGHT
CMD = Fore.YELLOW
DESC = Fore.CYAN
TODO = Fore.MAGENTA
RESET = Style.RESET_ALL
# --- OpenAI API 配置 ---
try:
# 请将 "" 替换为您的真实 OpenAI API 密钥
# 最佳实践是使用环境变量 os.environ.get("OPENAI_API_KEY")
openai_client = openai.OpenAI(
api_key="YOUR_OPENAI_API_KEY", # <-- 在此处填入你的 OpenAI API Key
)
# 测试连接
openai_client.models.list()
print(C.SUCCESS + "OpenAI 客户端初始化成功。")
except openai.AuthenticationError:
print(C.ERROR + "OpenAI 客户端初始化失败: API密钥无效或已过期。请检查您的密钥。", file=sys.stderr)
sys.exit(1)
except Exception as e:
print(C.ERROR + f"OpenAI 客户端初始化失败: {e}", file=sys.stderr)
sys.exit(1)
class CodeAssistant:
def __init__(self, project_dir: str):
"""初始化代码助手"""
self.project_dir = Path(project_dir).resolve()
self.project_dir.mkdir(parents=True, exist_ok=True)
self.versions_dir = self.project_dir / ".versions"
self.versions_dir.mkdir(exist_ok=True)
self.custom_prompt = ""
self._load_custom_prompt()
# 为不同任务选择不同模型 (已更新为 OpenAI 模型)
self.planning_model = 'gpt-5'
self.generation_model = 'gpt-5'
# 待办事项列表和当前任务索引
self.todo_list: List[Dict[str, str]] = []
self.current_task_index: int = -1
def _load_custom_prompt(self):
"""加载项目根目录下的 ai.rule 自定义提示词"""
rule_file = self.project_dir / "ai.rule"
self.custom_prompt = ""
if r.........完整代码请登录后点击上方下载按钮下载查看















网友评论0