Drop perception. Update docs.#1888
Conversation
| "langchain-text-splitters>=1,<2", | ||
| "langchain-huggingface>=1,<2", | ||
| "langchain-ollama>=1,<2", | ||
| "bitsandbytes>=0.48.2,<1.0; sys_platform == 'linux'", |
There was a problem hiding this comment.
bitsandbytes is needed by langchain-ollama or langchain-huggingface. I don't remember which one, but I added it intentionally (should have left a comment at the time).
Greptile SummaryThis PR removes
Confidence Score: 3/5The core goal — dropping perception from base — is correctly implemented in pyproject.toml, but the install still brings in torch through openai-whisper in agents, and the docs introduce a whisper extra that does not exist in pyproject.toml. The pyproject.toml change is minimal and correct in isolation: perception is removed from base and bitsandbytes is cleaned up. However, several mismatches between the new docs and the actual package definitions (openai-whisper vs faster-whisper in agents, a documented whisper extra with no matching pyproject.toml entry) were already flagged on this PR and remain unresolved, meaning users following the updated documentation will encounter broken installs or unexpected torch dependencies. pyproject.toml (agents extra still references openai-whisper) and docs/requirements.md (whisper extra row and faster-whisper description do not match the code). Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
core["**core** (bare install)\ntransport, CLI, blueprints, occupancy maps"]
agents["**agents**\nlangchain, openai, openai-whisper, anthropic"]
web["**web**\nfastapi, uvicorn, ffmpeg-python"]
viz["**visualization**\nrerun-sdk, dimos-viewer"]
perception["**perception** (opt-in, GPU)\nultralytics, transformers, moondream"]
sim["**sim** (opt-in)\nmujoco, playground, pygame"]
unitree["**unitree**\nunitree-webrtc-connect"]
base["**base** = agents + web + viz"]
core --> agents
core --> web
core --> viz
core --> perception
core --> sim
agents --> base
web --> base
viz --> base
base --> unitree
style perception fill:#f96,stroke:#c33
style base fill:#9cf,stroke:#36a
Reviews (2): Last reviewed commit: "Merge branch 'dev' into sam/drop-percept..." | Re-trigger Greptile |
| | `visualization` | Rerun viewer + bridge | rerun-sdk, dimos-viewer | No | | ||
| | `web` | FastAPI web interface, audio | fastapi, uvicorn, ffmpeg-python | No | | ||
| | `sim` | MuJoCo simulation | mujoco, playground, pygame | No | | ||
| | `whisper` | OpenAI Whisper STT (full, requires torch) | openai-whisper | **Yes** | |
There was a problem hiding this comment.
Documented
whisper extra does not exist
Line 48 documents a whisper extra (openai-whisper, GPU required), but no such extra is defined in pyproject.toml. A user running pip install 'dimos[whisper]' will get an error. Either the whisper extra needs to be added to pyproject.toml (and openai-whisper removed from agents), or this row should be removed from the table.
| |-------|-------------|--------------|------| | ||
| | *(core)* | Transport, streams, CLI, blueprints, occupancy maps | dimos-lcm, numpy, scipy, opencv, open3d, numba, Pinocchio, typer, textual | No | | ||
| | `agents` | LLM agent, speech, tool use | langchain, openai, whisper, anthropic | No | | ||
| | `agents` | LLM agent, speech, tool use | langchain, openai, faster-whisper, anthropic | No | |
There was a problem hiding this comment.
agents key-packages column says faster-whisper, code says openai-whisper
The table on line 43 lists faster-whisper as a key package for the agents extra and marks it "No GPU", but pyproject.toml still lists openai-whisper (which requires torch) in agents. This mismatch will mislead users who expect a torch-free agent install.
Problem
Dropping heavyweight perception from base install. With other PRs, this removes torch from base install.
Also dropping bitsandbytes which doesn't appear to be used anywhere at all?
Also updating the docs now to reflect all those changes.
Breaking Changes
Users wanting perception now need to request it.