Advertencia al incrustar `input must have less than 8192 tokens` con discourse ai

¿Hay alguna herramienta para dividir el texto de entrada en fragmentos?
¿O qué API de incrustación admite más de 8192 tokens?

Mensaje (15 copias reportadas)

OpenAI Embeddings falló con el estado: 413 cuerpo: {"code":20042,"message":"la entrada debe tener menos de 8192 tokens","data":null}

Backtrace

/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-8.0.3/lib/active_support/broadcast_logger.rb:218:in `block in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-8.0.3/lib/active_support/broadcast_logger.rb:217:in `map'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-8.0.3/lib/active_support/broadcast_logger.rb:217:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-8.0.3/lib/active_support/broadcast_logger.rb:129:in `warn'
/var/www/discourse/plugins/discourse-ai/lib/inference/open_ai_embeddings.rb:34:in `perform!'
/var/www/discourse/plugins/discourse-ai/lib/embeddings/vector.rb:45:in `block (2 levels) in gen_bulk_reprensentations'
/var/www/discourse/lib/scheduler/thread_pool.rb:118:in `block (2 levels) in wrap_block'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rails_multisite-7.0.0/lib/rails_multisite/connection_management/null_instance.rb:49:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rails_multisite-7.0.0/lib/rails_multisite/connection_management.rb:17:in `with_connection'
/var/www/discourse/lib/scheduler/thread_pool.rb:118:in `block in wrap_block'
/var/www/discourse/lib/scheduler/thread_pool.rb:163:in `thread_loop'
/var/www/discourse/lib/scheduler/thread_pool.rb:174:in `block in spawn_thread'

Si auto-alojas ese mismo modelo, puede ocupar hasta 32 000 tokens.

Si eso está fuera de discusión, entonces necesitas configurar el modelo de embeddings para limitar las entradas al máximo permitido en tu proveedor. De esta manera, nuestro Bot de IA RAG dividirá los archivos cargados en fragmentos, y Related Topic / Search tomará solo los primeros 8192 tokens de cada tema.

1 me gusta

¿cómo configurar el modelo de incrustación? ¿en discourse? ¿o en el proveedor del modelo?

Estoy seguro de que Qwen/Qwen3-Embedding-0.6B admite hasta 32k tokens
y he configurado la longitud de la secuencia en 32k

pero todavía hay muchos errores de incrustación

1 me gusta

Lo hace si tu proveedor de API lo permite.

Si tu proveedor de API lo limita a 8192, tienes que seguir sus reglas.

1 me gusta

ok, le estoy preguntando al proveedor de la API

1 me gusta