muni's picture
Add TinyTroupe
82a7a28
from tinytroupe.enrichment import logger
from tinytroupe.utils import JsonSerializableRegistry
from tinytroupe import openai_utils
import tinytroupe.utils as utils
class TinyEnricher(JsonSerializableRegistry):
def __init__(self, use_past_results_in_context=False) -> None:
self.use_past_results_in_context = use_past_results_in_context
self.context_cache = []
def enrich_content(self, requirements: str, content:str, content_type:str =None, context_info:str ="", context_cache:list=None, verbose:bool=False):
rendering_configs = {"requirements": requirements,
"content": content,
"content_type": content_type,
"context_info": context_info,
"context_cache": context_cache}
messages = utils.compose_initial_LLM_messages_with_templates("enricher.system.mustache", "enricher.user.mustache",
base_module_folder = "enrichment",
rendering_configs=rendering_configs)
next_message = openai_utils.client().send_message(messages, temperature=1.0, frequency_penalty=0.0, presence_penalty=0.0)
debug_msg = f"Enrichment result message: {next_message}"
logger.debug(debug_msg)
if verbose:
print(debug_msg)
if next_message is not None:
result = utils.extract_code_block(next_message["content"])
else:
result = None
return result