| 包名 | 版本 | 用途 |
|---|---|---|
httpx[socks] |
>=0.28.0 | HTTP 客户端,用于调用 Gemini REST API,支持 SOCKS 代理 |
python-dotenv |
>=1.0.0 | 环境变量管理,用于加载 .env 配置文件 |
| 包名 | 版本 | 用途 | 安装建议 |
|---|---|---|---|
docstring-parser |
>=0.15 | 工具文档解析,提供更好的类型提示和描述解析 | 推荐安装 |
google-generativeai |
>=0.8.0 | Google Gemini SDK(不推荐使用) | ❌ 不推荐,使用 HTTP API 代替 |
pip install -r requirements.txt
# 安装核心依赖
pip install httpx[socks]>=0.28.0 python-dotenv>=1.0.0
# 可选:安装 docstring-parser
pip install docstring-parser>=0.15
pip install httpx[socks] python-dotenv
[socks]:支持 SOCKS 代理(很多用户需要代理访问 Google API)httpx,但推荐安装完整版.env 文件加载环境变量配置示例:
# .env
GEMINI_API_KEY=your_api_key_here
如果你要开发或测试框架,还需要:
# 测试框架
pip install pytest pytest-asyncio
# 代码质量
pip install black flake8 mypy
# 文档生成
pip install mkdocs mkdocs-material
运行以下命令检查依赖是否正确安装:
python3 -c "
import httpx
import dotenv
print('✅ 核心依赖安装成功')
try:
import docstring_parser
print('✅ docstring-parser 已安装')
except ImportError:
print('⚠️ docstring-parser 未安装(可选)')
"
解决方案:
pip install 'httpx[socks]'
解决方案:升级 httpx 到最新版本
pip install --upgrade httpx
如果你使用代理,在 .env 中配置:
HTTP_PROXY=socks5://127.0.0.1:7890
HTTPS_PROXY=socks5://127.0.0.1:7890
或者在代码中设置:
import httpx
client = httpx.AsyncClient(
proxies={
"http://": "socks5://127.0.0.1:7890",
"https://": "socks5://127.0.0.1:7890"
}
)
如果你修改了依赖,可以重新生成:
# 导出当前环境所有包(不推荐)
pip freeze > requirements-full.txt
# 手动维护 requirements.txt(推荐)
# 只包含项目直接依赖,不包括子依赖
# 更新所有依赖到最新版本
pip install --upgrade -r requirements.txt
# 更新特定包
pip install --upgrade httpx
本框架遵循最小化依赖原则:
agent/
├── httpx (必需)
│ ├── httpcore
│ ├── certifi
│ ├── idna
│ └── socksio (SOCKS 代理支持)
│
├── python-dotenv (必需)
│
└── docstring-parser (可选)
生产环境推荐固定版本:
# requirements-prod.txt
httpx[socks]==0.28.1
python-dotenv==1.2.1
docstring-parser==0.16
使用:
pip install -r requirements-prod.txt