What Data Can Hello-Agents Process? Complete Guide to Supported Formats
Hello-Agents can process plain text, PDF documents, CSV/Excel spreadsheets, images, log files, markdown runbooks, and JSON payloads through modular ingestion pipelines that feed into LLM-driven agent workflows.
The datawhalechina/hello-agents repository is a learning-by-doing framework that demonstrates how AI-native agents ingest, understand, and act on diverse data formats. Understanding what data hello-agents can process is essential for building effective agent applications, as the repository provides concrete, reusable implementations for each format within its tutorial chapters and co-creation projects.
Text and Natural Language Inputs
At the foundation of every hello-agents workflow is the LLMClient module, which handles plain text and natural-language prompts. Located in code/chapter4/llm_client.py, this client feeds text directly into agent reasoning loops including ReAct, Plan-and-Solve, and Reflection architectures. Any string-based input—whether user queries, system instructions, or generated context—passes through this centralized interface before reaching the underlying language model.
PDF Documents
For PDF processing, hello-agents leverages the pdfplumber library to extract text and tables from academic papers, reports, and documentation. The implementation spans two key locations:
code/chapter8/11_Q&A_Assistant.pycontains theload_documentmethod that opens PDFs, extracts page text, and optionally parses tables into CSV files.Co-creation-projects/healer-666-Academic-Data-Agent/src/data_analysis_agent/document_ingestion.pyprovides the_extract_pdf_payloadmethod for deeper document analysis.
The extracted content is then stored in a RAG (Retrieval-Augmented Generation) pipeline under a namespace like pdf_{user_id}, making it accessible for multi-turn conversations.
from code.chapter8.11_Q&A_Assistant import QAAssistant
assistant = QAAssistant(user_id="demo")
assistant.load_document("/path/to/paper.pdf") # extracts text & tables
response = assistant.ask("What are the main contributions?")
print(response)
CSV and Excel Spreadsheets
Tabular data processing supports CSV, XLS, and XLSX formats through pandas-based ingestion pipelines. In Co-creation-projects/healer-666-Academic-Data-Agent/src/data_analysis_agent/document_ingestion.py, the system defines SUPPORTED_TABULAR_SUFFIXES = {".csv", ".xls", ".xlsx"} and routes each file through pandas.read_excel or pandas.read_csv.
The ingestion routine converts Excel sheets into individual CSV files, generates column statistics, and saves a canonical cleaned_data.csv for downstream agent analysis.
from Co-creation-projects.healer-666-Academic-Data-Agent.src.data_analysis_agent.document_ingestion import DocumentIngestion
doc_ing = DocumentIngestion()
doc_ing.ingest("/data/sales.xlsx") # converts sheets to CSV
summary = doc_ing.summarize() # returns a dict with stats
print(summary["column_stats"]["Revenue"]["mean"])
Image Data
While hello-agents does not embed a native vision model for direct pixel analysis, it provides the search_image_tool (Co-creation-projects/afei-GuessWhoAmI/backend/tools/search_image_tool.py) for retrieving image URLs from external APIs. These URLs can be displayed in Gradio interfaces or potentially fed into vision-capable LLMs for multimodal reasoning.
from Co-creation-projects.afei-GuessWhoAmI.backend.tools.search_image_tool import search_image
urls = search_image("golden retriever", top_k=3)
for u in urls:
display(Image(url=u))
Log Files and System Metrics
For DevOps and SRE use cases, the LogSearcher class in Co-creation-projects/zjzhou-SREOnCallAgent/src/tools/log_search_tool.py processes raw log files and metric snapshots. The tool accepts regex patterns, date ranges, and file paths, returning structured data that agents use for troubleshooting and root-cause analysis.
from Co-creation-projects.zjzhou-SREOnCallAgent.src.tools.log_search_tool import LogSearcher
searcher = LogSearcher()
matches = searcher.search("ERROR", start="2024-01-01", end="2024-01-07")
print(f"Found {len(matches)} error lines")
Structured Runbooks and JSON Payloads
Beyond file-based inputs, hello-agents handles structured markdown runbooks and arbitrary JSON payloads. The runbook_tool.py module in Co-creation-projects/zjzhou-SREOnCallAgent/src/tools/runbook_tool.py parses procedural documentation into indexed knowledge. Additionally, agents like the one in Co-creation-projects/haoye2-UnivesalAgent/src/agents/agent_universal.py ingest JSON configuration files and API responses directly via json.loads. These structured inputs enable agents to reference operational procedures or dynamic configuration data during reasoning loops.
Summary
- Plain text flows through
LLMClientincode/chapter4/llm_client.pyto power ReAct and Reflection agents. - PDFs are processed via
pdfplumberincode/chapter8/11_Q&A_Assistant.pyand the academic data agent's ingestion module. - CSV and Excel files are handled by pandas in
document_ingestion.pywith automatic cleaning and statistics generation. - Images are retrieved via external API calls through
search_image_tool.py. - Log files are searched and filtered using
LogSearcherfor operational intelligence. - Runbooks and JSON provide structured context for specialized agents in the co-creation projects.
All pathways integrate with the RAG pipeline to maintain conversational memory across data types.
Frequently Asked Questions
Can hello-agents process multiple data types in a single workflow?
Yes. The modular architecture allows agents to ingest PDFs, query CSV statistics, and reference JSON configuration files within the same conversation. The RAG pipeline stores processed content under unique namespaces, enabling cross-referencing between documents and tabular data.
Does hello-agents support direct image analysis or computer vision?
The repository currently focuses on image retrieval rather than native pixel analysis. The search_image_tool.py module fetches image URLs that can be displayed or passed to vision-capable LLMs, but does not perform embedded computer vision tasks like object detection.
How are Excel files with multiple sheets handled?
According to document_ingestion.py, each sheet in an Excel workbook is treated as a separate table and converted to individual CSV files. Agents can then query specific sheets or combine data across the converted outputs for comprehensive analysis.
Is there a unified interface for all data ingestion?
While specific data types have specialized handlers (e.g., DocumentIngestion for files, LogSearcher for logs), the RAGTool class provides a unified storage and retrieval layer. After processing, all data resides in a common memory store accessible to downstream agent reasoning loops.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →