This is an automated email from the ASF dual-hosted git repository.
mattcasters pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/hop.git
The following commit(s) were added to refs/heads/main by this push:
new 32907c2cb0 Issue #8629 : Document max tokens and context size in AI
Provider precedence (#8853)
32907c2cb0 is described below
commit 32907c2cb0523615c443558442d2334a87cbd223
Author: Bart Maertens <[email protected]>
AuthorDate: Sun Oct 11 22:06:19 2026 +0200
Issue #8629 : Document max tokens and context size in AI Provider
precedence (#8853)
The pgvector "Skip if empty" filter option and the AI Provider precedence
docs were done in #8630. Since then, #8784 made the provider also override Max
New Tokens, and the Ollama context size, which defaults to 16384 when the
provider leaves it empty. Add both to the precedence table and the AI Provider
page, and stop saying max tokens always come from the transform.
---
.../modules/ROOT/pages/metadata-types/ai-provider.adoc | 3 ++-
.../ROOT/pages/pipeline/transforms/languagemodelchat.adoc | 10 ++++++++--
2 files changed, 10 insertions(+), 3 deletions(-)
diff --git
a/docs/hop-user-manual/modules/ROOT/pages/metadata-types/ai-provider.adoc
b/docs/hop-user-manual/modules/ROOT/pages/metadata-types/ai-provider.adoc
index a94b19b538..a4f5e0ee99 100644
--- a/docs/hop-user-manual/modules/ROOT/pages/metadata-types/ai-provider.adoc
+++ b/docs/hop-user-manual/modules/ROOT/pages/metadata-types/ai-provider.adoc
@@ -40,7 +40,8 @@ The same pattern applies to every other secret in the
project: never hard-code i
See
xref:hop-gui/perspective-ai-advisor.adoc#secrets-and-personal-information[Secrets
and personal information].
The xref:pipeline/transforms/languagemodelchat.adoc[Language model chat]
transform can optionally select a named AI Provider.
-The provider's type, base URL, API key, chat model, timeout and temperature
then take precedence over the transform's inline values; an inline value is
only used when the provider leaves that field empty.
+The provider's type, base URL, API key, chat model, timeout, temperature, max
output tokens and thinking then take precedence over the transform's inline
values; an inline value is only used when the provider leaves that field empty.
+With an Ollama provider, the context size always comes from the provider
(16384 when it is empty), and an Anthropic provider without *Max output tokens*
sends 4096 rather than the transform's value.
In particular, a temperature set on the provider overrides the temperature on
every transform that uses it, so leave *Temperature* empty here if transforms
need their own.
Input/output mapping, mock mode, proxy and retries stay on the transform.
See xref:pipeline/transforms/languagemodelchat.adoc#ai-provider-precedence[AI
Provider and inline settings] for the details.
diff --git
a/docs/hop-user-manual/modules/ROOT/pages/pipeline/transforms/languagemodelchat.adoc
b/docs/hop-user-manual/modules/ROOT/pages/pipeline/transforms/languagemodelchat.adoc
index dd32da2381..e8bc9c1e04 100644
---
a/docs/hop-user-manual/modules/ROOT/pages/pipeline/transforms/languagemodelchat.adoc
+++
b/docs/hop-user-manual/modules/ROOT/pages/pipeline/transforms/languagemodelchat.adoc
@@ -98,15 +98,21 @@ When *AI Provider* is set, the transform starts from its
own settings and then c
| Timeout
| The provider's *Timeout (seconds)* if it resolves to a whole number,
otherwise the inline timeout.
+| Max New Tokens
+| The provider's *Max output tokens* if it resolves to a positive whole
number, otherwise the inline *Max New Tokens*. An Anthropic provider without
one sends 4096, not the inline value.
+
+| Context Window Size (Ollama)
+| The provider's *Context size (tokens)* if it resolves to a positive whole
number, otherwise 16384. The inline *Context Window Size* is not used.
+
| Thinking (Ollama)
| The provider's *Thinking* if it is *Off* or *On*, otherwise the inline
*Thinking*.
|===
-Variables in provider fields are resolved first, so apart from *Temperature*,
a field holding a variable that resolves to an empty value counts as empty.
Empty provider fields fall back to the inline values, not to the defaults
listed for each provider type on the xref:metadata-types/ai-provider.adoc[AI
Provider] page.
+Variables in provider fields are resolved first, so apart from *Temperature*,
a field holding a variable that resolves to an empty value counts as empty.
Empty provider fields fall back to the inline values, not to the defaults
listed for each provider type on the xref:metadata-types/ai-provider.adoc[AI
Provider] page. The exceptions are *Max New Tokens* for Anthropic and *Context
Window Size* for Ollama, described above.
The inline fallbacks come from the provider's model type, not from the *Model
API* selected on the transform. With an Anthropic provider, for example, an
empty provider *Model name* falls back to the inline Anthropic model name, even
when the transform itself was set up for OpenAI.
-All other options always come from the transform: mock mode, parallelism and
the input and output fields, and the model-specific options such as Top P, Top
K, maximum tokens, response format, proxy, retries and logging. The
model-specific ones are read from the transform's fields for the provider's
model type.
+All other options always come from the transform: mock mode, parallelism and
the input and output fields, and the model-specific options such as Top P, Top
K, response format, proxy, retries and logging. The model-specific ones are
read from the transform's fields for the provider's model type.
To tune the temperature per transform while sharing one provider, leave
*Temperature* empty on the provider and set it on each transform.