yonkoyonks commited on
Commit
808f1c2
·
verified ·
1 Parent(s): da87d84

Update utils.py

Browse files
Files changed (1) hide show
  1. utils.py +26 -10
utils.py CHANGED
@@ -13,6 +13,7 @@ def summarize_dataframe(df: pd.DataFrame, max_rows: int = 30) -> str:
13
  summary += sample.to_string(index=False)
14
  return summary
15
 
 
16
  def query_agent(df: pd.DataFrame, query: str) -> str:
17
  query_lower = query.lower()
18
  try:
@@ -39,17 +40,32 @@ Question:
39
  Answer (with explanation):
40
  """
41
 
42
- # Initialize the InferenceClient
43
  client = InferenceClient(token=os.environ.get("HUGGINGFACE_API_KEY"))
44
 
45
- # Use the text_generation method with the correct parameters
46
- response = client.text_generation(
47
- model="google/gemma-2b-it",
48
- inputs=prompt,
49
- parameters={"max_new_tokens": 1024, "temperature": 0.7}
50
- )
 
 
 
 
 
 
 
 
 
51
 
52
- # Extract the generated text from the response
53
- answer = response[0]["generated_text"] if isinstance(response, list) and "generated_text" in response[0] else str(response)
 
 
 
 
 
 
 
54
 
55
- return answer
 
13
  summary += sample.to_string(index=False)
14
  return summary
15
 
16
+
17
  def query_agent(df: pd.DataFrame, query: str) -> str:
18
  query_lower = query.lower()
19
  try:
 
40
  Answer (with explanation):
41
  """
42
 
 
43
  client = InferenceClient(token=os.environ.get("HUGGINGFACE_API_KEY"))
44
 
45
+ try:
46
+ # Works for huggingface-hub >=0.33
47
+ response = client.text_generation(
48
+ prompt,
49
+ model="google/gemma-2b-it",
50
+ max_new_tokens=1024,
51
+ temperature=0.7,
52
+ )
53
+ except TypeError:
54
+ # ✅ Fallback for older versions that use 'inputs' & 'parameters'
55
+ response = client.text_generation(
56
+ model="google/gemma-2b-it",
57
+ inputs=prompt,
58
+ parameters={"max_new_tokens": 1024, "temperature": 0.7},
59
+ )
60
 
61
+ # Extract text safely
62
+ if isinstance(response, str):
63
+ answer = response
64
+ elif isinstance(response, dict) and "generated_text" in response:
65
+ answer = response["generated_text"]
66
+ elif isinstance(response, list) and len(response) > 0 and "generated_text" in response[0]:
67
+ answer = response[0]["generated_text"]
68
+ else:
69
+ answer = str(response)
70
 
71
+ return answer