From efb758ba7df96cf8f087573a8e241fa0c6a6e810 Mon Sep 17 00:00:00 2001 From: HanishKVC Date: Tue, 23 Apr 2024 09:15:25 +0530 Subject: [PATCH] ChatON: Rename helpers to kv suffix, updated wrt metaok rename because they return value of specified key. [main] update metaok to take template-id, so that one can cross check that all needed entries are there wrt that template-id in the chaton-meta-json file --- common/chaton.hpp | 28 ++++++++++++++-------------- examples/main/main.cpp | 10 +++++----- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/common/chaton.hpp b/common/chaton.hpp index bb1ae2138..770c1cf4a 100644 --- a/common/chaton.hpp +++ b/common/chaton.hpp @@ -90,14 +90,14 @@ inline void _chaton_meta_dump(std::string &tmpl) { } LOG_TEELN("\n\nINFO:%s:ChatOn Meta\n%s", __func__, theJson.dump(4).c_str()); if (!tmpl.empty()) { - LOG("INFO:%s:%s:%s", __func__, "global->begin", chaton_tmpl_role_part(tmpl, K_GLOBAL, K_BEGIN)); - LOG("INFO:%s:%s:%s", __func__, "global->end", chaton_tmpl_role_part(tmpl, K_GLOBAL, K_END)); - LOG("INFO:%s:%s:%s", __func__, "system->prefix", chaton_tmpl_role_part(tmpl, K_SYSTEM, K_PREFIX)); - LOG("INFO:%s:%s:%s", __func__, "system->suffix", chaton_tmpl_role_part(tmpl, K_SYSTEM, K_SUFFIX)); - LOG("INFO:%s:%s:%s", __func__, "user->prefix", chaton_tmpl_role_part(tmpl, K_USER, K_PREFIX)); - LOG("INFO:%s:%s:%s", __func__, "user->suffix", chaton_tmpl_role_part(tmpl, K_USER, K_SUFFIX)); - LOG("INFO:%s:%s:%s", __func__, "assistant->prefix", chaton_tmpl_role_part(tmpl, K_ASSISTANT, K_PREFIX)); - LOG("INFO:%s:%s:%s", __func__, "assistant->suffix", chaton_tmpl_role_part(tmpl, K_ASSISTANT, K_SUFFIX)); + LOG("INFO:%s:%s:%s", __func__, "global->begin", chaton_tmpl_role_kv(tmpl, K_GLOBAL, K_BEGIN)); + LOG("INFO:%s:%s:%s", __func__, "global->end", chaton_tmpl_role_kv(tmpl, K_GLOBAL, K_END)); + LOG("INFO:%s:%s:%s", __func__, "system->prefix", chaton_tmpl_role_kv(tmpl, K_SYSTEM, K_PREFIX)); + LOG("INFO:%s:%s:%s", __func__, "system->suffix", chaton_tmpl_role_kv(tmpl, K_SYSTEM, K_SUFFIX)); + LOG("INFO:%s:%s:%s", __func__, "user->prefix", chaton_tmpl_role_kv(tmpl, K_USER, K_PREFIX)); + LOG("INFO:%s:%s:%s", __func__, "user->suffix", chaton_tmpl_role_kv(tmpl, K_USER, K_SUFFIX)); + LOG("INFO:%s:%s:%s", __func__, "assistant->prefix", chaton_tmpl_role_kv(tmpl, K_ASSISTANT, K_PREFIX)); + LOG("INFO:%s:%s:%s", __func__, "assistant->suffix", chaton_tmpl_role_kv(tmpl, K_ASSISTANT, K_SUFFIX)); } } @@ -164,14 +164,14 @@ inline std::string chaton_tmpl_apply(const std::string &tmpl, const std::vector< return taggedMsgs; } -inline std::string chaton_tmpl_role_part(const std::string &tmpl, const std::string &role, const std::string &part) { - std::string got = conMeta[tmpl][role][part]; - LOG_TEELN("DBUG:%s:%s:%s:%s:%s", __func__, tmpl.c_str(), role.c_str(), part.c_str(), got.c_str()); +inline std::string chaton_tmpl_role_kv(const std::string &tmpl, const std::string &role, const std::string &key) { + std::string got = conMeta[tmpl][role][key]; + LOG_TEELN("DBUG:%s:%s:%s:%s:%s", __func__, tmpl.c_str(), role.c_str(), key.c_str(), got.c_str()); return got; } -inline std::string chaton_tmpl_part(const std::string &tmpl, const std::string &part) { - std::string got = conMeta[tmpl][part]; - LOG_TEELN("DBUG:%s:%s:%s:%s", __func__, tmpl.c_str(), part.c_str(), got.c_str()); +inline std::string chaton_tmpl_kv(const std::string &tmpl, const std::string &key) { + std::string got = conMeta[tmpl][key]; + LOG_TEELN("DBUG:%s:%s:%s:%s", __func__, tmpl.c_str(), key.c_str(), got.c_str()); return got; } diff --git a/examples/main/main.cpp b/examples/main/main.cpp index 8eed62e65..be3daecdc 100644 --- a/examples/main/main.cpp +++ b/examples/main/main.cpp @@ -144,7 +144,7 @@ int main(int argc, char ** argv) { if (params.chaton) { chaton_meta_load(params.chaton_meta_json); - if (!chaton_meta_ok()) { + if (!chaton_meta_ok(params.chaton_template_id)) { exit(1); } } @@ -375,13 +375,13 @@ int main(int argc, char ** argv) { } // chaton mode - const auto chaton_assitant_prefix = ::llama_tokenize(ctx, chaton_tmpl_role_part(params.chaton_template_id, "assistant", "prefix"), false, true); + const auto chaton_assitant_prefix = ::llama_tokenize(ctx, chaton_tmpl_role_kv(params.chaton_template_id, "assistant", "prefix"), false, true); if (params.chaton) { params.interactive = true; // may remove later, by requiring user to explicitly request interactive mode params.interactive_first = true; - params.input_prefix = chaton_tmpl_role_part(params.chaton_template_id, "user", "prefix"); - params.input_suffix = chaton_tmpl_role_part(params.chaton_template_id, "user", "suffix"); - params.antiprompt.emplace_back(chaton_tmpl_part(params.chaton_template_id, "reverse-prompt")); + params.input_prefix = chaton_tmpl_role_kv(params.chaton_template_id, "user", "prefix"); + params.input_suffix = chaton_tmpl_role_kv(params.chaton_template_id, "user", "suffix"); + params.antiprompt.emplace_back(chaton_tmpl_kv(params.chaton_template_id, "reverse-prompt")); } // enable interactive mode if interactive start is specified