¿Qué se ha hecho?
Se ha creado un agente de IA “Búsqueda en el foro” (ID=5) para realizar búsquedas semánticas en los materiales del foro discuss.rabkesov.ru, con la posibilidad de enriquecer los resultados con información de internet.
Agente
- Bot de usuario:
Búsqueda_en_el_foro_bot(user_id=-1202) - LLM: qwen3-VL-8b (local, vanill.ddns.net:54321)
- Panel de administración: ai-agents/5/edit
Herramientas
| Herramienta | Propósito | Parámetros |
|---|---|---|
| Search | Búsqueda semántica + por palabras clave | max_results=20, search_private=true |
| Read | Lectura del contenido completo de los temas | read_private=true |
| Researcher | Análisis profundo/síntesis sobre varios temas | max_results=10, LLM=qwen3-VL-8b |
| WebBrowser | Visualización de páginas web (para enriquecimiento web) | - |
Comportamiento
- Para cada consulta, busca solo dentro del foro (Search + Read + Researcher).
- Cada hecho se cita con un enlace al tema/publicación.
- Al final de la respuesta, pregunta: “¿Desea enriquecer los resultados con información de internet?”.
- Al confirmarse, utiliza WebBrowser para navegar por sitios prioritarios:
- Responde en el idioma de la consulta.
Cómo usarlo
- Mencionar
@Búsqueda_en_el_foro_boten cualquier tema. - Enviarle un mensaje privado.
- A través de Conversaciones de AI-bot.
Cambio de modelo de embeddings: nomic v1.5 → v2-moe
Problema
El modelo nomic-embed-text-v1.5 agrupa textos por idioma, no por significado. Prueba:
| Pareja | Similaridad coseno |
|---|---|
| RU “configuración vLLM” ←→ EN “vLLM config” (misma temática) | 0.634 |
| RU “configuración vLLM” ←→ RU “receta de borscht” (temáticas distintas) | 0.650 |
| Gap (separación por significado) | -0.016 |
El texto en ruso sobre vLLM está más cercano al texto en ruso sobre borscht que al texto en inglés sobre vLLM. La búsqueda semántica en un foro en ruso con este modelo funcionaba incorrectamente.
Solución
Se ha cambiado al modelo nomic-embed-text-v2-moe (MoE, 8x277M, 512 MB Q8_0, 100+ idiomas). Resultado:
| Pareja | v1.5 | v2-moe |
|---|---|---|
| RU “vLLM” ←→ EN “vLLM” (misma temática) | 0.634 | 0.924 |
| RU “vLLM” ←→ RU “borscht” (temáticas distintas) | 0.650 | 0.163 |
| Gap | -0.016 | +0.761 |
Configuración de embeddings (final)
| Parámetro | Valor |
|---|---|
ai_embeddings_enabled |
true |
ai_embeddings_selected_model |
12 (nomic-embed-text-v2-moe) |
ai_embeddings_semantic_search_enabled |
true |
ai_embeddings_semantic_search_use_hyde |
true |
ai_embeddings_semantic_search_hyde_agent |
-32 (“Autor del contenido”) |
ai_embeddings_semantic_quick_search_enabled |
true |
El modelo nomic-embed-text-v2-moe debe cargarse constantemente en LM Studio (~488 MB VRAM). El backfill de embeddings se inicia automáticamente mediante Sidekiq tras cambiar el modelo.
Limitación: búsqueda web
La herramienta de Google (búsqueda web completa) no está disponible — ai_google_custom_search_api_key no está configurado. El agente utiliza WebBrowser para navegar por URLs específicas. Para una búsqueda completa en internet es necesario:
- Registrarse en Google Custom Search Engine y obtener la clave API + CX.
- Configurar en ajustes de IA.
Logs del servidor LLM
Ruta: ~/.lmstudio/server-logs/YYYY-MM/YYYY-MM-DD.N.log
- Rotación mensual en carpetas, dentro por días.
- N - número de rotación del día.
- Ejemplo:
~/.lmstudio/server-logs/2026-03/2026-03-30.1.log