- EmotionEngine: 5状态马尔可夫情绪机 + 蒙特卡洛转移 - VectorMemory: TF-IDF向量记忆 + SQLite持久化 + RAG检索 - AgentBrain: Ollama/OpenAI/Dummy三后端LLM - BehaviorScheduler: 优先级/冷却/活跃度调度 - FastAPI服务器 + WebSocket实时推送 - perception: 键鼠监控 + 屏幕截图 - ui/pet_window: PySide6桌宠窗口 + 像素动画 - assets/pet: 5情绪各2帧像素艺术资源
105 lines
4.2 KiB
Plaintext
105 lines
4.2 KiB
Plaintext
# EzVibe AI 桌宠系统 — 依赖清单
|
||
# 安装: pip install -r requirements.txt
|
||
# Python >= 3.10
|
||
# 推荐: conda create -n ezvibe python=3.12 && conda activate ezvibe
|
||
|
||
# ─────────────────────────────────────────────────────────────────
|
||
# 核心依赖(必须安装)
|
||
# ─────────────────────────────────────────────────────────────────
|
||
|
||
# 数值计算
|
||
numpy>=1.26.0
|
||
|
||
# ── 向量记忆 / 语义检索 ──
|
||
# sklearn 提供 TF-IDF(DummyEmbedder 开发/测试用)
|
||
# 生产环境请替换为真实 embedding 服务(Ollama / OpenAI / HuggingFace)
|
||
scikit-learn>=1.5.0
|
||
|
||
# ── 异步 HTTP 客户端 ──
|
||
# aiohttp: AgentBrain.OllamaBackend 调用本地 LLM 服务
|
||
aiohttp>=3.10.0
|
||
|
||
# ── API 服务 ──
|
||
# FastAPI: HTTP REST + WebSocket 服务端
|
||
# uvicorn[standard]: ASGI 服务器(asyncio 高性能)
|
||
# sse-starlette: Server-Sent Events(可选,备选 WebSocket)
|
||
# starlette: FastAPI 底层框架
|
||
fastapi>=0.115.0
|
||
uvicorn[standard]>=0.30.0
|
||
sse-starlette>=2.1.0
|
||
starlette>=0.40.0
|
||
|
||
# ── 数据验证 ──
|
||
# pydantic: API 请求/响应模型(BaseModel)
|
||
pydantic>=2.9.0
|
||
|
||
# ── 测试 ──
|
||
pytest>=8.3.0
|
||
|
||
|
||
# ─────────────────────────────────────────────────────────────────
|
||
# 可选依赖(按需安装)
|
||
# ─────────────────────────────────────────────────────────────────
|
||
|
||
# ── LLM 后端 ──
|
||
# OpenAI SDK: OpenAIBackend(生产环境推荐)
|
||
# openai>=1.50.0
|
||
|
||
# Ollama: 本地运行 LLM(推荐!免费、私密)
|
||
# 下载: https://ollama.com/download
|
||
# 运行: ollama serve # 启动服务
|
||
# 推荐模型: ollama pull qwen2.5 / ollama pull llama3.2
|
||
# ollama-python>=0.3.0 # 可选,当前使用原生 aiohttp 调用
|
||
|
||
|
||
# ── 大规模向量检索(可选,进阶优化) ──
|
||
# FAISS: Facebook 高性能向量索引(>10k 条记忆时推荐)
|
||
# pip install faiss-cpu # CPU 版本
|
||
# pip install faiss-gpu # GPU 版本(如果有 NVIDIA GPU)
|
||
|
||
# ChromaDB: 独立向量数据库(多用户场景)
|
||
# pip install chromadb
|
||
|
||
|
||
# ── 表现层(UI) ──
|
||
# PyQt6: Qt6 Python 绑定(推荐,正式项目)
|
||
# PySide6: Qt6 Python 绑定(PySide 公司官方,LGPL 许可)
|
||
# 两者 API 基本兼容,二选一安装
|
||
PyQt6>=6.8.0
|
||
# PySide6-Essentials>=6.8.0
|
||
|
||
|
||
# ── 音频(感知层) ──
|
||
# 用于语音输入 / 语音合成(TTS)
|
||
# pip install sounddevice soundfile # 音频录制
|
||
# gtts>=2.5.0 # Google TTS(需要网络)
|
||
# edge-tts>=7.0.0 # 微软 Edge TTS(无需 API key,效果好)
|
||
|
||
|
||
# ─────────────────────────────────────────────────────────────────
|
||
# 开发工具
|
||
# ─────────────────────────────────────────────────────────────────
|
||
|
||
# 类型检查
|
||
mypy>=1.13.0
|
||
|
||
# 代码格式化
|
||
ruff>=0.7.0
|
||
|
||
# 依赖锁定(生产环境推荐)
|
||
# pip-compile # from pip-tools
|
||
|
||
|
||
# ─────────────────────────────────────────────────────────────────
|
||
# 快速安装命令
|
||
# ─────────────────────────────────────────────────────────────────
|
||
|
||
# 最小安装(仅核心功能,不含 UI)
|
||
# pip install numpy scikit-learn aiohttp fastapi 'uvicorn[standard]' pydantic pytest
|
||
|
||
# 完整安装(含 UI)
|
||
# pip install numpy scikit-learn aiohttp fastapi 'uvicorn[standard]' pydantic pytest PyQt6
|
||
|
||
# 仅 API 服务(无本地 LLM)
|
||
# pip install fastapi 'uvicorn[standard]' sse-starlette pydantic numpy
|