yoshizen commited on
Commit
da2d380
·
verified ·
1 Parent(s): c6b4ba2

Delete agent.py

Browse files
Files changed (1) hide show
  1. agent.py +0 -63
agent.py DELETED
@@ -1,63 +0,0 @@
1
- # Файл: agent_gaia.py
2
- import json
3
- import re
4
- import torch
5
- from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
6
- from typing import Optional
7
-
8
- class GAIAExpertAgent:
9
- """Специализированный агент для GAIA тестов"""
10
-
11
- def __init__(self):
12
- self.device = "cuda" if torch.cuda.is_available() else "cpu"
13
- print(f"⚡ Using device: {self.device.upper()}")
14
-
15
- # Оптимальная модель для GAIA вопросов
16
- self.model_name = "google/flan-t5-large"
17
- self.tokenizer = AutoTokenizer.from_pretrained(self.model_name)
18
- self.model = AutoModelForSeq2SeqLM.from_pretrained(
19
- self.model_name,
20
- device_map="auto",
21
- torch_dtype=torch.float16 if "cuda" in self.device else torch.float32
22
- ).eval()
23
-
24
- def solve_gaia_question(self, question: str) -> str:
25
- """Специализированный решатель для GAIA вопросов"""
26
- # Особые случаи
27
- if "dnatsrednu uoy fI" in question: # Обратный текст
28
- return "right"
29
-
30
- if "how many" in question.lower():
31
- return re.search(r'\d+', question) or "42"
32
-
33
- if "list" in question.lower():
34
- return "A, B, C, D"
35
-
36
- # Общий промпт для GAIA
37
- prompt = f"""
38
- You are a GAIA test expert. Answer concisely and factually.
39
- Question: {question}
40
- Answer in 1-3 words ONLY:
41
- """
42
-
43
- inputs = self.tokenizer(prompt, return_tensors="pt", max_length=512, truncation=True).to(self.device)
44
- outputs = self.model.generate(
45
- **inputs,
46
- max_new_tokens=30,
47
- num_beams=3,
48
- temperature=0.3
49
- )
50
-
51
- answer = self.tokenizer.decode(outputs[0], skip_special_tokens=True)
52
-
53
- # Постобработка
54
- answer = answer.split(":")[-1].strip()
55
- answer = re.sub(r'[^a-zA-Z0-9\s.,]', '', answer)
56
- return answer[:100] # Обрезка слишком длинных ответов
57
-
58
- def __call__(self, question: str, task_id: Optional[str] = None) -> str:
59
- try:
60
- answer = self.solve_gaia_question(question)
61
- return json.dumps({"final_answer": answer})
62
- except Exception as e:
63
- return json.dumps({"final_answer": "ERROR"})