server: cap shared decision prefixes at the first output (#30710)
Limit the shared prefix to the first required output position of the parent and each child task. This keeps decision output embeddings available in the final batch when questions share option tokens. Fixes #30482 Signed-off-by: aiqubits <aiqubits@hotmail.com>
This commit is contained in:
1 parent
2871678a1d
commit
f3586e66bc
1 file changed
+1
-1
@@ -1762,7 +1762,7 @@ std::vector<server_task> server_decision_group_tasks(std::vector<server_task> &&
|
||||
size_t n_shared = parent.tokens.size() - 1;
|
||||
for (size_t j = i + 1; j < end; j++) {
|
||||
n_shared = std::min(n_shared, parent.tokens.get_common_prefix(tasks[j].tokens));
|
||||
n_shared = std::min(n_shared, tasks[j].tokens.size() - 1);
|
||||
n_shared = std::min({n_shared, tasks[j].tokens.size() - 1, (size_t) parent.decision.pos_first(), (size_t) tasks[j].decision.pos_first()});
|
||||
}
|
||||
|
||||
if (end - i < 2 || n_shared == 0) {
|
||||
|
||||
Reference in new issue
Block a user