
    wiP              	       *   d Z ddlmZ ddlmZ  edddddid	d
dg dddddg      Z eddddddidg      Z eddddddidg      Z eddddddidg      Z eddddd didg      Z	 ed!d"ddd#didg      Z
 eeee	e
eeg$      Zy%)&uH  
Central function registry — FunctionSchema and ToolsSchema definitions.

Tools:
  - generate_image: Replicate (google/nano-banana-pro)
  - generate_video: Replicate (wan-video/wan-2.2-t2v-fast)
  - web_search: Google Gemini grounded search (general information)
  - shopping_search: SerpAPI Google Shopping (product catalog)
    )FunctionSchema)ToolsSchemagenerate_imagea*  Generate images from text descriptions using AI. Call this when the user asks to create, generate, or make an image, picture, photo, illustration, or artwork. Always generate at least 2 images. Each image MUST have a DIFFERENT prompt with a unique angle, view, style, or perspective. For example if the user says 'Taj Mahal images', provide prompts like: 'Taj Mahal front view at sunrise with golden light', 'Taj Mahal aerial view from above with gardens', 'Taj Mahal close-up of marble details and arches'. NEVER use the same prompt for multiple images.arraytypestringzAn array of 2-7 DIFFERENT detailed English prompts, one per image. Each prompt should describe a unique angle, view, style, mood, or perspective of what the user asked for. Translate to English if needed. Minimum 2 prompts, maximum 7.)r   itemsdescription)z1:1z16:9z9:16z4:3z3:4zVThe aspect ratio of the generated images. Default to 1:1 if the user does not specify.)r   enumr
   )promptsaspect_ratior   )namer
   
propertiesrequiredgenerate_videozGenerate a short video from a text description using AI. Call this when the user asks to create, generate, or make a video, animation, or clip. Video generation takes 30-60 seconds.promptzkA detailed English description of the video to generate. Translate the user's request to English if needed.)r   r
   
web_searchu2  Search the web for real-time information using Google Search. Call this when the user asks to search for something, look up information, find news, check facts, get weather, or asks any factual question you are unsure about. Do NOT use this for shopping or product searches — use shopping_search instead.queryziThe search query in English. Translate the user's request to English if needed for better search results.shopping_searchac  Search for products to buy using Google Shopping. Returns a catalog of products with images, prices, ratings, and buy links. Call this when the user wants to shop, buy something, find products, compare prices, look for deals, or asks about product availability. Examples: 'buy Nike shoes', 'iPhone price', 'best headphones under 5000', 'find me a laptop'.u   The product search query in English. Translate the user's request to English if needed. Be specific — include brand, product type, and any filters like price range.
edit_imageaC  Edit a user-uploaded photo based on their spoken instruction. Call this ONLY when the user has uploaded a photo and asks to edit, modify, change, or transform it. Examples: 'background change karo', 'make it black and white', 'add sunglasses', 'make it look like a painting'. Do NOT call this if no photo has been uploaded.edit_instructionzThe user's edit instruction in English. Translate from Hindi if needed. Be specific about what to change. For example: 'Change the background to a tropical beach with sunset', 'Convert to black and white pencil sketch style'.generate_video_from_imagea"  Generate a short video from a user-uploaded photo. Call this ONLY when the user has uploaded a photo and asks to create a video or animation from it. The uploaded photo will be used as the starting frame. Video generation takes 15-30 seconds. Do NOT call this if no photo has been uploaded.a(  A description of the motion/animation to apply to the photo, in English. Translate from Hindi if needed. Describe how the scene should move or animate. For example: 'The person smiles and waves at the camera', 'Camera slowly zooms out revealing the landscape', 'Leaves start blowing in the wind'.)standard_toolsN)__doc__(pipecat.adapters.schemas.function_schemar   %pipecat.adapters.schemas.tools_schemar   generate_image_functiongenerate_video_functionweb_search_functionshopping_search_functionedit_image_function"generate_video_from_image_function	all_tools     H/Users/thippareddysaicharanreddy/Desktop/agent_all/functions/registry.py<module>r'      s   D =
 )			9 h';		
 9?	
( [E# P )		D
 	E
 Z! , %		H 	B
 Y% 0 *		% 	B
	 Y) 4 %		: 	D

 !!) 4 &4	$	: 	F	
 Z+& "6 * 		r%   