File size: 4,768 Bytes
d8229c6 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 |
#!/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()
|