Spaces:
Running
on
CPU Upgrade
Running
on
CPU Upgrade
feat: improve task model tool calling (#1755)
Browse files* feat: improve task model tool calling
* feat(prod): add tokenizer for Hermes-3-Llama-3.1-8B to task configuration
chart/env/prod.yaml
CHANGED
@@ -375,11 +375,17 @@ envVars:
|
|
375 |
]
|
376 |
},
|
377 |
{
|
378 |
-
"name": "
|
379 |
-
"
|
380 |
"unlisted": true,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
381 |
"parameters": {
|
382 |
-
"stop": ["<|eot_id|>", "<|im_end|>"],
|
383 |
"temperature": 0.1,
|
384 |
"max_new_tokens": 256
|
385 |
}
|
@@ -456,7 +462,7 @@ envVars:
|
|
456 |
PUBLIC_APP_DISCLAIMER: 1
|
457 |
PUBLIC_PLAUSIBLE_SCRIPT_URL: "/js/script.js"
|
458 |
REQUIRE_FEATURED_ASSISTANTS: "true"
|
459 |
-
TASK_MODEL: "
|
460 |
TEXT_EMBEDDING_MODELS: >
|
461 |
[{
|
462 |
"name": "bge-base-en-v1-5-sxa",
|
|
|
375 |
]
|
376 |
},
|
377 |
{
|
378 |
+
"name": "internal/task",
|
379 |
+
"tokenizer" : "NousResearch/Hermes-3-Llama-3.1-8B",
|
380 |
"unlisted": true,
|
381 |
+
"tools" : true,
|
382 |
+
"endpoints": [
|
383 |
+
{
|
384 |
+
"type": "openai",
|
385 |
+
"baseURL": "https://internal.api-inference.huggingface.co/models/NousResearch/Hermes-3-Llama-3.1-8B/v1"
|
386 |
+
}
|
387 |
+
],
|
388 |
"parameters": {
|
|
|
389 |
"temperature": 0.1,
|
390 |
"max_new_tokens": 256
|
391 |
}
|
|
|
462 |
PUBLIC_APP_DISCLAIMER: 1
|
463 |
PUBLIC_PLAUSIBLE_SCRIPT_URL: "/js/script.js"
|
464 |
REQUIRE_FEATURED_ASSISTANTS: "true"
|
465 |
+
TASK_MODEL: "internal/task"
|
466 |
TEXT_EMBEDDING_MODELS: >
|
467 |
[{
|
468 |
"name": "bge-base-en-v1-5-sxa",
|
src/lib/server/textGeneration/reasoning.ts
CHANGED
@@ -15,7 +15,7 @@ export async function generateSummaryOfReasoning(buffer: string): Promise<string
|
|
15 |
];
|
16 |
|
17 |
const preprompt = `You are tasked with submitting a summary of the latest reasoning steps into a tool. Never describe results of the reasoning, only the process. Remain vague in your summary.
|
18 |
-
The text might be incomplete, try your best to summarize it in one very short sentence, starting with a gerund and ending with three points. The
|
19 |
|
20 |
if (smallModel.tools) {
|
21 |
const summaryTool = {
|
@@ -25,7 +25,8 @@ The text might be incomplete, try your best to summarize it in one very short se
|
|
25 |
{
|
26 |
name: "summary",
|
27 |
type: "str",
|
28 |
-
description:
|
|
|
29 |
paramType: "required",
|
30 |
},
|
31 |
],
|
|
|
15 |
];
|
16 |
|
17 |
const preprompt = `You are tasked with submitting a summary of the latest reasoning steps into a tool. Never describe results of the reasoning, only the process. Remain vague in your summary.
|
18 |
+
The text might be incomplete, try your best to summarize it in one very short sentence, starting with a gerund and ending with three points. The sentence must be very short, ideally 5 words or less.`;
|
19 |
|
20 |
if (smallModel.tools) {
|
21 |
const summaryTool = {
|
|
|
25 |
{
|
26 |
name: "summary",
|
27 |
type: "str",
|
28 |
+
description:
|
29 |
+
"The short summary of the reasoning steps. 5 words or less. Must start with a gerund.",
|
30 |
paramType: "required",
|
31 |
},
|
32 |
],
|
src/lib/server/textGeneration/title.ts
CHANGED
@@ -43,7 +43,7 @@ export async function generateTitle(prompt: string) {
|
|
43 |
name: "title",
|
44 |
type: "str",
|
45 |
description:
|
46 |
-
"The title for the conversation. It should be
|
47 |
},
|
48 |
],
|
49 |
} as unknown as Tool;
|
@@ -57,7 +57,7 @@ export async function generateTitle(prompt: string) {
|
|
57 |
},
|
58 |
],
|
59 |
preprompt:
|
60 |
-
"
|
61 |
tool: titleTool,
|
62 |
endpoint,
|
63 |
});
|
@@ -76,7 +76,7 @@ export async function generateTitle(prompt: string) {
|
|
76 |
preprompt:
|
77 |
"You are a summarization AI. Summarize the user's request into a single short sentence of four words or less. Do not try to answer it, only summarize the user's query. Always start your answer with an emoji relevant to the summary",
|
78 |
generateSettings: {
|
79 |
-
max_new_tokens:
|
80 |
},
|
81 |
})
|
82 |
)
|
|
|
43 |
name: "title",
|
44 |
type: "str",
|
45 |
description:
|
46 |
+
"The title for the conversation. It should be 5 words or less and start with a unicode emoji relevant to the query.",
|
47 |
},
|
48 |
],
|
49 |
} as unknown as Tool;
|
|
|
57 |
},
|
58 |
],
|
59 |
preprompt:
|
60 |
+
"The task is to generate conversation titles based on text snippets. You'll never answer the provided question directly, but instead summarize the user's request into a short title.",
|
61 |
tool: titleTool,
|
62 |
endpoint,
|
63 |
});
|
|
|
76 |
preprompt:
|
77 |
"You are a summarization AI. Summarize the user's request into a single short sentence of four words or less. Do not try to answer it, only summarize the user's query. Always start your answer with an emoji relevant to the summary",
|
78 |
generateSettings: {
|
79 |
+
max_new_tokens: 30,
|
80 |
},
|
81 |
})
|
82 |
)
|