|
|
@@ -142,6 +142,28 @@ json task_params::to_json(bool only_metrics) const {
|
|
|
};
|
|
|
}
|
|
|
|
|
|
+//
|
|
|
+// task_result_state
|
|
|
+//
|
|
|
+common_chat_msg task_result_state::update_chat_msg(
|
|
|
+ const std::string & text_added,
|
|
|
+ bool is_partial,
|
|
|
+ std::vector<common_chat_msg_diff> & diffs) {
|
|
|
+ generated_text += text_added;
|
|
|
+ auto msg_prv_copy = chat_msg;
|
|
|
+ SRV_DBG("Parsing chat message: %s\n", generated_text.c_str());
|
|
|
+ auto new_msg = common_chat_parse(
|
|
|
+ generated_text,
|
|
|
+ is_partial,
|
|
|
+ chat_parser_params);
|
|
|
+ if (!new_msg.empty()) {
|
|
|
+ new_msg.set_tool_call_ids(generated_tool_call_ids, gen_tool_call_id);
|
|
|
+ chat_msg = new_msg;
|
|
|
+ diffs = common_chat_msg_diff::compute_diffs(msg_prv_copy, new_msg.empty() ? msg_prv_copy : new_msg);
|
|
|
+ }
|
|
|
+ return chat_msg;
|
|
|
+}
|
|
|
+
|
|
|
//
|
|
|
// server_task
|
|
|
//
|
|
|
@@ -714,25 +736,6 @@ json server_task_result_cmpl_final::to_json_oaicompat_chat() {
|
|
|
return res;
|
|
|
}
|
|
|
|
|
|
-common_chat_msg task_result_state::update_chat_msg(
|
|
|
- const std::string & text_added,
|
|
|
- bool is_partial,
|
|
|
- std::vector<common_chat_msg_diff> & diffs) {
|
|
|
- generated_text += text_added;
|
|
|
- auto msg_prv_copy = chat_msg;
|
|
|
- SRV_DBG("Parsing chat message: %s\n", generated_text.c_str());
|
|
|
- auto new_msg = common_chat_parse(
|
|
|
- generated_text,
|
|
|
- is_partial,
|
|
|
- chat_parser_params);
|
|
|
- if (!new_msg.empty()) {
|
|
|
- new_msg.set_tool_call_ids(generated_tool_call_ids, gen_tool_call_id);
|
|
|
- chat_msg = new_msg;
|
|
|
- diffs = common_chat_msg_diff::compute_diffs(msg_prv_copy, new_msg.empty() ? msg_prv_copy : new_msg);
|
|
|
- }
|
|
|
- return chat_msg;
|
|
|
-}
|
|
|
-
|
|
|
json server_task_result_cmpl_final::to_json_oaicompat_chat_stream() {
|
|
|
std::time_t t = std::time(0);
|
|
|
std::string finish_reason = "length";
|
|
|
@@ -1530,41 +1533,6 @@ json server_task_result_cmpl_partial::to_json_oaicompat_resp() {
|
|
|
return events;
|
|
|
}
|
|
|
|
|
|
-//
|
|
|
-// server_task_result_embd
|
|
|
-//
|
|
|
-json server_task_result_embd::to_json() {
|
|
|
- return res_type == TASK_RESPONSE_TYPE_OAI_EMBD
|
|
|
- ? to_json_oaicompat()
|
|
|
- : to_json_non_oaicompat();
|
|
|
-}
|
|
|
-
|
|
|
-json server_task_result_embd::to_json_non_oaicompat() {
|
|
|
- return json {
|
|
|
- {"index", index},
|
|
|
- {"embedding", embedding},
|
|
|
- };
|
|
|
-}
|
|
|
-
|
|
|
-json server_task_result_embd::to_json_oaicompat() {
|
|
|
- return json {
|
|
|
- {"index", index},
|
|
|
- {"embedding", embedding[0]},
|
|
|
- {"tokens_evaluated", n_tokens},
|
|
|
- };
|
|
|
-}
|
|
|
-
|
|
|
-//
|
|
|
-// server_task_result_rerank
|
|
|
-//
|
|
|
-json server_task_result_rerank::to_json() {
|
|
|
- return json {
|
|
|
- {"index", index},
|
|
|
- {"score", score},
|
|
|
- {"tokens_evaluated", n_tokens},
|
|
|
- };
|
|
|
-}
|
|
|
-
|
|
|
json server_task_result_cmpl_partial::to_json_anthropic() {
|
|
|
json events = json::array();
|
|
|
bool first = (n_decoded == 1);
|
|
|
@@ -1703,6 +1671,41 @@ json server_task_result_cmpl_partial::to_json_anthropic() {
|
|
|
return events;
|
|
|
}
|
|
|
|
|
|
+//
|
|
|
+// server_task_result_embd
|
|
|
+//
|
|
|
+json server_task_result_embd::to_json() {
|
|
|
+ return res_type == TASK_RESPONSE_TYPE_OAI_EMBD
|
|
|
+ ? to_json_oaicompat()
|
|
|
+ : to_json_non_oaicompat();
|
|
|
+}
|
|
|
+
|
|
|
+json server_task_result_embd::to_json_non_oaicompat() {
|
|
|
+ return json {
|
|
|
+ {"index", index},
|
|
|
+ {"embedding", embedding},
|
|
|
+ };
|
|
|
+}
|
|
|
+
|
|
|
+json server_task_result_embd::to_json_oaicompat() {
|
|
|
+ return json {
|
|
|
+ {"index", index},
|
|
|
+ {"embedding", embedding[0]},
|
|
|
+ {"tokens_evaluated", n_tokens},
|
|
|
+ };
|
|
|
+}
|
|
|
+
|
|
|
+//
|
|
|
+// server_task_result_rerank
|
|
|
+//
|
|
|
+json server_task_result_rerank::to_json() {
|
|
|
+ return json {
|
|
|
+ {"index", index},
|
|
|
+ {"score", score},
|
|
|
+ {"tokens_evaluated", n_tokens},
|
|
|
+ };
|
|
|
+}
|
|
|
+
|
|
|
//
|
|
|
// server_task_result_error
|
|
|
//
|