refactor(services): add ChatService protocol and MessageRouter with centralized routing#45
refactor(services): add ChatService protocol and MessageRouter with centralized routing#45Row0902 wants to merge 7 commits into
Conversation
…entralized routing
|
Hi, Thank you for your contribution. As of now, the CI failed when building the 64-bit edition due to your Python version change. Therefore, it seems numpy needs to be updated. |
| class ChatService(Protocol): | ||
| """Structural protocol for all platform chat services. | ||
|
|
||
| Every service (TikTok, Kick, YouTube, Twitch, Sala, YouTubeRealTime) |
There was a problem hiding this comment.
| Every service (TikTok, Kick, YouTube, Twitch, Sala, YouTubeRealTime) | |
| Every service (TikTok, Kick, YouTube, Twitch, Playroom, YouTubeRealTime) |
| "google-currency", | ||
| "googletrans-py", | ||
| "kick-py", | ||
| "numpy==1.26.4", |
There was a problem hiding this comment.
We may need to bump it up.
| "yt-dlp[curl-cffi,default]>=2026.3.17", | ||
| ] | ||
|
|
||
| # Ya no necesitas [tool.uv.extra-build-dependencies] porque la 4.2.5 descarga el binario directo (.wheel) |
There was a problem hiding this comment.
This may be an AI-driven context.
There was a problem hiding this comment.
What is the purpose of those docs? It seems those are written by AI. Is this designed for developers? IMO the project code may not be too hard to understand nowadays, now that it is modulariced.
There was a problem hiding this comment.
Hola. Esos documentos son specs sobre los cambios que estuve trabajando. Básicamente estoy utilizando SDD para los cambios y las correcciones que estoy implementando. De todas formas los excluí de la PR.
rmcpantoja
left a comment
There was a problem hiding this comment.
Appreciate the use of AI here to improve, however, please consider checking their outputs.
|
Numpy 2.x tiene un problema con procesadores antiguos veo que con la serie amd. Si alguno sabe que podríamos hacer para arreglar eso estaría cool. |
199c2d7 to
8e85fd3
Compare
|
Hola. NVDA no usa Numpy. Y si lo ha usado, ralentiza el lector de pantalla. Hubo un momento en que introdujeron la descripción de imágenes en local en el repo, pero fue revertido un tiempo después de haber llegado, justamente por lo pesado que es numpy en cuanto a recursos y muchas limitaciones del modelo, pero eso ya es muy aparte de lo que nos compete. Podríamos prescindir totalmente de ONNXRuntime que lo usa de lleno, hasta lo usamos nosotros para convertir las entradas para las voces de piper a tipos de variable compatibles, esto es: los fonemas del texto en tokens (un array int64 con los ids de cada fonema), los parámetros como la velocidad y la escala de ruido que son flotantes (float64). A lo mejor haya una forma de usar CoreML para piper que, según había leído, ya viene integrado desde Windows 10. Recomiendo echarle un vistazo al código de piper para entender más el tema de entradas (tensores con los tipos que ya mencioné) y salidas (el audio resultante en float32 que se convierte luego a int16, audio compatible). Investigaré más sobre este remplazo. |
Summary
typing.Protocolwx.CallAfter(previously called UI from background threads directly)Changes
servicios/chat_service_protocol.pyservicios/message_router.pyservicios/tiktok.pyservicios/kick.pyservicios/youtube.pyservicios/twich.pyservicios/sala.pyservicios/YouTubeRealDataTime.pycontroller/chat_controller.pycontroller/main_controller.pycontroller/menus/chat_menu_controller.pyTest Plan
pytest tests/— 24/24 passedty check servicios/message_router.py— zero errors