Feature/ia#91
Open
TheSinnerAR wants to merge 2 commits intodevfrom
Open
Conversation
Introduce a new Django "assistant" app and frontend chat UI. Adds models (Conversation, Message, CuratedDocument) with pgvector VectorFields and an initial migration that creates the vector extension. Implements services for embeddings (HuggingFace/sentence-transformers) and LLM-based chat (LangChain/OpenAI), plus tool functions to query platform data. Exposes REST endpoints and views (chat, conversations) and admin integration that auto-generates embeddings. Adds React components and CSS for a floating chat widget (ChatWidget, ChatPanel, ConversationList, MessageThread) and integrates URLs/templates. Update settings with assistant-related environment-backed configuration and include the assistant routes. Add runtime dependencies to config/requirements.txt (langchain, pgvector, sentence-transformers, openai, etc.) and switch docker-compose DB image to pgvector/pgvector:pg16 to enable vector support. Also add SonarLint connectedMode config.
Add comprehensive docs (AI_ASSISTANT.md) and integrate STRING support: three new tools in assistant.services.tools (interaction partners, functional enrichment, network image URL) and register them in make_tools. Update llm_service prompt to mention markdown rendering and embedding STRING images. Frontend: add react-markdown and remark-gfm deps, render assistant messages as markdown (with GFM) in MessageThread, add click-to-enlarge lightbox for images, and implement a resizable/persistent ChatPanel with resize handles. Add CSS for lightbox, markdown styling, and resize UI.
Genarito
requested changes
Apr 24, 2026
| **({"huggingface_api_token": hf_token} if hf_token else {}), | ||
| ) | ||
| # Silence future hub warnings once the model is loaded | ||
| os.environ.setdefault('TOKENIZERS_PARALLELISM', 'false') |
Member
There was a problem hiding this comment.
- Todas estas variables de entorno deben tomarse en el settings.py, importarlos acá a través de
from django.conf import settingsy usarlos comosettings.tokenizers_parallelism. - Documentar todas las variables de entorno en el archivo DEPLOYING.dm
|
|
||
| const STORAGE_KEY = 'multiomix_chat_open' | ||
|
|
||
| const ChatWidget = () => { |
Member
There was a problem hiding this comment.
Aplican todos los mismos comentarios de src/frontend/static/frontend/src/components/assistant/ChatPanel.tsx
| onDelete: (id: number) => void | ||
| } | ||
|
|
||
| const ConversationList = ({ conversations, activeId, onSelect, onNew, onDelete }: ConversationListProps) => { |
Member
There was a problem hiding this comment.
Aplican todos los mismos comentarios de src/frontend/static/frontend/src/components/assistant/ChatPanel.tsx
| onSend: (text: string) => void | ||
| } | ||
|
|
||
| const MessageThread = ({ messages, isLoading, onSend }: MessageThreadProps) => { |
Member
There was a problem hiding this comment.
Aplican todos los mismos comentarios de src/frontend/static/frontend/src/components/assistant/ChatPanel.tsx
| # Value used to indicate tha data is not present in a dataset | ||
| NON_DATA_VALUE: str = 'NA' | ||
|
|
||
| # AI Assistant settings |
Member
There was a problem hiding this comment.
Documentar todas estas variables en el archivo DEPLOYING.md
| @@ -0,0 +1,532 @@ | |||
| # Multiomix AI Assistant | |||
Member
There was a problem hiding this comment.
Multiomix es un proyecto abierto internacional. Reescribir este documento en inglés
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Asistente de IA integrado en Multiomix
Se incorpora un asistente conversacional basado en LLM como widget flotante disponible en todas las páginas de la plataforma (solo para usuarios autenticados).
Qué se agregó
Nueva app Django: assistant
Servicio de embeddings (embedding_service.py)
Agente LLM (llm_service.py)
Documentación curada
Frontend React
Dependencias nuevas
langchain, langchain-openai, langchain-community, sentence-transformers, pgvector, torch (CPU).
Variables de entorno requeridas
Notas de despliegue