atomkevich commited on
Commit
8559392
·
verified ·
1 Parent(s): 1721f75

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +7 -74
app.py CHANGED
@@ -1,23 +1,3 @@
1
- from smolagents import CodeAgent,DuckDuckGoSearchTool, HfApiModel,load_tool,tool
2
- import datetime
3
- import requests
4
- import pytz
5
- import yaml
6
- from tools.final_answer import FinalAnswerTool
7
- from transformers import M2M100ForConditionalGeneration, M2M100Tokenizer
8
-
9
- from Gradio_UI import GradioUI
10
-
11
- from langdetect import detect
12
- import requests
13
- from smolagents import tool
14
-
15
- model_name = "facebook/m2m100_418M"
16
- tokenizer = M2M100Tokenizer.from_pretrained(model_name)
17
- translation_model = M2M100ForConditionalGeneration.from_pretrained(model_name)
18
-
19
-
20
- @tool
21
  def agent_translate(text: str) -> str:
22
  """A tool that translate text with next logic:
23
  1) If text starts with 'PL:', translate the rest to Polish.
@@ -39,12 +19,15 @@ def agent_translate(text: str) -> str:
39
  target_lang = "RU"
40
  original = text
41
 
42
-
43
-
44
  try:
 
 
 
 
 
45
  inputs = tokenizer(original, return_tensors="pt")
46
 
47
- forced_bos_token_id = tokenizer.get_lang_id(target_lang)
48
 
49
  generated_tokens = translation_model.generate(
50
  **inputs,
@@ -54,54 +37,4 @@ def agent_translate(text: str) -> str:
54
  translated_text = tokenizer.batch_decode(generated_tokens, skip_special_tokens=True)[0]
55
  return translated_text
56
  except Exception as e:
57
- return f"Error during translating: {inputs, original, target_lang, str(e)}"
58
-
59
- @tool
60
- def get_current_time_in_timezone(timezone: str) -> str:
61
- """A tool that fetches the current local time in a specified timezone.
62
- Args:
63
- timezone: A string representing a valid timezone (e.g., 'America/New_York').
64
- """
65
- try:
66
- # Create timezone object
67
- tz = pytz.timezone(timezone)
68
- # Get current time in that timezone
69
- local_time = datetime.datetime.now(tz).strftime("%Y-%m-%d %H:%M:%S")
70
- return f"The current local time in {timezone} is: {local_time}"
71
- except Exception as e:
72
- return f"Error fetching time for timezone '{timezone}': {str(e)}"
73
-
74
-
75
- final_answer = FinalAnswerTool()
76
-
77
- # 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:
78
- # model_id='https://pflgm2locj2t89co.us-east-1.aws.endpoints.huggingface.cloud'
79
-
80
- model = HfApiModel(
81
- max_tokens=2096,
82
- temperature=0.5,
83
- model_id='Qwen/Qwen2.5-Coder-32B-Instruct',# it is possible that this model may be overloaded
84
- custom_role_conversions=None,
85
- )
86
-
87
-
88
- # Import tool from Hub
89
- image_generation_tool = load_tool("agents-course/text-to-image", trust_remote_code=True)
90
-
91
- with open("prompts.yaml", 'r') as stream:
92
- prompt_templates = yaml.safe_load(stream)
93
-
94
- agent = CodeAgent(
95
- model=model,
96
- tools=[agent_translate, final_answer], ## add your tools here (don't remove final answer)
97
- max_steps=6,
98
- verbosity_level=1,
99
- grammar=None,
100
- planning_interval=None,
101
- name=None,
102
- description=None,
103
- prompt_templates=prompt_templates
104
- )
105
-
106
-
107
- GradioUI(agent).launch()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  def agent_translate(text: str) -> str:
2
  """A tool that translate text with next logic:
3
  1) If text starts with 'PL:', translate the rest to Polish.
 
19
  target_lang = "RU"
20
  original = text
21
 
 
 
22
  try:
23
+ model_name = "facebook/m2m100_418M"
24
+ tokenizer = M2M100Tokenizer.from_pretrained(model_name)
25
+ translation_model = M2M100ForConditionalGeneration.from_pretrained(model_name)
26
+
27
+
28
  inputs = tokenizer(original, return_tensors="pt")
29
 
30
+ forced_bos_token_id = tokenizer.get_lang_id(target_lang.lower())
31
 
32
  generated_tokens = translation_model.generate(
33
  **inputs,
 
37
  translated_text = tokenizer.batch_decode(generated_tokens, skip_special_tokens=True)[0]
38
  return translated_text
39
  except Exception as e:
40
+ return f"Error during translating: { str(e)}"