Learn-AI / setup_env.py
fffffwl's picture
init
d8229c6
#!/usr/bin/env python3
"""
Environment setup script for OpenAI API configuration
"""
import os
import sys
def check_openai_config():
"""Check current OpenAI configuration"""
print("🔍 检查当前OpenAI配置")
print("-" * 40)
api_key = os.getenv("OPENAI_API_KEY")
base_url = os.getenv("OPENAI_BASE_URL", "https://api.openai.com/v1")
model = os.getenv("OPENAI_MODEL", "gpt-4o-mini")
print(f"🔑 OPENAI_API_KEY: {'✅ 已设置' if api_key else '❌ 未设置'}")
print(f"🌐 OPENAI_BASE_URL: {base_url}")
print(f"🤖 OPENAI_MODEL: {model}")
if api_key:
# 隐藏API key的大部分内容,只显示前4位和后4位
masked_key = f"{api_key[:4]}...{api_key[-4:]}" if len(api_key) > 8 else "***"
print(f" (API Key: {masked_key})")
return True
else:
return False
def show_setup_guide():
"""显示设置指南"""
print("\n🚀 OpenAI API 设置指南")
print("=" * 50)
print("1. 获取OpenAI API Key:")
print(" • 访问: https://platform.openai.com/api-keys")
print(" • 登录或注册OpenAI账户")
print(" • 点击 'Create new secret key'")
print(" • 复制生成的API key")
print("\n2. 设置环境变量:")
if sys.platform.startswith('win'):
print(" Windows (Command Prompt):")
print(" set OPENAI_API_KEY=your_api_key_here")
print(" Windows (PowerShell):")
print(" $env:OPENAI_API_KEY=\"your_api_key_here\"")
else:
print(" macOS/Linux:")
print(" export OPENAI_API_KEY=your_api_key_here")
print("\n3. 可选配置:")
print(" • 自定义API基础URL (如果使用代理或其他OpenAI兼容服务):")
if sys.platform.startswith('win'):
print(" set OPENAI_BASE_URL=https://your-proxy.com/v1")
else:
print(" export OPENAI_BASE_URL=https://your-proxy.com/v1")
print(" • 自定义模型 (默认: gpt-4o-mini):")
if sys.platform.startswith('win'):
print(" set OPENAI_MODEL=gpt-3.5-turbo")
else:
print(" export OPENAI_MODEL=gpt-3.5-turbo")
print("\n4. 重启应用:")
print(" python app.py")
def show_cost_info():
"""显示费用信息"""
print("\n💰 OpenAI API 费用说明")
print("=" * 30)
print("• gpt-4o-mini (推荐):")
print(" - 输入: $0.15/1M tokens")
print(" - 输出: $0.60/1M tokens")
print("• gpt-3.5-turbo:")
print(" - 输入: $0.50/1M tokens")
print(" - 输出: $1.50/1M tokens")
print("• gpt-4:")
print(" - 输入: $30.00/1M tokens")
print(" - 输出: $60.00/1M tokens")
print("\n📊 预估使用量:")
print("• 每次challenge评分查询: ~100-200 tokens")
print("• 每次计划生成: ~200-300 tokens")
print("• 预计每1000次查询成本: $0.02-0.10 (使用gpt-4o-mini)")
def show_troubleshooting():
"""显示故障排除指南"""
print("\n🔧 故障排除")
print("=" * 20)
print("如果遇到问题:")
print("1. 确认API key正确设置且有效")
print("2. 检查网络连接")
print("3. 确认OpenAI账户有足够余额")
print("4. 如果使用代理,确认OPENAI_BASE_URL正确")
print("5. 查看应用日志中的详细错误信息")
def create_env_file():
"""创建.env文件示例"""
env_content = """# OpenAI API Configuration
# 在此处设置您的OpenAI API Key
OPENAI_API_KEY=your_api_key_here
# 可选: 自定义API基础URL (用于代理或其他兼容服务)
# OPENAI_BASE_URL=https://api.openai.com/v1
# 可选: 自定义模型 (默认: gpt-4o-mini)
# OPENAI_MODEL=gpt-4o-mini
"""
try:
with open('.env.example', 'w', encoding='utf-8') as f:
f.write(env_content)
print("✅ 已创建 .env.example 文件")
print(" 请复制为 .env 并填入您的API key")
except Exception as e:
print(f"❌ 创建 .env.example 失败: {e}")
def main():
print("🤖 AI Agent - OpenAI API 配置助手")
print("=" * 50)
# 检查当前配置
has_api_key = check_openai_config()
if has_api_key:
print("\n✅ OpenAI API 已配置完成!")
print("您可以直接运行应用: python app.py")
else:
print("\n❌ OpenAI API 未配置")
show_setup_guide()
# 显示费用信息
show_cost_info()
# 创建环境文件示例
print("\n📝 创建配置文件示例")
print("-" * 30)
create_env_file()
# 显示故障排除
show_troubleshooting()
print("\n" + "=" * 50)
print("配置完成后,请运行: python app.py")
print("=" * 50)
if __name__ == "__main__":
main()