Spaces:
Runtime error
Runtime error
from smolagents import CodeAgent,DuckDuckGoSearchTool, HfApiModel,load_tool,tool | |
import datetime | |
import requests | |
import pytz | |
import yaml | |
import random | |
from tools.final_answer import FinalAnswerTool | |
from Gradio_UI import GradioUI | |
# Below is an example of a tool that does nothing. Amaze us with your creativity ! | |
def belief_transformer(negative_belief: str, intensity_level: int) -> str: | |
"""A tool that transforms negative beliefs into positive ones and generates motivational quotes | |
Args: | |
negative_belief: The negative belief that needs to be transformed | |
intensity_level: Level of emotional intensity (1-5) to adjust response tone | |
Returns: | |
str: A formatted string containing the transformed belief and a motivational quote | |
""" | |
import re | |
from typing import Dict, List | |
# Define transformation patterns | |
belief_patterns: Dict[str, str] = { | |
r"я не могу": "я учусь и развиваюсь, чтобы", | |
r"я недостаточно": "я становлюсь более", | |
r"я никогда не": "я на пути к тому, чтобы", | |
r"это слишком сложно": "это вызов, который помогает мне расти", | |
r"я боюсь": "я смело встречаю", | |
r"я плохой": "я совершенствуюсь в", | |
r"у меня не получится": "я делаю шаги к успеху в", | |
} | |
# Motivational quotes based on intensity | |
quotes: Dict[int, List[str]] = { | |
1: [ | |
"Каждый шаг - это движение вперёд.", | |
"Прогресс начинается с принятия себя.", | |
"Малые изменения приводят к большим результатам." | |
], | |
2: [ | |
"Ты сильнее, чем думаешь.", | |
"В тебе есть всё необходимое для успеха.", | |
"Каждая трудность - это возможность для роста." | |
], | |
3: [ | |
"Твоё стремление к улучшению уже делает тебя особенным!", | |
"Вера в себя - твой главный союзник.", | |
"Ты создаёшь свою реальность своими мыслями." | |
], | |
4: [ | |
"Твой потенциал безграничен! Действуй!", | |
"Ты способен на невероятные достижения!", | |
"Каждый день - новая возможность стать лучше!" | |
], | |
5: [ | |
"ТВОЯ СИЛА ДУХА НЕПОБЕДИМА!", | |
"ТЫ СОЗДАН ДЛЯ ВЕЛИКИХ СВЕРШЕНИЙ!", | |
"ТВОЁ ВРЕМЯ ПРИШЛО! ДЕЙСТВУЙ СЕЙЧАС!" | |
] | |
} | |
def transform_belief(text: str) -> str: | |
transformed = text.lower() | |
for pattern, replacement in belief_patterns.items(): | |
transformed = re.sub(pattern, replacement, transformed) | |
return transformed.capitalize() | |
def get_quote(level: int) -> str: | |
import random | |
level = max(1, min(5, level)) # Ensure level is between 1 and 5 | |
return random.choice(quotes[level]) | |
# Transform the belief and get a quote | |
positive_belief = transform_belief(negative_belief) | |
motivation = get_quote(intensity_level) | |
# Format the response | |
response = f"""Трансформация убеждения: | |
Было: {negative_belief} | |
Стало: {positive_belief} | |
Мотивация: {motivation}""" | |
return response | |
final_answer = FinalAnswerTool() | |
# If the agent does not answer, the model is overloaded, please use another model or the following Hugging Face Endpoint that also contains qwen2.5 coder: | |
# model_id='https://pflgm2locj2t89co.us-east-1.aws.endpoints.huggingface.cloud' | |
model = HfApiModel( | |
max_tokens=2096, | |
temperature=0.5, | |
model_id='Qwen/Qwen2.5-Coder-32B-Instruct',# it is possible that this model may be overloaded | |
custom_role_conversions=None, | |
) | |
# Import tool from Hub | |
image_generation_tool = load_tool("agents-course/text-to-image", trust_remote_code=True) | |
with open("prompts.yaml", 'r') as stream: | |
prompt_templates = yaml.safe_load(stream) | |
agent = CodeAgent( | |
model=model, | |
tools=[final_answer], ## add your tools here (don't remove final answer) | |
max_steps=6, | |
verbosity_level=1, | |
grammar=None, | |
planning_interval=None, | |
name=None, | |
description=None, | |
prompt_templates=prompt_templates | |
) | |
GradioUI(agent).launch() |