Spaces:
Sleeping
Sleeping
| """ | |
| File processing and data extraction tools for the Retriever Agent. | |
| Handles Excel, CSV, audio, video, and document processing. | |
| """ | |
| import pandas as pd | |
| import os | |
| from typing import Any, Dict, List | |
| from langchain.tools import tool | |
| def read_excel_file(file_path: str, sheet_name: str = None) -> str: | |
| """ | |
| Read and analyze Excel files. | |
| Args: | |
| file_path: Path to the Excel file | |
| sheet_name: Specific sheet to read (optional) | |
| Returns: | |
| String representation of the data | |
| """ | |
| try: | |
| if sheet_name: | |
| df = pd.read_excel(file_path, sheet_name=sheet_name) | |
| else: | |
| df = pd.read_excel(file_path) | |
| return df.to_string() | |
| except Exception as e: | |
| return f"Error reading Excel file: {str(e)}" | |
| def read_csv_file(file_path: str) -> str: | |
| """ | |
| Read and analyze CSV files. | |
| Args: | |
| file_path: Path to the CSV file | |
| Returns: | |
| String representation of the data | |
| """ | |
| try: | |
| df = pd.read_csv(file_path) | |
| return df.to_string() | |
| except Exception as e: | |
| return f"Error reading CSV file: {str(e)}" | |
| def calculate_column_sum(file_path: str, column_name: str) -> float: | |
| """ | |
| Calculate sum of a specific column in Excel/CSV file. | |
| Args: | |
| file_path: Path to the file | |
| column_name: Name of the column to sum | |
| Returns: | |
| Sum of the column values | |
| """ | |
| try: | |
| if file_path.endswith('.xlsx') or file_path.endswith('.xls'): | |
| df = pd.read_excel(file_path) | |
| else: | |
| df = pd.read_csv(file_path) | |
| return float(df[column_name].sum()) | |
| except Exception as e: | |
| return f"Error calculating sum: {str(e)}" | |
| # Add more file processing tools as needed | |