summaryrefslogtreecommitdiff
path: root/continuedev/src/continuedev/libs/util
diff options
context:
space:
mode:
Diffstat (limited to 'continuedev/src/continuedev/libs/util')
-rw-r--r--continuedev/src/continuedev/libs/util/count_tokens.py4
-rw-r--r--continuedev/src/continuedev/libs/util/templating.py10
2 files changed, 7 insertions, 7 deletions
diff --git a/continuedev/src/continuedev/libs/util/count_tokens.py b/continuedev/src/continuedev/libs/util/count_tokens.py
index c81d8aa4..987aa722 100644
--- a/continuedev/src/continuedev/libs/util/count_tokens.py
+++ b/continuedev/src/continuedev/libs/util/count_tokens.py
@@ -1,7 +1,7 @@
import json
from typing import Dict, List, Union
from ...core.main import ChatMessage
-from .templating import render_system_message
+from .templating import render_templated_string
import tiktoken
aliases = {
@@ -112,7 +112,7 @@ def compile_chat_messages(model: str, msgs: List[ChatMessage], max_tokens: int,
if system_message is not None:
# NOTE: System message takes second precedence to user prompt, so it is placed just before
# but move back to start after processing
- rendered_system_message = render_system_message(system_message)
+ rendered_system_message = render_templated_string(system_message)
system_chat_msg = ChatMessage(
role="system", content=rendered_system_message, summary=rendered_system_message)
# insert at second-to-last position
diff --git a/continuedev/src/continuedev/libs/util/templating.py b/continuedev/src/continuedev/libs/util/templating.py
index ebfc2e31..bb922ad7 100644
--- a/continuedev/src/continuedev/libs/util/templating.py
+++ b/continuedev/src/continuedev/libs/util/templating.py
@@ -16,19 +16,19 @@ def escape_var(var: str) -> str:
return var.replace(os.path.sep, '').replace('.', '')
-def render_system_message(system_message: str) -> str:
+def render_templated_string(template: str) -> str:
"""
- Render system message with mustache syntax.
+ Render system message or other templated string with mustache syntax.
Right now it only supports rendering absolute file paths as their contents.
"""
- vars = get_vars_in_template(system_message)
+ vars = get_vars_in_template(template)
args = {}
for var in vars:
if var.startswith(os.path.sep):
# Escape vars which are filenames, because mustache doesn't allow / in variable names
escaped_var = escape_var(var)
- system_message = system_message.replace(
+ template = template.replace(
var, escaped_var)
if os.path.exists(var):
@@ -36,4 +36,4 @@ def render_system_message(system_message: str) -> str:
else:
args[escaped_var] = ''
- return chevron.render(system_message, args)
+ return chevron.render(template, args)