Depuración al agregar un nuevo LLM

Estoy intentando añadir un LLM personalizado al plugin Discourse AI. Cuando pulso el botón ‘test’ obtengo un "Internal Server Error".

¿Hay alguna forma de depurar esto u obtener un mensaje de error mejor? Cuando entro en la imagen de docker y hago curl a /v1/models, puedo obtener esto correctamente.

El nombre del modelo es "models/Meta-Llama-3-8B-Instruct.Q6_K.gguf" y no estoy seguro de si podría haber algún problema con caracteres especiales.

Intentar con otro da como resultado: Intentar contactar con el modelo devolvió este error: {"error":{"code":404,"message":"Archivo no encontrado","type":"not_found_error"}}

Pero no muestra qué URL/modelo está intentando buscar, lo que podría ayudar a depurar.

La misma configuración se pegó en Open WebUI, que pudo contactar ambos puntos de conexión de LLM y realizar inferencias correctamente.

¿Qué servidor de inferencia estás usando? ¿vLLM?

Al configurar la URL, añade la ruta /v1/chat/completions al final.

Este fue el problema. Tenga en cuenta que en el software de LLM, es habitual incluir solo hasta /v1 como la URL del punto final. La selección de /chat/completion, etc., normalmente la agrega el software.

Estoy intentando ejecutar uno en localhost para probar, así que puse la URL como: “http://172.17.0.1:8081/v1/chat/completions” y obtengo un error interno del servidor. Puedo hacer curl a “http://172.17.0.1:8081/v1/models” desde el contenedor docker de Discourse, así que la conectividad está funcionando.

¿Hay alguna otra dificultad (por ejemplo, ¿Discourse permite puntos finales de LLM no https y puertos arbitrarios)?

Ambos deberían funcionar.

¿Cuál es el error que ves en /logs?

¡Ah! ¡No sabía lo de /logs!

NameError (variable local o método no definido 'tokenizer' para una instancia de DiscourseAi::Completions::Dialects::ChatGpt) app/controllers/application_controller.rb:424:in 'block in with_resolved_local

Hmm. El que funciona es para un modelo que yo mismo cuantifiqué. Intentaré cuantificar los otros para ver si es un problema de formato del modelo.

¿Alguien ha conseguido que la API de DeepSeek funcione? Estoy intentando averiguar la fórmula correcta para que funcione con Discourse.

Lo tengo funcionando en Open WebUI y otros clientes.

Hay un tema aquí al respecto

2 Me gusta