Inspiration
Film production involves many decisions before cameras even start rolling. Finding the right filming location is not only about visual appeal—it also involves accessibility, practicality, production risks, permissions, and budget considerations. We wanted to build a tool that could help filmmakers turn a simple production brief into useful, evidence-based pre-production research.
This led us to CinePilot, an AI-powered pre-production research agent designed to assist filmmakers during the planning stage.
What CinePilot Does
CinePilot takes a production brief containing details such as:
- Target region
- Production budget
- Crew size
- Shoot duration
It then researches potential filming locations using Parallel's web search capabilities and collects supporting evidence from web sources.
The collected evidence is passed to Gemini, which evaluates potential locations across factors such as:
- Suitability for the production
- Accessibility
- Practicality
- Production risk
- Budget compatibility
CinePilot also highlights information that still needs to be verified, such as filming permissions, current fees, permits, accessibility, and location-specific restrictions.
How We Built It
CinePilot was built using Python and Google Cloud's AI ecosystem.
The main components are:
- Production Brief – collects the filmmaker's requirements.
- Parallel Research – performs live web research to discover relevant filming locations and supporting evidence.
- Candidate Processing – extracts and filters potential location candidates from the research results.
- Gemini Evaluation – analyzes the collected evidence and evaluates each candidate.
- Production Verification – identifies important information that should be confirmed before booking a location.
- Streamlit Interface – provides an interactive interface for filmmakers to run the research workflow.
The project also uses Google ADK as part of the agent architecture and integrates Parallel at runtime for web research.
What We Learned
Building CinePilot taught us how to combine an AI agent workflow with real-time external research instead of relying only on static information.
We learned how to:
- Design an AI-assisted production planning workflow.
- Integrate Gemini into an application.
- Use Parallel for live web research.
- Extract structured information from unstructured web results.
- Build evidence-based AI evaluation.
- Handle API configuration and deployment.
- Deploy an AI application using Streamlit.
- Design a user interface around an agent workflow.
One of the most important lessons was that AI-generated recommendations should be connected to evidence. CinePilot therefore separates researched evidence from conclusions and explicitly identifies information that requires human verification.
Challenges We Faced
One of our biggest challenges was turning raw web-search results into reliable location candidates. Search results often contain article titles, travel pages, and other text that may look like locations but are not actual filming locations. We had to build filtering and candidate-processing logic to reduce these false candidates.
Another challenge was integrating multiple components—Parallel research, Gemini evaluation, the agent workflow, and the Streamlit interface—while keeping the data flow consistent between them.
Deployment also introduced challenges around dependency management and securely configuring API keys without exposing them in the public repository.
What's Next
CinePilot could be extended with more production-specific research, richer location comparison, stronger permit and availability verification, and additional planning support for filmmakers.
Our goal is to make pre-production research faster while keeping the filmmaker in control of the final decision.
Built With
- ai-agents
- ai-powered-research
- artificial-intelligence
- film-production
- generative-ai
- google-adk
- google-cloud
- google-gemini
- parallel
- parallel-search-api
- pre-production
- production-planning
- python
- streamlit
- web-search
Log in or sign up for Devpost to join the conversation.