This is a submission for the Agent.ai Challenge: Productivity-Pro Agent (See Details)
What I Built
AspireMatch is an AI-powered agent designed to revolutionize how organizations discover funding opportunities. It automates the process of matching organizations with grants they’re most likely to qualify for, saving time and maximizing funding potential.
Why I Built This Agent
As organizations often struggle to identify and apply for relevant grants due to time constraints and lack of specialized expertise, AspireMatch eliminates this bottleneck by automating the process. It analyzes daily grant data from Grants.gov and matches it to an organization’s needs using both AI and organizational-specific information. Specifically, users can provide either a link to their website (where Agent.ai will scrape it and get information about the organization’s mission) or users can provide a text description of their organization and its mission. AspireMatch will then search through thousands of grant programs and identify several that the organization may qualify for, saving time and effort from manually searching for funding sources.
This agent is envisioned as a productivity booster for nonprofits, research institutions, and small businesses, streamlining workflows, improving decision-making, and ensuring no opportunity slips through the cracks. Grants.gov’s database is massive, difficult to search, and lots of information about individual grants is buried in descriptions you must visit each individual grant’s page to read. AspireMatch saves you hours of work, so you can focus on what’s important- your organization’s mission.
Demo
Try it out for yourself today!
AspireMatch will recommend multiple grants that you may not have found otherwise with a basic search. Check out this example for a hypothetical non-profit working in environmental outreach:
How It Works
AspireMatch integrates seamlessly with Agent.ai and AWS to deliver results:
- Daily Grant Updates: The backend code, running on AWS Lambda, pulls XML grant data directly from Grants.gov’s daily updates, parses it to make sure we only search grants with closing dates in the future, and then stores the days database in AWS S3 so we don’t overburden Grants.gov’s servers.
- Custom Organization Matching: Using user-provided descriptions and/or scraped website data, AspireMatch applies AI to align grants with organizational missions.
- AI Matching with Claude 3.5: Claude 3.5 processes the truncated data to identify the best matches, considering funding focus areas, eligibility criteria, and other key factors.
- API Gateway Integration: The agent calls our API Gateway which returns the day’s grants database or prepares it if it has not already been made, ensuring secure, scalable access for Agent.ai and other potential integrations. Deploying our own Lambda function behind API Gateway let us tune timeouts and memory required to read the massive database.
You can check out or code, or even reuse the architecture for your own agent at our repo:
Unlock Funding Potential with AI: Find the Right Grants, Faster
AspireMatch is the backend service for an agent on Agent.ai that matches organizations with grants from Grants.gov based on their websites or textual descriptions.
Overview
AspireMatch leverages AWS Lambda and API Gateway to process and analyze grant data from Grants.gov. The service uses a Lambda function to download, extract, and parse XML data from grants.gov, and then stores the relevant information in an S3 bucket. The agent on Agent.ai can then use this data to recommend grants to organizations based on their mission, goals, and activities.
Features
- Grant Data Extraction: Downloads and extracts grant data from grants.gov.
- XML Parsing: Parses XML data to identify relevant grants.
- S3 Storage: Stores parsed grant data in an S3 bucket.
- API Gateway Integration: Provides an API endpoint for the Agent.ai agent to query grant data.
- Grant Recommendations: Matches organizations with suitable grants based on their website or…
Agent.ai Experience
Building AspireMatch using Agent.ai’s platform was both efficient and rewarding. The ability to integrate Agent.ai’s features with our external API Gateway and Claude 3.5 was key to streamlining workflows.
Highlights
- The Builder tool made it easy to manage requests and responses
- The ability to use external APIs to bring in new data makes Agent.ai very powerful for integrating with new and existing systems
- The UI is clean and friendly, I feel like it was simple for me to make a straightforward UI for my users that is comprehensible and not overwhelming
- Many of the actions you can add to your agent are self-documenting and “just work”
Challenges
- As of the time of writing you cannot extract data from API responses, for example by using their JSON key. You can work around this by using a lightweight AI model to do it for you, like o1-mini, which is how we extract the link to the grants database after we make our API call
- LLMs have limited context windows, and you may fail to receive a response if you exceed them. We utilized Claude 3.5 because we had a context window of around 700,000 characters. We massaged all of our user inputs and grant data using the truncate tool to ensure it always fits so we get a good response. To make it clear to the user what is happening we added descriptions for text inputs requesting certain input lengths, such as 300 words for the description of one’s organization.
Source link
lol