ml-intern / test_dataset_tools.py
akseljoonas's picture
Merge configurable-permissions: add confirm_cpu_jobs, auto_file_upload, keep yolo mode
9bb2fc3
Raw
History Blame
2.3 kB
"""
Test script for unified dataset inspection tool
"""
import asyncio
import sys
from typing import TypedDict
from unittest.mock import MagicMock
# Mock the types module before importing dataset_tools
class ToolResult(TypedDict, total=False):
formatted: str
totalResults: int
resultsShared: int
isError: bool
mock_types = MagicMock()
mock_types.ToolResult = ToolResult
sys.modules["agent.tools.types"] = mock_types
# Now import directly from the file
sys.path.insert(0, "/Users/akseljoonas/Documents/hf-agent/agent/tools")
from dataset_tools import hf_inspect_dataset_handler, inspect_dataset
async def test_inspect_dataset():
"""Test the unified inspect_dataset function"""
print("=" * 70)
print("Testing inspect_dataset()")
print("=" * 70)
# Test with akseljoonas/hf-agent-sessions as specified
print("\n→ inspect_dataset('akseljoonas/hf-agent-sessions'):")
result = await inspect_dataset("akseljoonas/hf-agent-sessions")
print(f" isError: {result['isError']}")
print(f" Output:\n{result['formatted']}")
print("\n" + "=" * 70)
# # Test with stanfordnlp/imdb
# print("\n→ inspect_dataset('stanfordnlp/imdb'):")
# result = await inspect_dataset("stanfordnlp/imdb")
# print(f" isError: {result['isError']}")
# print(f" Output:\n{result['formatted']}")
# print("\n" + "=" * 70)
# # Test with multi-config dataset
# print("\n→ inspect_dataset('nyu-mll/glue', config='mrpc'):")
# result = await inspect_dataset("nyu-mll/glue", config="mrpc")
# print(f" isError: {result['isError']}")
# print(f" Output:\n{result['formatted']}")
async def test_handler():
"""Test the handler (what the agent calls)"""
print("\n" + "=" * 70)
print("Testing hf_inspect_dataset_handler()")
print("=" * 70)
result, success = await hf_inspect_dataset_handler(
{
"dataset": "stanfordnlp/imdb",
"sample_rows": 2,
}
)
print("\n→ Handler result:")
print(f" success: {success}")
print(f" output:\n{result}")
if __name__ == "__main__":
print("\nUnified Dataset Inspection Tool Test\n")
asyncio.run(test_inspect_dataset())
# asyncio.run(test_handler())
print("\n" + "=" * 70)
print("Done!")