prompt-plus-plus / variables.py
baconnier's picture
Update variables.py
420f262 verified
raw
history blame
2.16 kB
import json
import os
# Load templates from environment variable with a safe default
templates_json = os.getenv('PROMPT_TEMPLATES', '{}')
try:
# Parse JSON data with error handling
prompt_data = json.loads(templates_json)
except json.JSONDecodeError:
# Fallback to empty dict if JSON is invalid
prompt_data = {}
# Create explanations dictionary with safe access
metaprompt_explanations = {
key: data.get("description", "No description available")
for key, data in prompt_data.items()
} if prompt_data else {}
# Generate markdown explanation
explanation_markdown = "".join([
f"- **{key}**: {value}\n"
for key, value in metaprompt_explanations.items()
])
# Define models list
models = [
"meta-llama/Meta-Llama-3-70B-Instruct",
"meta-llama/Meta-Llama-3-8B-Instruct",
"meta-llama/Llama-3.1-70B-Instruct",
"meta-llama/Llama-3.1-8B-Instruct",
"meta-llama/Llama-3.2-3B-Instruct",
"meta-llama/Llama-3.2-1B-Instruct",
"meta-llama/Llama-2-13b-chat-hf",
"meta-llama/Llama-2-7b-chat-hf",
"HuggingFaceH4/zephyr-7b-beta",
"HuggingFaceH4/zephyr-7b-alpha",
"Qwen/Qwen2.5-72B-Instruct",
"Qwen/Qwen2.5-1.5B",
"microsoft/Phi-3.5-mini-instruct"
]
# Extract examples only from JSON templates
examples = []
for key, data in prompt_data.items():
template_examples = data.get("examples", [])
if template_examples:
examples.extend([
[example[0], key] if isinstance(example, list) else [example, key]
for example in template_examples
])
# Get API token with error handling
api_token = os.getenv('HF_API_TOKEN')
if not api_token:
raise ValueError("HF_API_TOKEN not found in environment variables")
# Create meta_prompts dictionary with safe access
meta_prompts = {
key: data.get("template", "No template available")
for key, data in prompt_data.items()
} if prompt_data else {}
prompt_refiner_model = os.getenv('prompt_refiner_model', 'meta-llama/Llama-3.1-8B-Instruct')
print("prompt_refiner_model used :" + prompt_refiner_model)
echo_prompt_refiner = os.getenv('echo_prompt_refiner')
openai_metaprompt = os.getenv('openai_metaprompt')
advanced_meta_prompt = os.getenv('advanced_meta_prompt')