Aviso de incorporação `input must have less than 8192 tokens` com discourse ai

Existe alguma ferramenta para dividir o texto de entrada em pedaços?
ou qual API de embedding suporta mais de 8192 tokens?

Mensagem (15 cópias relatadas)

OpenAI Embeddings falhou com status: 413 body: {"code":20042,"message":"input must have less than 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'

Se você auto-hospedar o mesmo modelo, ele pode consumir até 32 mil tokens.

Se isso estiver fora de questão, você precisará configurar o modelo de embeddings para limitar as entradas ao máximo permitido pelo seu provedor. Dessa forma, nosso AI Bot RAG dividirá os arquivos carregados em blocos, e o Tópico Relacionado / Pesquisa consumirá apenas os primeiros 8192 tokens de cada tópico.

1 curtida

como configurar o modelo de incorporação? no discourse? ou provedor de modelo?

Tenho certeza de que Qwen/Qwen3-Embedding-0.6B suporta até 32k tokens
e configurei o comprimento da sequência para 32k

mas ainda há muitos erros de embedding

1 curtida

Ele suporta se seus provedores de API permitirem.

Se o seu provedor de API o limitar a 8192, você terá que seguir as regras deles.

1 curtida

ok, estou perguntando ao provedor da API

1 curtida